自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

pycharm_u的博客

种一棵树最好的时间是10年前,其次是现在。

  • 博客(83)
  • 收藏
  • 关注

原创 基于redis的分布式锁的实现,包含任务续约看门狗程序以及注解版分布式锁

一、什么是分布式锁分布式锁是不同的应用之间的锁,我们常见的锁有ReentrantLock,synchronized,但是这些只是本地锁,也就是在同一个应用级别的锁,如果我们的服务是一个分布式服务,而且要在不同的应用之间加锁,那么本地锁就无法实现这样的功能,只能采用分布式锁才能实现。二、分布式锁的实现方案目前公认的分布式锁解决方案有基于数据库、redis、zk的分布式锁,但是基于数据库的锁性能不是很好,基于zk的分布式锁需要加入zk但是我们现有的服务不需要zk,我们已经有了redis的环境,所以选

2020-09-21 15:48:23 695

原创 使用Sentinel作为GRPC限流组件,以及使用redis持久化限流规则

一.使用sentinel作为GRPC的限流组件sentinel官方https://github.com/alibaba/Sentinel/wiki/%E4%B8%BB%E6%B5%81%E6%A1%86%E6%9E%B6%E7%9A%84%E9%80%82%E9%85%8D#grpc在官方文档中告诉我们只需要Server server = ServerBuilder.forPort(port) .addService(new MyServiceImpl()) // 添加自己的服务实现

2020-09-11 15:31:41 1986 1

原创 springboot自动装配之spi机制解析

1.什么是spiJava里有两种spi,一种是jdk自带的spi机制,也就是服务发现机制,但是这里的服务发现和我们分布式系统上的服务发现是不一样的,另一个就是springboot的spi机制,我们面试的时候,会经常被问到springboot的工作原理,这时候会有人回答了,这个问题我知道,是使用的@SpringApplication注解,然后使用@EnableAutoConfiguration以及@ComponentScan自动装配,注解@EnableAutoConfiguration使用了@Import

2020-08-24 12:20:44 3790

原创 springcloud全家桶个人博客系统(九)使用springcloud config配置中心

1.前言当服务非常多的时候,一处配置修改,我们就要将所有相同服务的配置修改,这样的话就是非常繁琐的,我们引入配置中心,一处修改,处处生效。2.创建blog_config模块(1)添加pom文件<dependencies> <dependency> <groupId>org.springframework....

2020-03-19 17:10:39 329

原创 springcloud全家桶个人博客系统(八)使用gateway代替zull

一、前言由于zull不在维护更新,springcloud官方推荐使用gateway代替zull。所以我们就代替一下子。二、添加blog_gateway模块(1)引入pom文件<dependencies> <!-- gateway路由网关 --> <dependency> <gro...

2020-03-17 17:55:38 435

原创 如何快速修改map某个Key字段名

在企业中开发的时候,我们可能会遇到这样的问题,我们在处理map数据的时候,返回给别人的数据,别人说要修改一个字段的名字,这时候就犯难了,好多地方都是用的之前的字段名,改起来好麻烦,一个地方一个地方找,费时又费力。解决思路:将map转换为json,再转换为json string ,使用字符串的替换,再使用json转换为map。 //map为要修改的map ...

2019-12-10 19:27:15 2586

原创 手把手教你使用ssl证书网站安全门户(https)

一、前言http和https的区别,我就不再这里介绍了。安装了https的好处就是,最起码你的报文传输不是明文了,这就有了很大的安全保障,而且一些非法的网站劫持也就有很大的避免。二、下载证书第一步:登录阿里云-》SSL证书管理控制台第二步:下载证书根据你自己的需求去下载。我这里下载的是nginx,下载成功后,解压出来是这两个文件。三、使用docker安装ngin...

2019-11-01 11:04:29 1157

原创 springcloud全家桶个人博客系统(七)使用docker部署项目到服务器

一、前言本来想写部署项目到阿里云服务器,但是我的一核2G内存的云服务器实在是不够看。所以本次项目是部署到本机linux中。本次的项目是提前已经准备好elasticsearch6.4.2,nacos1.3.1,安装不再赘述。二、docker配置1.修改docker配置在docker.service文件中添加ExecStart=/usr/bin/dockerd -H tcp:...

