- 博客(258)
- 收藏
- 关注

原创 springboot整合mybatis-plus实现CRUD
1.什么是springbootSprungBoot是一个快速整合第三方框架,简化xml配置完全采用注解化,内置Http服务器(如:Jetty和Tomcat),最终是以java应用程序进行执行。之前Web项目,变成War包放入TomcatWebApps进行解压运行。2.为什么要使用SpringBoot框架咱们来看看下面这张图,这是一个传统SSM项目的整合,分整合数据库访问层,...
2019-08-04 16:32:15
908
原创 分布式任务调度
(1)解耦版:将业务逻辑和定时任务逻辑完全分开部署,实现解耦,只对业务逻辑实现集群,不对定时任务实现集群,定时任务单机版本。(2)如果服务器在在集群的情况下,可鞥会存在定时任务逻辑会重复执行,比如部署两台一样的发送点卷服务,那么相同的定时任务逻辑会重复执行两次。(3)定时任务执行非常消耗cpu的资源,可能会影响到业务线程的执行,比如查询大量的数据进行处理,那么堆内存消耗非常大,可能会造成内存泄漏。(1)业务逻辑与定时任务逻辑放入在同一个jar包中,如果业务逻辑宕机了,定时任务逻辑也会宕机。
2023-09-13 15:49:33
203
原创 Unknown column ‘str_time‘ in ‘field list‘
报这个错说明这个strTime在对象里有,在数据表里没有,数据库表里加上这个属性字段就行了。
2023-07-18 11:39:15
395
原创 mybatis-plus Integer类型null值无法修改的问题
这是因为这个age是Integer类型的,而且我们使用的是mybatis的原生方法,我现在要更新这个数据,除了id,全部设为null.这个age很明显没有设置成null.
2023-07-18 11:10:48
721
原创 javaBean对象里做处理
我们在开发的时候,经常会遇到处理对象属性值得问题,那么在bean对象里处理是最方便的。这是一个时间属性,我们返回的时候需要对时间进行处理,把Date类型转换成String,
2023-06-02 17:29:05
105
原创 Optional.ofNullable().orElse()会出现的问题
Optional.ofNullable(值1).orElse(值2)这个方法就是如果值1为null,就走值2,如果值1有值,就返回值1。只能判null,不能判断是否是空字符。
2023-04-13 19:09:00
2890
1
原创 mysql的in和exist的区别
2、in是先把in括号中的语句查出来,放在临时表中,然后遍历临时表,将临时表的每一行,代入外查询中查找,当exist里的条件为真,返回外表当前记录,反之不反悔,丢弃当前记录。exist筛选外表,将外查询表的每一行,带入内查询进行判断。子表比较大用exist,可以减少总循环次数提高速度。外查询比较大用in减少对外查询表循环遍历提高速。exist用于对外表记录做筛选。exist适合外小内大。
2023-02-23 17:31:03
734
原创 索引为什么会失效
(3)如果列类型是字符串,那在查询条件中需要将数据用引号引用起来,否则不走索引。(1)查询条件中有or,即使有部分条件带索引也会失效。(5) 没有查询条件,或者查询条件没有建立索引。(4)索引裂上参与计算会导致索引失效。(2)like查询是以百分号开头。
2023-02-21 22:45:23
255
原创 MQ系列面试
怎么解决了,从全局id的角度去出发,比如msg会自带全局id,跟据全局id去查询,也可以根据业务id去定,先去根据id在数据库中查下,然后有就不插入。主动推送(mq服务器主动推送消费者)消费者与mq服务器端已经建立连接之后,生产者投递消息给mq服务器端,mq服务器端主动将消息推送给消费者。生产者投递消息给mq服务器端,但是消费者不在,消费者在启动的时候与mq服务器端建立连接,判断消费者订阅队列有哪些消息还没有被消费。如果服务器端不在的情况下,容易丢失请求,比如发送个请求消息,服务器突然宕机了。
2023-02-21 22:31:24
275
原创 2022年个人年终总结
今年对技术上的学习明显比前前两年懒散了许多,这一点是真的要反思下了,无论干什么都要有颗持续学习的心态,希望在下一年里,多学习,多记录,多总结,让自己变得优秀点,让量变产生质变。最后还是对自己的2022年说一声,幸苦了,接下来的一年,努努力,过上自己想要的生活,加油。
2022-12-30 19:31:30
274
1
原创 nable to start web server; nested exception is java.lang.IllegalStateException: Unable to create the
报这错,说明服务器的磁盘满了,清除一些不必要的文件就可以了,释放一些磁盘空间就可以了。
2022-12-09 16:33:18
1571
原创 Stream流分组求和
那么怎么解决了:Stream流提供了一个方法:Optional.ofNullable().orElse()如果某个人的分数为null,那么就有可能会出现空指针的情况:我们来演示下错误。说白了就是加了个判断如这个人分数为null,我就默认0.0,我要求出每个部门的总分数。
2022-12-09 10:44:11
1385
原创 Bean对象基本类型出现的问题。
结果根据条件检索出来的数据不是自己想要的数据,我看了下执行的sql语句,原来多了几个默认检索条件,这几个条件我没传啊,怎么给我带上的了,原来,,,,,,我定义的属性是基本类型,有默认值,最后我把这个属性定义成包装类型就解决了。今天在开发的时候使用jpa自带的查询方法。
2022-09-30 16:21:55
187
原创 Java HotSpot(TM) 64-Bit Server VM warning: Insufficient space for shared memory
今天在启动StringBoot项目的时候,报这个错,意思是硬盘空间不足,启动不起来,于是我删除了一些没用的文件,释放了一些空间,最终项目成功运行。
2022-08-26 16:43:02
526
原创 linux部署SpringBoot项目
打包之前一定要先运行一下,项目是否能运行起来,不然打包就失败。 然后对项目进行打包:看上BUILD SUCCESS说明打包发布成功 然后把jar包放到linux上进行发布:发布命令:java -jar xxxx.jar 启动成功:但是有个问题,如果我退出当前界面,那项目就会停掉。 所以这种是肯定行不通的,如果是多个项目部署在同一台机器上的话。接下来就用java -jar xxxx.jar &但是有个问题,虽然可以离职当前假面在后执行了,但是,想打开控制台查看内容就不方便了。我们就用最终方法:采用脚本执行:
2022-08-03 11:18:41
462
原创 项目时区问题解决
今天在线上遇到一个很蛋疼的问题,每次按区间查询数据库里的数据,查出来的总是快几个小时,在本地环境测试环境都没问题,但是一到正式环境就快几小时,后来在数据库连接上加上。
2022-07-26 16:09:35
289
原创 五种网络通讯的IO模型
阻塞式: 当我们没有获取到数据的时候,整个应用会产生阻塞,放弃了CPU执行,无法去做其他事情。非阻塞式:不管是否获取到数据,都立马必须告诉一个结果,如鬼没有获取到数据的情况下返回一个错误标记。根据错误的标记不断的进行轮训。Bio就是一个阻塞式的引入nio操作:java语言在jdk1.4版本推出一个 IO方案,就是对原来的BIO(阻塞式IO)实现了优化。核心思想:面向缓冲区,基于通道实现非阻塞式IO,多路IO复用实现(选择器)Bio与nio的区别Bio是一个阻塞式的io.它是面向与流传输也就是跟据每个字节实现
2022-07-10 20:36:02
237
原创 CURDATE()和NOW()区别
首先都是mysql中的当前时间函数不同点CURDATE()是精确到当前时间年月日 NOW()精确到当前时间时分秒
2022-06-27 15:59:46
1638
原创 网络编程模型基础
OSI七层模型:应用层:http协议,电子文件传输,文件服务器等。表示层: 解决我们不同系统之间语法的通讯兼容问题会话层:建立与应用程序的会话连接传输层:提供端口号和传输的协议(TCP和UDP)网络层:为我们的数据实现路由(比如路由器,交换机)数据链路层:传输的地址的桢以及错误的检测物理层:所谓的物理层都是以二进制的形式,在屋里机器上实现传输(光纤,专线,各种物理介质实现)什么是Socket技术任何的编程语言都是支持socket(网络编程的技术)技术开发。目的就是解决两个应用程序通讯的问题:注意socket
2022-06-19 21:06:26
548
原创 org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat server at xx
说明该项目端口号被占用了,我们要杀掉这个端口号第一步:输入命令: ps -ef | grep java找到这个端口号:4526然后杀掉:kill -9 4526
2022-06-15 23:34:51
1278
1
原创 Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: Access denied for user
这个错代表你的配置密码不对,改成对的密码就行了。
2022-06-14 22:04:37
366
原创 sql优化之DATE_FORMAT()函数
今天在线生环境出现了一个问题,前端接口请求超时,我立马跑到正式环境中去运行了下请求超时的sql,吓一跳,足足运行了30多秒,这不行,得赶紧优化,可是左看有看上看下看,没毛病啊,于是,请教了我们组上的大神,他一眼就看出了问题所在,问题就出在DATE_FORMAT()这个函数,为此,我要记录一番,希望大家少踩坑。如果在数据量少的情况小,运用DATE_FORMAT()性能是不会有影响,但是数据量一旦大 了之后,就会慢慢的出现性能问题了,这也是当时测试环境没有查出来,正式环境出现这个问题。为了演示效果:我往表里插了
2022-06-11 18:47:33
1735
原创 登录鉴权方案
我们在开发中需要用到对接口的登录鉴权,首先后台会根据几个参数组成字符串+secretKey,用AES(ECB)加密算法来生成秘钥ticket,第三方访问的时候,带在提供的系统认证地址后面(列如http(s)://test.com?ticket=秘钥)参数:这些参数包括时间戳,姓名,手机号,8位随机数,这些都是基本的,有的还需要根据实际业务场景添加一些信息,比如人员所在地,所在行政区划,年龄,职位信息等等。字符串参数生成规则:timeStamp=时间戳&mobile=89757&userName=柳如是&ra
2022-06-07 15:27:59
826
原创 yum -y install vim出现 Run “yum repolist all“ to see the repos you have. To enable Red Hat Subscripti
在centos7执行yum -y install vim的时候出现执行:yum -y install yum-util运行如下:执行: wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo执行:curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo执行成功:在执行:yum
2022-06-05 21:25:54
1497
原创 Sending build context to Docker daemon 2.048kBError response from daemon: dockerfile parse error l
今天在使用docker制作镜像的时候 出现这个错原来是注释的原因以“#”开头一行被视为评论,出现在其他位置视为参数错误的写法:正确的写法:
2022-06-05 14:26:53
3284
原创 Dcoker File
DockerFile:依赖下载镜像 环境配置,封装信息等,比如我现在需要运行一个javaweb项目,如果成功运行起来,我就需要jdk,tomcat,数据库,以及这些软件对应的具体版本信息,相当于一个清单说明书。第二步将这些清单里面的东西打包成一个镜像文件最后使用容器运行这个镜像文件。DockerFile指令FROM:指定父镜像,基于哪个镜像image构建 指定基础镜像,必须为第一个命令,比如我Tomcat需要依赖jdk镜像MAINTAINER:维护者(相当于作者)RUN:容器创建的时候执行的一段命令,构建镜
2022-06-05 10:23:21
112
原创 docker笔记(持续更新中)
《Docker系列一》什么是Docker 《Docker系列二》Docker环境安装 《Docker系列三》Docker架构原理
2022-06-02 23:05:14
99
原创 mysql 统计市县的数量
现在有个需求,我要统计浙江省各市和县的大东北烧烤数量(注意:数据只是用来演示demo用的,实际已调查考证为主),要求先统计各县区的数量,在把各县区数量在汇总统计。来,话不多数,开始吧。先来一张行政区划表:各县区烧烤数量表:
2022-06-02 11:00:30
4681
原创 @Value获取值为null
模拟下错误信息yml配置参数:使用这个类获取参数:结果:走个断点看看没有获取到配置里面的参数:原来问题出在这里:不能用new对象的方式去调用这个方法,必须用@Autowired注解去调用:我们在来试试:如图:获取到了配置文件里的参数。...
2022-05-27 16:20:27
175
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人