- 博客(12)
- 收藏
- 关注
原创 任务调度实现
任务调度就是按照特定时间规则执行系统某个固定的业务逻辑。任务调度底层是使用jdk的Timer实现的。单体项目建议使用Spring-task任务调度技术,分布式架构建议使用quartz任务调度框架。Spring-task是单线程运行的,Quartz是多线程运行的,且功能更为丰富,支持作业管理。
2024-01-05 09:31:53 358 1
原创 Redis
Redis诞生于2009年全称是Remote Dictionary Server,远程词典服务器,是一个基于内存的键值型NoSQL数据库。其主要特征如下:键值(key-value)型,value支持多种不同数据结构,功能丰富;单线程,每个命令具备原子性;低延迟,速度快(基于内存、IO多路复用、良好的编码);支持数据持久化;支持主从集群、分片集群;支持多语言客户端;
2024-01-03 09:53:47 357 1
原创 物业系统完成流程
使用hutool中的CaptchaUtil工具类中的createLineCaptcha(长,宽,验证码长度,模糊线条数)方法构建出符合要求的验证码,由于图片内容太大不好传输,所以使用Base64的方式压缩图片,使用getImageBase64Data()方法(img标签可以自动解压缩图片,但要加data:image/png;base64,前缀)获得压缩的验证码图片,将验证码内容和随机生成的验证码ID存到Redis中待用,使用map将验证码ID和压缩后的图片响应回前端。
2023-12-19 22:03:25 811 1
原创 JDK9-17新特性
模块化系统是Java9中新增最大的特性,本质上就是用模块来管理各个package。模块化系统主要是解决JVM需要加载的rt.jar越来越大的问题,减少内存的开销。并且模块化使得代码组织上更安全,因为它可以指定哪些部分可以暴露,哪些部分隐藏。模块化系统的实现过程:通过在src目录下创建module-info.java文件,在其中requires(导入)需要的包,并把自己exports(暴露/导出)出去,不暴露默认是隐藏。
2023-12-14 09:20:47 114 1
原创 Servlet:Java服务器端小应用的一些总结
tomcat服务器在接收到浏览器的请求后,会调用Servlet的service方法处理器请求,如果当前自定义的Servlet类没有service方法会调用父类的service方法进行处理。当客户端浏览器第一次请求Servlet时,容器会实例化这个Servlet,如果配置了load-on-startup启动容器时就会完成servlet的创建,然后调用一次init方法,并在新的线程中执行service方法处理请求。
2023-09-20 19:08:25 98 1
原创 算法心得 有了再更新
解释:第一堆力扣币最少需要拿 2 次,第二堆最少需要拿 1 次,第三堆最少需要拿 1 次,总共 4 次即可拿完。我们每次可以选择任意一堆,拿走其中的一枚或者两枚,求拿完所有力扣币的最少次数。堆力扣币,每堆的数量保存在数组。可以对数组中的数先+1,再右移。
2023-09-20 14:38:09 51 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人