2019-10-30 17:23:50 695

原创 从springcloud netflix迁移到springcloud alibaba(二)使用sentinel代替hystrix

一、从hystrix迁移1.pom文件替换 <!-- https://mvnrepository.com/artifact/com.alibaba.cloud/spring-cloud-starter-alibaba-sentinel --> <dependency> <groupId>com.alibaba....

2019-10-24 10:12:56 1042 2

原创 从springcloud netflix迁移到springcloud alibaba(一)使用nacos代替eureka

一、nacos安装docker pull nacos/nacos-serverdocker run --env MODE=standalone --name nacos -d -p 8848:8848 nacos/nacos-server使用docker安装nacos,命令如上所述。安装完成后登录localhost:8848/nacos即可。二、从eureka迁移(1)...

2019-10-11 16:35:12 1789 1

原创 mycat实现分库分表(雪花算法唯一主键)

一、前言数据库数据达到百万级的数量时,数据库的性能就会下降,这样就引出了分库分表的概念,将数据存入不同的数据库中。在本文中,将以mycat为例实现分库分表。二、mycat配置1.server.xml配置<!DOCTYPE mycat:server SYSTEM "server.dtd"><mycat:server xmlns:mycat="http://io....

2019-10-08 16:59:49 2761

原创 springcloud全家桶个人博客系统(六)hystrix dashboard服务监控

一、简介在大量的服务状态下,哪些服务挂了、哪些服务流量小、哪些服务流量大,这些数据我们如何得知呢?如果没有一个可以实时监控服务的组件,那么这将多么可怕。hystrix dashboard就是为此而生。二、pom文件 <dependencies> <dependency> <groupId>com.sust...

2019-09-19 17:15:55 143

原创 springcloud全家桶个人博客系统(五)RestHighLevelClient实现elasticsearch全文检索及结果高亮

一、前言上个版本使用springdata elasticsearch,但是也只是支持到了elasticsearch 2点几的版本,并不适合继续深入的挖掘。本次使用elasticsearch6.4.2版本,使用RestHighLevelClient客户端,吐嘈一下,transport客户端真的恶心,各种莫名其妙的错误,什么堆栈溢出,找不到节点,反正不好用,个人感觉。二、配置1.appli...

2019-09-18 11:31:42 2552

原创 springcloud全家桶个人博客系统(四)路由网关zuul组件搭建

一、简介zuul路由网关,是指用户访问服务时,先访问网关,由网关转发给消费者,这样的一个过程。在本文中,网关将会转发用户的请求到消费者。二、pom文件 <dependencies> <!-- zuul路由网关 --> <dependency> <groupId>org.spr...

2019-09-08 19:13:54 185

原创 springcloud全家桶个人博客系统(三)用户消费组件ConsumerFeign

一、简介本组件提供消费者端的负载均衡。二、pom文件 <dependencies> <dependency> <groupId>com.sustly</groupId> <artifactId>blog_api</artifactId> ...

2019-09-08 19:03:24 239

原创 springcloud全家桶个人博客系统(二)用户服务组件AdminProviderHystrix和文章服务组件ArticleProviderHystrix

一、简介用户服务主要是提供用户注册、登陆等功能的接口。本组件基于hystrix的容灾处理。文章服务组件主要提供文章增删改查功能接口。本文以用户服务组件为例,文章服务组件与此组成大致类似,不在赘述。二、pom文件 <dependencies> <dependency> <groupId>com.s...

2019-09-07 22:56:44 181

原创 springcloud全家桶个人博客系统(一)eureka注册中心

一、微服务简介马丁富勒原文,翻译版。https://martinfowler.cn/articles/microservices.html二、eureka简介Eureka是Netflix开发的服务发现框架,本身是一个基于REST的服务,主要用于定位运行在AWS域中的中间层服务,以达到负载均衡和中间层服务故障转移的目的。SpringCloud将它集成在其子项目spring-cloud...

2019-09-06 22:54:53 614

原创 springboot整合dubbo(zookeeper)

