- 博客(27)
- 资源 (5)
- 问答 (1)
- 收藏
- 关注
原创 ThreadLocal用于传递参数及优势
Threadlocal叫做线程本地变量,也叫线程本地存储,其作用是将参数储存在线程中,然后在该线程运行的任何阶段都能从线程中获取,简单的说,就是起到一个参数传递的作用。 举个具体运用的例子:一般用户在登陆系统之后,我们都会把一个用户的标识信息作为参数放入cookie、或session、或token中,返回给浏览器,然后在以后的请求中,就会带上这个标识信息。当在后续的请...
2020-04-08 14:44:09 3983
原创 SpringBoot2.X.X集成redis的lettuce版,配置文件RedisConfig和分布式锁文件RedisLock
配置文件:package com.xxx.conf.cache;import com.beautiful.util.Constants;import com.fasterxml.jackson.annotation.JsonAutoDetect;import com.fasterxml.jackson.annotation.PropertyAccessor;import com.f...
2020-03-21 11:00:57 622
原创 使用binlog2sql工具根据binlog日志恢复数据
前置条件:[mysqld]server_id = 1log_bin = /var/log/mysql/mysql-bin.logmax_binlog_size = 1Gbinlog_format = rowbinlog_row_image = full使用条件:Python 2.7, 3.4+MySQL 5.6, 5.7安装binlog2sql前先安装git和pip:...
2019-12-26 16:45:25 355
转载 SpringBoot结合redis自定义注解实现限流
1.创建一个注解@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface Limit { // 资源名称,用于描述接口功能 String name() default ""; // 资源 key String key() default ""; ...
2019-05-29 16:56:15 1065
原创 SpringBoot通过ZipKin、ElasticSearch监控链路,集成Docker Compose
1.docker-compose.yml文件version: '2'services: storage: image: openzipkin/zipkin-elasticsearch6 container_name: elasticsearch zipkin: image: openzipkin/zipkin container_name: zip...
2019-05-28 15:58:28 1676
原创 mybatis中resultMap的type为Map
1.FieldMapper.xml如下 <select id="getFieldMsg" resultMap="TableMap2"> SELECT ff.id id, ff.`name`, fc.`name` classifyName, type_name,...
2019-05-23 09:51:41 6443
原创 centos7安装docker-compose报错
步骤一使用下面地址进行安装(这个网络不稳定,有时候晚上特别慢,早上就比较快):sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose步骤二使用下...
2019-05-09 09:30:13 915
原创 docker-compose结合springcloud
1.目录结构2.docker-compose.yaml文件version: '3'services: finance-eureka: restart: always build: ./eureka # 创建镜像,会自动执行当前目录下eureka文件夹中的Dockerfile文件 image:...
2019-05-06 11:29:20 2534
原创 nginx配置路径、跨域、本机自定义server_name
修改本机电脑的域名:先定位到:C:\Windows\System32\drivers\etc。添加自己想要的域名:然后在nginx的配置文件中设置:这样就可以模拟域名访问了,同时统一访问a.xy.xxx.com这个域名,就不存在跨域了,前后端分离时可用。配置区别:1)proxy_pass后面接“/”,则路径会路由到“http://192.168.20.247:8...
2019-03-08 16:00:16 2008
原创 MySQL查询获取字段特定值所在行数据
例如,当topicId相同时,查询bookStatus为2所在行的数据,若不存在,则查询bookStatus为1中missionId最大所在行的数据。SELECT rm.id missionId, rm.cover, rm.mission_type bookStatus, rm.`name`, DATE_FORMAT( rm.end_time, '%Y-%m-%d %H:%i:%s...
2018-12-28 15:02:32 5848 1
原创 Sharding-jdbc分库分表后使用left join查询不到数据
原SQL:<select id="getMyMissionList" resultType="java.util.HashMap"> SELECT rm.id missionId, rpu.id paperUserId, rm.cover, if(rm.class_id is NULL,1,2) bookStatus, rm.`n...
2018-12-21 21:20:33 12772
原创 Maven-assembly-plugin插件
pom.xml的配置 <plugin> <artifactId>maven-assembly-plugin</artifactId> <version>3.1.0</version> <configuratio...
2018-12-14 10:42:10 165
转载 WebAsyncTask直接释放处理线程连接,提高服务器吞吐量
两个基本概念: 处理线程:处理线程 属于 web 服务器线程,负责 处理用户请求,采用 线程池 管理。 异步线程:异步线程 属于 用户自定义的线程,可采用 线程池管理。 工具类:public class WebAsyncUtils { Logger logger = LoggerFactory.getLogger(WebAsyncUtils.class); ...
2018-12-12 19:53:02 1486
原创 防SQL注入工具
public class ParseSql { public static boolean check(String sql){ if(StringUtils.isEmpty(sql)){ return true; } sql = sql.toLowerCase(); String badStr ...
2018-12-12 15:41:56 1019
原创 The bean 'xxx' could not be injected as a 'com.github.service.xx' because it is a JDK dynamic proxy
Description:The bean 'pltresService' could not be injected as a 'com.github.service.PltresService' because it is a JDK dynamic proxy that implements:Action:Consider injecting the bean as one ...
2018-12-03 13:14:32 4264
原创 sharding-jdbc的SpringBoot版配置项说明
数据分片sharding.jdbc.datasource.names= #数据源名称,多数据源以逗号分隔sharding.jdbc.datasource.<data-source-name>.type= #数据库连接池类名称sharding.jdbc.datasource.<data-source-name>.driver-class-name= #数据库驱动类...
2018-10-23 15:10:04 10280
原创 去掉一个list中包含的另一个list数据,高效写法
LinkedList<Question> veirfyingList = questionService.getVeirfying(cityCode); LinkedList<Question> verifiedList = questionService.getVerifiedQuestion(uid, cityCode)...
2018-10-11 16:24:04 24261
原创 通过注解的方式调用spring的AOP来实现数据库的读写分离
1.首先在配置文件中添加如下:<aop:aspectj-autoproxy/> <!--表示开启注解切面编程,即可通过@Aspectj配置切点--><aop:aspectj-autoproxy proxy-target-class="true"/> <!-- proxy-target-class="true"表示采用CGLib动态代理技术,原生是J...
2018-07-30 15:41:11 472
转载 去重SQL
转载 :http://www.jb51.net/article/129656.htmDELETE rqvFROM re_question_verify rqv, (SELECT min(id) id, question_id, verify_idFROM re_question_verify GROUP BY question_id, verify_idHAVING...
2018-06-06 16:10:09 273
原创 ThreadLoacl和线程同步(synchronized)的运用场景(小结)
目前常用的MVC框架是SpringMVC,该框架默认单例,它就采用了ThreadLoacl来实现。 可见ThreadLoacl适用于单例模式中来保证线程安全,但是其只能保证不同的线程访问各自数据时的线程安全。不能保证访问公共数据的线程安全,例如多个线程同时访问数据库中同一张表中的同一条记录。也不能保证访问自己数据的线程安全,例如因为网络延迟造成的连续点击事件,这个一般通过...
2018-05-18 09:14:22 345
原创 Uncaught SyntaxError: Unexpected token }
点击图片跳转注意: 原来是这样:<img onclick="${url}front/index" src="http://static.xxx.com/urce/image/logo/logo.png" alt="Logo"> 修改成:<img onclick="window.location='${url}front/index'" src="h
2018-04-10 17:38:39 368
原创 volatile、synchronized、static多线程运用(个人理解)
java主要有两套内存模型,一套是JVM对Java内存模型的实现、另一套是硬件内存架构。其中,Java内存模型由“线程栈区”和“堆区”组成,是虚拟存在的,而硬件内存架构由“CPU寄存器(储存器)”、“CPU缓存”、“主存”三者构成,是真实存在的。 这两套模型的关系如下(左边是Java内存模型、右边是硬件内存模型): 可以发现,两套模型的对应关系相当复杂,...
2018-03-30 16:48:19 333
原创 单元测试-springMVC(Idea版)
1.引入junit的jar包 (Ctrl+Shirt+Alt+S)2.引入注解@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations={"classpath:spring_context.xml","classpath:spring_shiro.xml"})public class CMTest { ...
2018-03-26 16:24:33 626
原创 synchronized不能锁住Integer
今天写了一行代码,觉得完事大吉,结果在真正执行的时候发现无法实现对qId的串行操作,当时就懵逼了。原始代码:public JsonResponse synVerifying(Integer qId, BigDecimal score, FanyaUserDetail user, Map<String, String> map) { //相同的qId会排序 synchro...
2018-03-23 17:16:12 2474
原创 synchronized的个人理解
synchronized有很多种用法: ①锁对象; ②锁方法; ③锁指定参数; 但就个人理解来看,synchronized就是对锁住的对象、方法、参数起一个“排序”的功能,而真正的判断还是要自己来写,而且要把判断写在synchronized锁住的内部才起作用。...
2018-03-22 16:40:41 152
原创 通过putty的tunnel打洞的方式在本地代码直接连接远程数据库(intellij idea版)
详细流程:①已知远程数据库的地址(配置了SSH的)②使用putty打洞配置tunnel,设置打洞的端口号。点击Add按钮后显示如下:然后点击open,显示如下:③在idea中的配置。先配置tomcat,如下所示。再配置数据库连接,这里要输入远程数据库的账号和密码:上面配置好后就可以启动tomcat了,此时本地代码连接的就是远程数据库了。...
2018-03-12 10:10:48 2002
原创 对于type="datetime-local"类时间在前后台的传递、显示、存储
## 前台向后台传递### 前端代码:#### 列表页,会纯显示时间 #### 修改功能,会将纯显示的时间转换成可操作的时间 class="btn btn-info btn-mini" href="javascript:void(0)">修改js代码: $("a[data-name='modifyActivity'
2018-01-19 18:17:28 15341 1
GChisto和gcviewer
2018-05-16
mysql数据同步到大数据后通过查询大数据实现报表的实时展示
2021-09-18
TA创建的收藏夹 TA关注的收藏夹
TA关注的人