摘要:需求: 有四个sql 都需要用一个 相同的where 条件,于是定义了一个sql 标签。 然后在每个sql中使用 <include refid="myWhereSql"></include> 引入。 后来需求变更,有两个sql 的where条件有一个参数需要和其他两个不同。 于是想到了bind标签
阅读全文
摘要:无报错,但是就是 无法 使用 lombok 的类。 发现classpath 里面也的确没有lombok jar包。 最后把json 的 version 属性加上 就正常了。 所以 结论: 不加version有时候不报错,但是会导致后面的jar包无法引入(也不报错),继而导致命名引入了jar包,却无法
阅读全文
摘要:maven 的profile 可以是我们通过编译时指定 -P 来实现 使用不同的 属性变量。 比如: <profiles> <profile> <id>local</id> <properties> <xx>我是local环境的xx的值</xx> </properties> </profile> <
阅读全文
摘要:1. 本地启动一个spring cloud 项目,无法启动 (注:测试环境正常),且控台无错误日志。 分析:debug 代码发现是配置无法获取。 查看配置获取方式 是 spring config 通过 spring: application: name: cc@project.name.suffix
阅读全文
摘要:使用如下URL: http://127.0.0.1:8080/xx/[:xOGxeSSk5ENaYh89ziEFJA==:].do 如果使用tomcat8 无法正常访问,浏览器network 报错 400 : ERR_HTTP_RESPONSE_CODE_FAILURE 访问 server 没有任何
阅读全文
摘要:MapperProxy.invoke MapperMethod.execute 查看sqlSession . ((HikariProxyConnection)sqlSession.getConnection()).getPoolEntry().hikariPool.config
阅读全文
摘要:1. 在js 中添加debugger . 2. 在js 文件中添加 //# sourceURL=aa.js 其中aa.js为文件名称
阅读全文
摘要:请在 HELP->Edit Custom VM OPtions中加 -Dfile.encoding=utf-8 重点 : 然后重启IDEA 就好了 。 做备份。 参考https://www.freesion.com/article/2875240662/
阅读全文
摘要:回收策略 标记清除 复制 标记整理 根对象来源: java 栈 ,静态变量,寄存器 堆 年轻代:Eden和两个survivor 老年代 持久代 1. jmap -head pid 可以查看堆的配置情况,该命令可能导致进程终止。 可以使用jstat -gc 代替。 2. jmap -histo:liv
阅读全文
摘要:具体原因还需要学习。有大神路过望不吝赐教 参考: https://blog.csdn.net/q790006739/article/details/100691885 https://www.cnblogs.com/feixuefubing/p/9402198.html
阅读全文
摘要:代码如上,今天使用spring mvc + logback ,在用MDC (MDC自行百度)做日志区分时,发现 请求A 设置的MDC 参数值 偶尔会带到 B请求中。 百度查询可知MDC 是通过ThreadLocal 已当前 线程为key , 存放设置的值。 请求A 在执行完成后难道不是自动销毁线程吗
阅读全文
摘要:mysql 可以打开 slow_query_log 以开启日志记录。 记录方式有两种,通过参数 log_output = file 或者table 。 慢查询时间参数: long_query_time 同时注意慢查询日志中总会多出一些还没有超过 long_query_time 的日志,,这个 可能是
阅读全文
摘要:1. <!-- 开启spring mvc 配置,可以理解为主要做请求关系映射,请求参数处理,异常处理--><mvc:annotation-driven/> 2. <!-- 处理该包中的各种spring注解,即将各个注解类交由容器管理 --><context:component-scan base-p
阅读全文
摘要:1. 最开始的理解是 : for update 会对查询出的结果加行锁,没有查询到结果就不加锁。 但是今天发现有一句代码执行for update 却超时了 。查了mysql 获取锁超时时间是 50s . 已我目前业务量不可能有 某一行 被单独锁定50s 。 除非是整表有锁,导致获取单独行锁超时。 排
阅读全文
摘要:简单的创建索引语句 : create unique index inxName on table A('Col') 。 如果表数据量不大,没有问题,但是数据超过千万,可能你等了半天,却告知你超时了。 网上查到解决方案: 1. 复制表A 的数据结构 , 不复制数据 create table B lik
阅读全文
摘要:主要是使用AsyncAppender 提供异步功能,然后使用 immediteFlush配置使用缓存(缓存8k).注意: 高版本的logback 已经指出SizeAndTimeBasedRollingPolicy , 我的版本是1.0.13可以使用SizeAndTimeBasedFNATP实现。 --> UTF-8 ...
阅读全文
摘要:需求: 实现消息的延迟通知,每5s, 30s,60s,120s 通知一次。 就是每隔一段时间执行一次方法,该方法做业务上的处理。 网上查rabbitmq原生是不支持延迟消息的。(rocketmq 支持), 但是可以换种方式实现: 利用其死信队列。 rabbitmq的队列或消息可以设置过期时间,过期后
阅读全文
摘要:今天项目甲方调用项目接口报了一个错误,直接显示异常信息的页面415(服务器无法处理请求附带的媒体格式) 。 很不美观。 这显然不是我代码的问题,是调用方没有按约定请求。于是想整个全局异常处理。 本项目使用spring mvc 对外提供restful 接口。 网上找了下,大致有两种解决方案: 1. 继
阅读全文
摘要:2. 需求: 项目中有多个定时任务,每10s 执行一次,如果和其他业务日志打印到同一个文件,会造成日志文件很乱,业务日志中插着定时日志, 日志不连贯,不易拍错,不易查看。于是想要把定时的相关日志打印到一个单独的文件,其他日志另外打印。 (1)最先想到的解决办法是运用 logger 属性 additi
阅读全文
摘要:参考: https://blog.csdn.net/q957967519/article/details/91544888 今天有个需求:每个请求设置一个唯一的标识,目前是用uuid,用于数据库主键,当然也用于打印日志的时候有个唯一标识。 目前的代码是这样的, Qrs 有个属性uuid. 这样写的话
阅读全文