(1)安装zookeeper使用docker安装zookeeperdocker pull zookeeperdocker run --name zk -p 2181:2181 -p 2888:2888 -p 3888:3888 --restart always -d a873528df41f(2)提供者a.application.propertiesserver.po...

2019-08-22 10:24:36 135

原创 mysql高级知识总结

一、索引(1)什么是索引索引index是帮助MySQL高效获取数据的一种数据结构。可以看出,索引其实就是BTREE。(2)创建索引create index 索引名 on 表名(字段)例如:CREATE INDEX idx_blogurl ON blog_image(image_url)(3)查看索引show index from 表名例如:SHO...

2019-08-06 09:58:04 134

原创 vue第一此加载过长使用懒加载以及懒加载带来的Loading chunk {n} failed

1.解决第一次加载过长 {path:"/",name: "homeLink",component:resolve => require(['@/components/Home.vue'],resolve)}, {path:"/aboutWe",component:resolve => require(['@/components/AboutMe.vue'],resolve...

2019-07-16 10:38:14 408

原创 springboot+vue个人博客系统(五) 博客系统初步建成及展示

一、前言至此,博客系统历时一个多月,已经有了最基本的功能了,增删改查博客、按分类检索,全文检索等功能。二、分享我的GitHub地址前端:https://github.com/sustly/blog_vue_web后端 :https://github.com/sustly/blog_vue_server三、如何运行前端:npm run dev后端:可以直接Java -ja...

2019-07-09 09:49:26 2699

原创 springboot+vue个人博客系统(四) Elasticserch全文检索

一、Elasticserch下载https://www.elastic.co官网下载,我下载的版本是2.4.4。高版本可能不兼容spring.data.elasticsearch.二、springboot实现(1)引入pom.xml依赖<dependency> <groupId>org.springframework.boot&...

2019-07-04 09:08:23 668

原创 springboot+vue个人博客系统(三)文件上传及回显

一、文件上传文件上传是将用户放入在博文中的图片上传到服务器中。1.前端在mavon-editor中绑定imgAdd,imgDel事件。<div id="editor" v-on:mousedown="onWrite" v-on:mouseleave="onRead"> <mavon-editor ref=md :ishljs="true" @imgA...

2019-07-03 14:01:11 1873

原创 springboot+vue个人博客系统(二) 博客分页及数据绑定

一、博客分页分页插件使用vue-pagination-2。(1)安装npm install vue-pagination-2(2) 在main.js中引入插件import Pagination from 'vue-pagination-2'Vue.component('pagination', Pagination);(3)在要使用的组件中引入<div ...

2019-06-27 13:39:43 861

原创 vuex-persistedstate解决vuex在刷新页面之后丢失数据

使用了vuex之后会发现,在页面刷新的时候就会将store里的数据清除,这样并不是我们想看道的。(1)npm install vuex-persistedstate --save安装vuex-persistedstate插件。(2)在store.js中引入该插件import PersistedState from 'vuex-persistedstate'(3)在store中...

2019-06-20 13:30:13 2066 1

原创 mina框架及LinkedBlockingQueue实现阻塞收发

mina框架实现socket发送,先发送,后阻塞。接收则无限制。配置:@Componentpublic class BoxTcpServer { private static final Logger log = LoggerFactory.getLogger(LoggerAspect.class); @Autowired public BoxTcpServerHand...

2019-06-18 17:20:47 542

原创 springboot+vue个人博客系统(一)框架搭建以及登陆注册实现

一、概述很早就想自己写一个博客系统,但是苦于对前端技术不熟,一直都没有做,近日终于学习了vue框架,就想着实现这个想法。二、项目总览2.1前端总览前端使用vue框架,使用bootstrap的样式,目前没有对于文章的管理,仅仅是一个基本的框架。2.2后台总览后台使用springboot、Elasticserch框架,数据库使用MySQL。三、前端各模块介绍后台...

2019-05-29 16:36:24 6183

原创 vue学习四 vue-router实现简单路由(博客系统框架)

一、使用脚手架搭建项目前面的博客已作了叙述,可以看看以前的博客。二、引入bootstrap样式库在index.html中引入<link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+...

2019-05-23 09:33:10 323

原创 vue学习三 组件嵌套及父子组件传值

一、组件嵌套<template> <div id="app"> <son/> </div></template><script> import Son from "./components/Son"export default { name: 'App', components: ...

2019-05-17 13:19:38 939

原创 vue学习二(搭建vue脚手架)

1 安装node环境进入https://nodejs.org/en/下载node环境并安装。2 安装vue使用 npm install --global vue-cli安装vue。3.1创建第一个vue脚手架(命令行)1.使用vue init webpack 项目名 创建项目2.npm run dev 运行项目3.2 使用webstorm1.创建项目...

2019-05-15 18:26:52 1907

原创 vue学习一(初识vue)

一、vue简介vue是一个渐进式JavaScript框架。可以去https://cn.vuejs.org/v2/guide/二、内容1.基本使用(1)elel是element的缩写,其绑定的是vue的根标签,只有在这个范围内才能使用vue的语法。(2)datavue的数据,可以使用{{ data }}获取数据,使用v-bind:value等进行属性绑定,使用HTM...

2019-05-13 10:57:12 138

原创 springboot整合springdata Jpa、shiro打造管理系统

一、技术选型1.数据库采用MySQL2.orm使用springData Jpa3.权限认证使用shiro4.整合框架使用springboot5.前端使用easyui(抄的)二、数据库设计/*Navicat MySQL Data TransferSource Server : yunSource Server Version : 80016So...

2019-05-05 15:59:35 631

原创 springBoot整合springdata Jpa的基本使用以及带条件的分页查询

一、springBoot整合springData Jpa在application.properties中声明启用如下:spring.datasource.name=rootspring.datasource.password=123456spring.datasource.url=jdbc:mysql://localhost:3306/mst?useSSL=falsespring....

2019-04-30 10:17:29 2501 2

原创 spring整合shiro实现登陆验证

第一步 web.xml <filter> <filter-name>shiroFilter</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> ...

2019-04-19 15:26:16 147

原创 spring注入bean为null(解决)

问题:socket通信时,要使用dao进行数据库操作,配置bean注入后,但是获得的对象为null。原因:该socket是其他地方new出来的,并不是spring容器生成的,则注入无效。解决:String[] xmlCfg = new String[] {"classpath:applicationContext-report.xml"}; ApplicationCon...

2019-04-12 10:08:46 3198

原创 org.springframework.beans.factory.BeanCreationException: Error creating bean with name xxx

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.message.AnalysisMessageImpl#0' defined in class path resource [cfg/spring/applicationContext.xml]: Instanti...

2019-04-11 13:44:42 390

原创 update数据时不更新前端为null的数据字段(反射解决方案)

在开发时,我们可能会遇到这样一个问题,就是前端传过来是表中的部分字段,如果用这个对象直接update就会导致数据库中我们不想被更新掉的数据,被更新为null了。显然,这样的跟新并不是我们想要的结果。解决方案一:使用ifelse一个一个判断,这样的效率很低,而且有太多冗余的代码。这个方法在此不做赘述。解决方案二:使用反射将前端传过来的数据,和查找出数据库中的数据,使用反射将该...

2019-03-27 10:01:46 4343

原创 spring事务(两种)

如果不配置事务,那么只有查询功能,其他不无法操作。第一种:xml配置 <!-- 配置事物管理器 --> <bean id="txManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"> <property name="sessionFactory...

2019-03-25 10:22:10 288

原创 java.lang.ClassNotFoundException: org.hibernate.engine.transaction.spi.TransactionContext解决

配置事务的时候踩的坑!我用的spring4和hibernate5,但是配置的时候用的这样: <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <property name="configLocation" value=...

2019-03-22 10:40:28 432

原创 springmvc返回数据到前端HTML页面乱码(彻底解决)

问题大家都知道,西欧的编码是ISO8859-1,这个是无法解析中文的,只有在Unicode utf-8显示,gbk也行。解决: <mvc:annotation-driven> <mvc:message-converters register-defaults="true"> <bean class="org.spr...

2019-03-20 16:55:19 1802

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除