- 博客(57)
- 资源 (4)
- 收藏
- 关注
原创 LocalDateTime + mybatis plus的异常
之前的项目中用的mybatis plus非常好,然后新项目中也用了,但是新项目结构比较特殊。一个工程是gradle项目,一个是maven项目,公用一个common包,然后就出现了一个小问题,原来自定义的有时间字段拦截器,统一把时间更新为UTC时间,结果发现新的有问题,更新的时间变成了UTC-8.可以发现区别,一个是把LocalDateTime 转换为Timestamp,一个是转换为Object,因为我原来设置的就是LocalDateTime ,转换为Timestamp带上时间戳,然后数据库连接又是。
2025-02-19 16:37:44
198
原创 MySQL时间字段TIMESTAMP和DATETIME
如果业务是在跨时区的地方,尤其是有冬令时切换的地方,TIMESTAMP会自动变化,而DATETIME不会变化,前提是使用系统时区。总结就是TIMESTAMP会根据会话连接的时区信息进行变化,也就是如果会话信息是东八区就变成东八区,如果是UTC+2就是UTC+2。查询数据库的全局时区和当前会话的时区信息,一般如果使用navicat进行连接,没有显示指定时区信息,会默认使用system_time_zone。这样的话,问题来了,数据库使用的是默认时区,因为历史原因无法改变,只能代码手动指定时区,防止时区切换了。
2024-11-15 17:10:49
516
原创 gradle idea 单元测试失败
有两个值,然后idea的gradle设置也可以设置gradle路径,idea设置了一下gradle路径就好了。今天用别人提供的gradle项目写单元测试,之前没接触过gradle,发现一直报主类找不到。然后调试发现是加载gradle的时候类路径乱码,因为我设置的用户名称是中文。之前想着挑战一下电脑名称用中文名字,没想到挑战失败了。
2024-09-07 17:10:45
244
1
原创 Rocketmq的坑又来了
第一点就是常见的,consumer的tag,同一个consumer的group是会进行覆盖的,后面的consumer是会覆盖前面的,所以最好是同样的consumer有相同的消费tag。
2024-06-13 11:12:02
436
原创 Jenkins接口调用
3、触发远程任务,都要是post接口。参数的名字就是写的名字。感觉有点坑,这个文件路径是上传后的保存的文件名字。同时又是参数key,好扯淡的接口文档。2、postman选择basic auth,输入账号密码,curl的–user,本质是bear + 空格+base64编码账号密码。1、授权,Jenkins不推荐使用创建单个任务时创建的token,推荐这个用户下的创建user token。Jenkins是好用,但是接口文档写的稀烂。点击自己账号信息,即可创建token。
2024-01-05 15:32:23
1051
原创 解决idea重复配置maven的问题
进入到idea的启动界面,就是选择加载项目的时候,可以load 的时候取消加载,就可以,然后点击config,进行配置,就是全局配置。因为项目中一般不让配置maven地址,使用的是idea配置的。每次新建项目都需要配置maven,很麻烦。2022.3的版本可以试试这个配置。终于解决了一直以来的疑难问题。设置ok,终于解决了我的问题。
2023-11-28 18:44:01
811
原创 Nginx代理https请求的操作过程
合并证书这里使用的是cat命令,其实就是两个证书的输出合并到同一个里面,但是我的不知道为什么gs_intermediate_ca.crt这个是空的,所以等于server.crt 就是 server-ssl.crt。会使用到里面的srcalias,不过用不用这个命令都可以,因为tomcat证书,后端肯定是配置了alias,用的就是配置的server.ssl.key-alias=tomcat。要和前端进行联调,我本地后端用了https,证书是自制的,主要是页面里面有一些oauth2认证的地方,需要跳转。
2023-11-25 16:57:04
1358
原创 Ubuntu 20 安装redis,单节点
关键字:requirepass、port、bind、rdb,dir /home/改一下rdb保存的路径和名字。安装之后就是修改默认配置。可以直接redis-cli登录,执行info信息,看一下配置文件地址。在开始安装之前,你应该先更新你的系统的包列表。安装很快,这个安装的是最新的5.0.7的版本,然后修改端口、密码、其他主机访问、rdb参数。
2023-07-13 17:22:32
1905
1
原创 Mysql删除千万级数据的方案
于是百度,nohup 吧,nohup说了后台执行,日志输出不太对,没当回事,因为上面mysql客户端执行的时候日志是正常的,于是nohup就执行了,没想到nohup之后,日志没有输出,听天由命吧。仔细分析原因,上面的执行速度慢,其实是因为where条件慢,即使加了limit也不行,数据太大,每次where的执行效率太慢,于是乎突发奇想,不如直接delete xxx where id=xxx,试了一下,这样可以。背景:有个项目跑了一年多,没注意过,结果有一天看了下,最大的mysql表居然有四千万数据了。
2023-04-24 15:32:40
1653
3
原创 java队列的一个坑
先说现象:生产环境有一个队列,一个生产者,一个消费者。莫名其妙的就不消费了。生产都正常。然后排查,发现加一个 Thread.sleep就好了。神奇,然后排查。最后做了一个demo。如下,public class QueueTest { public static Queue<Long> queue = new LinkedList(); public static Queue<Long> queue1 = new LinkedBlockingQueue&l
2022-04-26 15:50:20
760
原创 Mysql安装后配置修改
本来想着用的时候再查,但是现在感觉还是保存到自己的博客比较方便。安装的文章见之前的文章。ubantu安装mysql之后,一般就是改端口、设置限制的访问策略、设置内存等信息。步骤1. 打开mysql的配置文件,这里是默认安装的路径, vi /etc/mysql/mysql.conf.d/mysqld.cnf步骤2. 在末行添加 port = 36993,如下图步骤3. 保存后,重启mysql服务,service mysql restart步骤4. 命令行登录进mysql,mysql -u roo
2022-04-24 15:56:08
3759
原创 一次泛型擦除的坑
先说报错:java.lang.ClassCastException: java.lang.Double cannot be cast to java.lang.String再说思路。看到这个类转换异常,感觉很好解决。结果看到报错的地方有点晕了。第一种其实默认调用的是toString方法,自己最开始也是加的一个toString,因为我想着不管是什么类型,toString方法总是不会报错的吧。结果就报错了。改为第二种办法。String.ValueOf就没有问题了。来进行分析。我这个list是从数据
2022-04-24 10:02:38
1198
原创 记录一次springboot,http升级为https的全过程
先说背景。业务升级,需要使用https访问。我想这也太简单了。搞个证书就行了。于是乎,开始实施。1、买专业证书,阿里云上花了一千块买了个一年的证书。这是正式环境的证书。2、改代码。有了正式证书之后,还要修改本地环境,进行验证。毕竟本地很多访问方式都要变。而且我记得之前http接口调用,还要修改代码。购买阿里云个人测试证书,不花钱。20个证书,但是买下来傻眼了。这个必须要绑定域名。但是我本地环境,哪里来的域名。只能自己生成证书了。这个专业点叫 《自签证书》。找了很多网上的资料。这个最靠谱。尤其是需要注
2022-03-31 15:31:04
2950
原创 maven无法下载jar包
原来好好的,突然无法下载jar包。排除网络,排除各种之后,在网上看到这个文章,经测试,解决问题。https://blog.youkuaiyun.com/li396864285/article/details/81168648离线模式,应该是只去本地仓库查询,不会再下载。是我不小心误触了maven的按钮导致的。误触的这里:让我把好几个仓库地址都加上去,也没解决,结果是因为误触了这里...
2021-11-09 17:44:35
301
原创 ubantu 20 安装mysql5.7.35
mysql历史版本https://downloads.mysql.com/archives/community/wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-server_5.7.31-1ubuntu18.04_amd64.deb-bundle.tartar -xvf mysql-server_5.7.31-1ubuntu18.04_amd64.deb-bundle.tarrm -f mysql-testsuite_5.7.31-1
2021-10-31 16:21:20
313
转载 ubantu20.04安装jdk8
Ubuntu20.04 安装 jdk8下载对应的 jdk8oracle官网,下载jdk在 ubuntu 中 新建 一个 jdk8 目录mkdir jdk1.81解压tar -zxvf jdk-8u221-linux-x64.tar.gz1配置环境变量 ( 输入 vim /etc/profile 进行编辑 )在文件内容最后加入export JAVA_HOME=/usr/local/jdk1.8export JRE_HOME=JAVAHOME/jreexportCLASSPATH=.:{
2021-10-31 15:11:45
3096
原创 死锁与Socket超时
死锁:资源互相竞争,相互拿着对方需要的锁,造成无法和解,程序僵死。Socket超时,Socket连接未设置有效超时时间,连接、读取超时。问题:之前碰到过类似的,但是居然忘记了。昨天碰到的,再次记录一下。现象:在我处理的这个特殊场景下,可以理解为是个单线程的业务场景。需要进行下载文件,结果昨天晚上程序假死,下载文件没成功。第一时间怀疑死锁,因为做了改动,开了事务。进行jstat -l pid >xxx.log。分析之后未发现死锁,该运行的运行,但是发现一个内容很长的运行中的线程,这么特殊,
2021-04-14 09:34:47
474
原创 开源框架中文介绍地址
mybatis:https://mybatis.org/mybatis-3/zh/logging.htmlspring:https://www.breakyizhan.com/java/3100.htmlspringboot:https://www.breakyizhan.com/springboot/3028.html
2020-06-29 15:18:45
161
原创 AMD机器安装Android studio环境安装
这里写自定义目录标题AMD机器安装Android studio环境安装新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导...
2020-03-25 17:07:52
2457
1
原创 javaFX的一些坑
javaFX的一些坑1、一定要注意fxml和controller中类名是不是一致table 和TreeTable不一样,容易看花2、this.getClass().getClassLoader().getResource("")和this.getClass().getResource("") 不一样,一个可以获取绝对路径一个不行3、集成maven项目时,要注意资源文件是不是也到class...
2019-11-10 00:57:00
479
原创 一次springcloud升级时的问题
由Camden升级为Dalston的时候,定时任务有问题。莫名其妙报这个错。代码用的是getBean(String beanName),查阅资料说这样说的是创建工厂的方法。后来转换了一下思路,用getBean(Class)就好了。改动最少。java.lang.ClassCastException: org.quartz.impl.StdScheduler cannot be cast to ...
2019-10-18 15:18:13
171
原创 监控告警优化需求的思考
目前主要负责监控告警,属于运维开发的范畴。公司有三个以上核心项目,应用服务人数超过万人。运维人员40人左右,总项目几百个,资源分配不均。只能集中力量办大事。昨天看到一篇文章,客户和用户的区别,当然产品是面向TO C的,但是我认为所有的概念都是可以相互转换的。客户其实是可以对产品好坏进行评价,具有拍板权,用户是实际使用产品的,可以对产品进行吐槽,可以从侧面影响客户。但有时候不一定管用。内部的系...
2019-10-08 14:33:53
560
原创 一次Rocketmq的维修之路
始终不知道开发和运维的区别。现在我这全套环境都是自己搭建的1、起因:项目本地启动,本地和测试环境使用同样的topic,又不想单独创建topic,计划更改mq的配置,可以自动创建topic和topic消费组2、过程:修改相关配置文件,很简单,结果启动后不行,进程都在,报错也没有3、结论:要先启动nameserver,再启动broker。因为broker要向nameserver进行注册。启...
2019-09-04 19:21:32
259
原创 记一次跨域问题的解决
SpringCloud项目,我不想把端口都整到一个。计划使用Nginx解决跨域的问题。跨域请求前会先发送一个options类型的请求,返回一个204.在网上看着很简单,使用过程中发现,网上给的内容,少了个Progma的header头、注意看前端浏览器的报错,报错比较清楚了,少了个Progma的头跨域允许附上我转发的代码...
2019-08-24 17:32:59
367
原创 IDEA一次类未定义的解决NocClassDefFoundError:org/json/JSONException
1、从git上把项目拉取下来,springcloud项目。发现Eureka可以从main方法中运行。zuul和其他服务只能通过mvn spring-boot:run方式运行,直接run main会报错。如下:在Services控制台进行运行,本来想着通过mvn的方式也行,后来需要debug调试的时候,还是需要run的方法才可以。网上各种找,没有好的方法;2、灵光一现,还是回归到问题,类未定...
2019-08-23 11:45:01
738
原创 Intellij IDEA搭建以及常见问题
1、去官网下载,正常安装2、搭建第一个web工程注意,idea的project相当于eclipse的工作空间,model相当于eclipse的项目3、下载tomcat4、下载mvn5、下载jdk8
2019-08-03 15:48:38
147
原创 Linux中\和/的区别,正斜杠和反斜杠的区别
先给结论,再加图片:1、反斜线“\”是电脑出现了之后为了表示程序设计里的特殊含义才发明的专用标点。就是说,除了程序设计领域外,任何地方都不应该有使用反斜杠的时候,请永远使用正斜线“/”2、Windows系统中用反斜线“\”来表示目录,但是Linux下用正斜线“/”来表示3、Windows: “/”是表示参数,“\”是表示本地路径。 Linux和Unix: “/”表示路径,...
2019-05-29 17:46:11
28113
原创 进化之路
开发中有几类大神。 一类大神是代码功底很深厚,写的代码健壮性很好,但是这类人只能写代码。 一类是由上面的发展而来,写的代码多了见得异常就多,只要看到异常就能解决,这也是很厉害的大神。但是前提是要看到异常。 一类是没有异常信息就创建或者称之为抓取异常信息。通过wireshark、fiddler、windbg来抓取各种信息进行分析。最后的这种大神其实就是给新手擦屁股的,因为新手写的代码不健壮,没有
2017-03-18 15:43:39
430
原创 经典eclipse安装java web插件
公司eclipse默认是安装了maven插件,但是自己要写个测试项目,而去构建个maven项目,我认为是没必要的。所以就想安装java web插件。废话不说了,来正题在Eclipse中菜单help选项中选择install new software选项,为经典版eclipse增加web and JavaEE插件 在work with 栏中输入 http://download.eclipse.org/
2016-11-01 18:12:30
27472
4
转载 redis命令简明示例
一、string命令示例: 1. SET/GET/APPEND/STRLEN: /> redis-cli #执行Redis客户端工具。 redis 127.0.0.1:6379> exists mykey #判断该键是否存在,存在返回1,否则返回0。 (integer) 0 redis 127.0.0.1:6379>
2016-10-10 10:44:54
466
原创 工作心得--细心
工作两年,想法很多很杂。 前一段时间一直在解决一个问题,openfire会自动断线,中国移动微信号内嵌一个h5的页面,手机保持亮屏,不发消息,五六分钟左右会提示聊天已断开,一直是一个困扰项目组的问题。 经我一天的废寝忘食,研究出来,是重发次数不够,openfire服务器认为聊天已结束,返回了链接断开的结果。 所以把maxRetries[最大重发次数]由原来的5修改为50,后经观察,确实已经没有
2016-09-30 11:50:06
2399
转载 一定要定义序列化ID
只为成功找方法,不为失败找借口!Java基础学习总结——Java对象的序列化和反序列化一、序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为对象的过程称为对象的反序列化。 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中; 2) 在网络上传送对象的字节序列。 在很多应用中,需要对某些对象进行序
2016-08-20 15:54:12
8301
转载 java序列化详解
转 https://www.ibm.com/developerworks/cn/java/j-lo-serial/ Java 序列化的高级认识 如果你只知道实现 Serializable 接口的对象,可以序列化为本地文件。那你最好再阅读该篇文章,文章对序列化进行了更深一步的讨论,用实际的例子代码讲述了序列化的高级认识,包括父类序列化的问题、静态变量问题、transient 关键字的影响、序列化
2016-08-20 15:43:17
342
原创 工作心得
最近在工作中发现,责任心和态度胜于一切。 有两个同事,一个办事一点责任心没有,写完代码不进行测试,不考虑与其他功能的兼容性。 另一个能力太差,自己解决问题的能力几乎没有,还觉得自己很牛逼,工资太低。 我呢,保证对自己的代码负责,了然于心。 写的代码总要测试的。 他们都没意识到,代码有bug,最后坑的还是自己。整体加班熬夜。。。 吐槽,工作不开心
2016-05-18 16:35:12
421
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人