
总结
真-酸辣土豆丝
个人简介最多输300字,不信你试试。。
展开
-
正确理解MYSQL事务的可重复读RR隔离级别与锁
mysql默认的事务隔离级别是可重复度。可重复度就是在一个事务中对相同数据的多次查询将返回相同结果。比如事务1:SELECT age from student where id=1;此时 age=10.....业务代码(在此时别的事务或者直接在数据库中把age改成20)SELECT * from T where id=1;这里查到的age依然是10而不是数据库的中20.重点总结:可重复读只能保证同一个事务中相同数据多次查询时得到相同的结果。并不会限制在此过程中其他事务对数原创 2022-05-09 11:36:05 · 2326 阅读 · 2 评论 -
ideaSVN提交中文路径乱码Commit failed (details follow): svn: The node 乱码
更换idead的字体未中文字体,就好了。 进入到IntelliJ IDEA的界面中之后,点击 file 菜单 点击了file菜单之后,弹出了下拉菜单选中为 settings 选项 进入到来了settings界面中,点击appearance 选项 进入到了的appearance 选项之后,勾选上 use custom font 选项 勾选上之后,点击 字体 选项之后,弹出了下拉菜单选中Wie yahei ui 选项 yehe原创 2022-02-23 16:05:15 · 1880 阅读 · 0 评论 -
springCoud gateway 实现用请求参数做路由断言
网关路由的组成如下:predicates 断言有两个重要参数第一个是name默认支持以下八种类型。下面我们来拓展实现通过请求参数中的接口编码来决定路由的自定义断言。原创 2021-08-27 11:16:38 · 475 阅读 · 0 评论 -
java泛型T和?的用法实例
泛型的用法定义工具类PageUtils指定类型T。方法public class PageUtils<T> { public PageInfo<T> toPageInfo(PageInfo<?> p1, List<T> datas){ PageInfo<T> pageInfo = new PageInfo<>(); BeanUtil.copyProperties(p1,pa原创 2021-06-08 10:30:30 · 297 阅读 · 0 评论 -
久不使用的rabbitmq突然占用很多CPU居高不下,这个进程beam.smp 一直在跑
清除了/var/lib/rabbitmq/mnesia/下面的旧数据就好了原创 2021-02-05 10:27:28 · 9044 阅读 · 2 评论 -
MybatisPlus真正的批量插入(非循环单个)方法
MybatisPlus默认提供的批量插入方法实际上是单条插入的,跟我们预期的不一样。其实MybatisPlus提供了真正的批量插入方法,但是只适用于MYSQL,所以并没有放出来,需要自己去拓展一下。第一步:新建拓展类import com.baomidou.mybatisplus.core.injector.AbstractMethod;import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;import com.ba原创 2020-12-14 11:32:18 · 11595 阅读 · 15 评论 -
基于Gitlab +Docker 的CI/CD实践
原作者@小松同学基于Gitlab +Docker 的CI/CD实践背景目前点米HRO项目已经利用Jenkins实现了持续集成,但是这套方案过度依赖开发人员对于Shell脚本掌握程度,上手难度相对较高。同时现有方案还未实现服务容器化部署,因此本文将介绍一种基于Gitlab+Docker 实现容器化部署的一套CI/CD工作流解决方案。环境准备Gitlab 服务器一台 (源码存放) 应用构建服务器一台 (应用打包构建)Gitlab 持续集成3.1 Gitlab CI 是什么?..原创 2020-09-18 17:41:49 · 974 阅读 · 0 评论 -
腾讯企业邮箱发件接口返回Recipient address rejected: ERS-RBL.
原因是国外的邮件服务商垃圾邮件拦截了。解决办法要么换邮箱,要么让对方加白名单(基本做不到)。还有一种办法,赵专业的,国外邮件服务提供商。原创 2020-09-11 14:49:11 · 2678 阅读 · 0 评论 -
idea调试模式技巧主动回滚事务。
在本地调试代码时经常有这样一种问题。调试程序时为了重现一个bug需要反复的走业务流程。有时候前半部分的代码是对的,后半部分逻辑错了,但是代码不会报错,这样就会产生脏数据。需要去数据库里面删除掉,每次这样搞很麻烦。后俩发现idea中可以在调试时主动抛出异常,来回滚事务,免去清理脏数据的问题。具体如下:第一步、打开bubugger窗口,选择throw Exception第二部,随便输入一个异常,注意要用 new Exception() 这种形式。这时程序就会自动抛出异常,事务回滚。...原创 2020-08-24 10:30:13 · 2311 阅读 · 3 评论 -
Java后端开发规约
原作者@小松Java后端开发规约补充 命名规范 命名常常被认为是编程中的细节问题,但是其重要性往往被低估。而所谓的优雅代码往往就体现在这些细节当中,一个名字虽然不能影响程序的执行,但是却对代码的表达力和可读性有着重要的影响。在程序员工作中,大部分的时间都是在阅读和理解代码,好的命名能够让代码的概念清晰,增加代码的表达力;词不达意的命名会破幻我们思考的连贯性,分散有限的注意力。有意义的命名 变量名 变量名应该是名称,能够正确的描述业务,有表达力。如果一个变量名需要注释来补充说明,很有可能原创 2020-08-10 09:57:46 · 271 阅读 · 1 评论 -
fori,foreach和stream().forEach三种集合遍历方式的区别和使用场景
forifor (int i = 0; i < objects.size(); i++) {}foreachfor (Object o : objects) {}fori最普通的循环,可以时候得到当前的索引位置。foreach 和fori区别不大,foreach是普通fori的增强版用起来更方便。但是没有当前索引。java8新出的循环方式stream().forEachobjects.stream().forEach(p->{});最大的特点是并发执行,对于循环内业.原创 2020-07-22 15:36:40 · 13324 阅读 · 0 评论 -
idea激活失败之后打不开的问题
激活失败之后要还原配置文件。大部分时候只知道bin目录下的配置文件实际上,在用户目录C:\Users\Administrator\.IntelliJIdea2019.3\config下面也保存了配置这里最后一行有个指向激活jar包的配置删掉就好。我这里已经删掉了...原创 2020-07-22 15:24:51 · 2489 阅读 · 1 评论 -
idea 2020.1版本maven 编译项目找不到包的BUG提示程序包不存在
这个版本对maven支持有问题。勾上这个配置就好了原创 2020-06-23 09:50:32 · 7177 阅读 · 22 评论 -
通过@Autowired自动注入ThreadPoolTaskExecutor线程池时报错
通过@Autowired自动注入ThreadPoolTaskExecutor线程池时报错Consider revisiting the entries above or defining a bean of type 'org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor' in your configuration.研究发现,spring的线程池有两种方式注入一种是 通过自动注入的方式注入线程池, @Auto...原创 2020-06-04 13:59:30 · 10865 阅读 · 1 评论 -
MYSQL存储过程示例循环更新重复电话号码。截取前N位补自增数
写一个存储过程循环更新修改重复号码的最后四位为自增数字length()长度函数lPAD(i,4,'0') 左侧补0分组查重复数据ID最大一条修改BEGIN declare i int default 0; while i < 9999 do UPDATE contacts set te...原创 2020-04-22 17:09:36 · 303 阅读 · 0 评论 -
java内存溢出分析命令
https://www.cnblogs.com/sxdcgaq8080/p/11089841.html转载 2020-04-13 16:36:44 · 239 阅读 · 0 评论 -
java1.8集合常用操作
状态类型(魔法数字),建议使用枚举 宽表设计(实体设计不遵循范式设计,导致实体含义不清晰) 接口返回尽量不要使用Map格式的数据当作返回参数,同时也不应该当作方法输入参数,建议定义对应的领域对象(VO,DTO) 1.8集合操作排序Collections.sort(list, (a,b)->b.getThirdTypeId().compare...原创 2020-03-18 15:28:15 · 299 阅读 · 0 评论 -
电脑可以正常上网但是无法下载东西的问题。
最近发现个奇怪的问题,我的电脑可以正常浏览网页,但是下载的时候就会一直转圈。最后发现是因为开发的时候修改错了host文件。修复就好了C:\Windows\System32\drivers\etc不知道怎么改就其他全删掉保留127.0.0.1 localhost改完后一切恢复正常...原创 2020-03-02 11:42:21 · 9244 阅读 · 3 评论 -
秒数转分,时,天。用于消息时间展示
输入时间秒数,返回类似微信消息的时间间隔字符串。public static String getDelTimeStr(String times){ Integer time = Integer.valueOf(times); int day=time/24/60/60; int h=time/60/60%24; int m=time/60%60; int...原创 2019-11-12 11:07:12 · 193 阅读 · 0 评论 -
java 导出excel中数字变成科学计数形式的解决办法
对字段加concat('\t',)SELECTORDERID) AS '订单号改成SELECT concat('\t', ORDERID) AS '订单号',对于已经导出的excel文件可以选中列->数据->分列->下一步直到如图选择文本就好了...原创 2019-10-14 18:07:39 · 1369 阅读 · 0 评论 -
idea 编译运行eclipse创建的 spring-boot工程报错:
idea 编译运行eclipse创建的 spring-boot工程报错:Exception in thread "main" java.lang.NoClassDefFoundError: javax/servlet/Filter原因是maven中这个包的作用域,不能是provided,需要是compile<dependency> <groupId>org.spri...原创 2018-04-09 16:10:04 · 236 阅读 · 0 评论 -
基于git和jenkins的项目自动化部署实战过程中的注意点
项目部署在linux 服务器中,每次要手动打包上传然后java 命令启动。这次打算做成自动化部署。废话不多说直接看图,jenkins的基本操作不多说自己百度。1,首先新建一个任务,选择maven风格2,代码库选择git或者svn 需要安装jenkins的对应插件,直接在jenkins 插件管理中安装。填入项目仓库地址,登录账号账号在系统设置--凭据中添加 3,设置maven...原创 2018-11-28 17:10:32 · 368 阅读 · 0 评论 -
自动化部署时正确重启springboot应用。shell脚本方式
echo "stop company"#开始循环5次,判断目标进程是否存在,如果存在安全退出 kill -15等待3秒 否则终止循环for((i=1;i<=5;i++));dopid=`ps -ef | grep dmw-company.jar | grep java | grep -v grep | awk '{print $2}'`if [ -n "$pid" ]then...原创 2019-07-02 11:25:53 · 820 阅读 · 0 评论 -
工作3到5年一个优秀程序员应该掌握的知识。
这些问题都要深入的去了解,底层的知识。拓展性的知识基础问题1. Java线程的状态2. 进程和线程的区别,进程间如何通讯,线程间如何通讯3. HashMap的数据结构是什么?如何实现的。和HashTable,ConcurrentHashMap的区别4. Cookie和Session的区别5. 索引有什么用?如何建索引?6. ArrayList是如何实现的,ArrayLi...转载 2019-06-14 17:54:07 · 361 阅读 · 0 评论 -
spring boot @autowired 为null
我的问题比较奇葩,外包做的垃圾项目,重构修改一堆坑。原因是接口的方法应该用public 修饰,之前的类中有一个接口方法使用private修饰的。如果适合AOP一起使用的话就会发生这个问题。...原创 2018-04-24 14:41:39 · 2709 阅读 · 1 评论 -
spring Boot项目启动报错如下
java.lang.NoSuchMethodError: org.springframework.beans.factory.annotation.InjectionMetadata.<init>(Ljava/lang/Class;)V原因jar包重复,检查pom文件中是否有重复的jar包原创 2018-04-18 15:42:42 · 642 阅读 · 0 评论 -
idea插件总是下载失败
idea安装插件时总是下载失败,可以从硬盘安装。需要自己下载相应的插件压缩包,资源可以百度,也可以去这个网站自己搜索。http://plugins.jetbrains.com/idea选择从硬盘安装搜索插件...原创 2018-04-02 15:39:03 · 1331 阅读 · 0 评论 -
Idea 配置Jetty启动报错
错误Config error at <Call name="addConnector"><Arg>。原因是因为配置jetty多选择了一些用不到的xml配置,只需要在jetty主目录的文件start.ini上删除掉多余的XMl配置只保留原始的xml和etc/jetty-jmx.xml。最终配置如下:#======================================...原创 2018-03-27 10:14:08 · 2812 阅读 · 0 评论 -
自定义CKeditor图片上传按钮
自定义CKeditor图片上传按钮,可实现点击直接上传,自动插入编辑器中。点击上传,选择图片上传成功自动插入http://download.youkuaiyun.com/download/qq_18630487/10199980下载CKeditor文件夹替换项目中的对应文件夹,按说明修改对应文件。修改ckeditor.js中imgupload()的上传接口路径。根据原创 2018-01-11 10:58:47 · 1221 阅读 · 0 评论 -
读取FTP文本并入库
两个jar包commons-net-1.4.1.jarjakarta-oro-2.0.8.jar代码 package net.sxjr.an.renbao;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.原创 2017-02-10 09:42:33 · 687 阅读 · 0 评论 -
使用JS拼接DOM元素时
在使用JS拼接DOM元素时,有这种情况发生,'',直接这样写会报错,应使用反斜杠 \ 转义一下即可正确写法[javascript] view plain copy 在CODE上查看代码片派生到我的代码片''原创 2017-02-10 09:53:27 · 1594 阅读 · 0 评论 -
CXF调用soapwebservice
使用CXF构建webservice服务http://blog.youkuaiyun.com/zrbin153/article/details/11810143项目配置好之后,运行CXF生产客户端代码复制入文件。然后调用对应生成service实现类的方法,传入参数。如下代码: private static final QName SERVICE_NAME = new QNa原创 2017-02-10 09:51:57 · 464 阅读 · 0 评论 -
新人工作日记(1)
问题一新建项目的服务器运行配置问题,配置项目路径之后,访问路径URL必须加上项目名称如"http://localhost:8080/myProject04/01/my.do"问题二jquery运用正则表达式,如何控制程序运行? 2015.11.18了解了项目的集体流程:从参数传进来开始经过的每一步,最后到数据库。学会使用建立测试类,模拟页面请求。具体流程例子:原创 2016-01-03 11:35:08 · 424 阅读 · 0 评论 -
mysql for update使用总结
1 在查询语句后添加for update,如果有指定ID则只锁定一条记录,如果是模糊条件则会锁定整个表。2 for update会在事物结束时取消锁,因此,如果是手动起的事物则必须手动关闭,否则会导致死锁。在普通的查询语句中加锁且代码没有显式的开启事务的话,是不影响的。因为Spring默认是自动提交事物的,如果没有方法级别的事物声明,那么每一句SQL操作都算是一个事物,并且自动提交。...原创 2018-04-28 14:25:23 · 825 阅读 · 0 评论 -
linux定时任务脚本监控项目意外关闭,自动重启
应用crontab -e创建一个定时任务 :*/5 * * * * /usr/local/dmws/control.sh &>> /tmp/cron_log.txt 每五分钟执行/usr/local/dmws/下的脚本control.sh 并输出到 /tmp/cron_log.txt文件中需要给脚本授权 chmod 777 control.sh 脚本内容:...原创 2018-07-26 11:21:20 · 957 阅读 · 0 评论 -
Springboot +elasticsearch实战总结
首先安装一个kibana(web管理页面).项目中引入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId></depe...原创 2019-05-09 19:47:53 · 569 阅读 · 0 评论 -
mongodb 批量更新BulkOperations 并发是报错“requests can not contain a null value”
在项目中不能用并发循环类似parallelStream().BulkOperations bulkOps = mongoTemplate.bulkOps(BulkOperations.BulkMode.ORDERED, Object.class, collectionName);cacheEntities.parallelStream().forEach(comGoods -> {...原创 2019-04-25 20:59:52 · 2060 阅读 · 2 评论 -
mongodb 批量更新3.0版本后
网上大部分是过时的博客,自己研究了一下午。新版的用法。代码如下package com.fuli.goods.mongo;import com.fuli.goods.entity.mgdb.ComGoodsCacheEntity;import com.fuli.goods.utils.ComUtils;import com.mongodb.client.result.UpdateRe...原创 2019-03-25 18:33:15 · 419 阅读 · 0 评论 -
Spring boot 整合mybatis 报错:ClassNotFoundException: org.mybatis.logging.LoggerFactory
解决办法:在pom文件中添加依赖<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.0.3</version></depe...原创 2019-03-19 18:15:49 · 17845 阅读 · 5 评论 -
【Intellij Idea】关于idea下使用lombok的问题
2、为什么maven中加入lombok依赖后,还需要安装插件因为lombok的引入使得.java文件使用javac编译成字节码文件中包含get set函数,但是源代码中找不到定义,IDE会认为这是错误,因此需要安装一个lombok的插件3、为什么 make project操作会报错,找不到get函数IDEA 有一个选项配置Java Compiler,这里我的设置选择了eclipse,el...原创 2018-11-06 15:48:23 · 256 阅读 · 0 评论