springboot
文章平均质量分 82
Wzy000001
这个作者很懒,什么都没留下…
展开
-
springboot的定制化方式
springboot的定制化原理个人理解,springboot设计目标就是希望利用提供各种默认约定配置,代替配置,从而达到简略配置的目的。实现原理就是利用类似SPI机制,通过AutoConfigurationImportSelector,从而读取所有的classpath里的MATA_INF/META-INF/spring.factories里的自动配置类,配合对应Conditional注解从而有条件的注册对应的自动配置类,而@EnableConfigurationProperties绑定配置到对应的配置原创 2021-12-15 09:33:40 · 606 阅读 · 0 评论 -
csrf和xss攻击-以及各类项目的安全防护措施
csrf和xss攻击-以及各类项目的安全防护措施起因我最近在搞一个项目验收,然后验收标准是通过渗透测试,里面几个重要的指标就是防范csrf攻击和xss攻击。了解想防范先得了解什么是csrf攻击和xss攻击。https://www.jianshu.com/p/344947705c3dhttps://segmentfault.com/q/1010000014364239https://www.jianshu.com/p/c69f08ca056dhttps://blog.csdn.net/xiao原创 2021-08-27 18:28:44 · 208 阅读 · 0 评论 -
XSS攻击防护
项目的xss攻击拦截项目要上线的话,需要检查下有没有xss攻击的风险。什么是xss,简单来说,就是前端输入类型然后存储到后端,前端下次获取这个数据的时候,因为直接显示到前端的话,因为被认为是js脚本,直接执行了。这个风险在于如果这个显示是公共的资源的话,可能让用户执行一些恶意的js,比如将密码通过js发送到固定接口。那怎么拦截呢。前端可能处理的话,就是利用显示的时候,敏感字符转义后显示。我们后端的处理的,就是拦截参数,要么是在前端输入存储到数据库之前的时候,转义敏感字符。要么是显示到前端前,反序原创 2021-08-27 18:27:45 · 219 阅读 · 0 评论 -
springboot与mybatis-plus的整合
springboot与mybatis-plus的整合一、导入依赖<!-- mybatis-plus 相关的jar --><dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.0</version></depende原创 2021-02-27 17:24:09 · 414 阅读 · 0 评论 -
mybatis一次排查更新操作后,查询却是缓存的问题
mybatis一次排查更新操作后,查询却是缓存的问题事件起因我在一个分布式的环境下,一个服务调用另一个服务的更新操作,然后接着去查询这个记录,结果发现,这个服务的查询结果还是原来的。猜测查询到还是原来的,无非就两种可能,一个就是更新没更新成功,这个是没有可能的,因为我查询数据库,发现记录是改变了的。那就是说更新操作是成功了的,那么就只有另一种可能了,哪个地方有缓存。先开启下这个服务的日志,打印请求和mybatis执行的sql的日志。结果确实更新执行了语句,而get操作没执行,走的缓存。猜测1.f原创 2021-01-23 19:35:08 · 3176 阅读 · 0 评论 -
easyExcel的个人应用2.0
easyExcel的个人应用2.0当时简单的写了下demo,留下了很多坑。但是我填坑也不太想填,怎么办呢。那就新开个坑。准备工作pom<!-- easyexcel --><dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.1.4</version>&l原创 2021-01-23 19:31:46 · 350 阅读 · 0 评论 -
热部署引发的类型转换异常
热部署引发的类型转换异常起因主要公司有个老的项目,想合并,里面有个工作流,里面需要配置监听器,然后监听器需要用到spring管理的其他的类,然后如果用@Component,@Autowired来注入的话,项目启动会报找不到这个类的问题,然后我以为是有同名类,导致注入不进去,所以我改用@Component(“”)来声明,注入的时候,也用@Resource(name ="kaptchaProducer"``),但是注入的bean的时候,会报类型转换异常。既然不让我用spring的主动注入,那我就用Spri原创 2021-01-23 19:01:35 · 525 阅读 · 0 评论 -
并发申请业务号
并发申请业务号起因有个表,打个比方,申请表,就是说,客户申请的时候,填写记录到申请记录表,表里新增了一条记录,当初设计的时候,表里没有业务号这个字段,只有id,然后一堆信息,然后新需求来了,导出这个记录表到excel里,然后把excel这个文件传到其他系统里,后台人员定时的去取这个文件填写。然后这个文件又回写到这个系统里。那么问题来了,导出到excel的时候,excel的每条记录是没有id的,也不允许导出id,这个时候,你如何确定这个excel的这条记录就是你数据库的这条的呢?讨论后,决定用新增个字段原创 2020-12-26 15:32:15 · 307 阅读 · 1 评论 -
easyexcel的个人应用
easyexcel的个人应用背景在个人的工作中,有个通用的功能,叫excel的导入导出,总的功能要求是前端能提供模板下载,用户按格式填充数据,就可以支持数据的导入,导出的话,用户在前台加上筛选条件后,导出excel数据。当时实现也很简单,模板下载的话,就是后台管理个模板管理功能(就跟字典表一样,一个专有名称对应一个文件,前台直接用这个名称去换文件)。而导入导出的话,用poi操作。问题小数据一点问题也没有,每个功能自己实现导入导出也不是不能接受。但是当数据量开始大,然后要导入导出大数据的时候,问题就开原创 2020-12-20 19:09:52 · 798 阅读 · 0 评论 -
引入第三方任务调度平台XXL-WORK
引入第三方任务调度平台XXL-WORK前言我们模块中有个模块是专门同步原本的数据库到新库中的,本来写法是写个接口,然后手动调用,也有加了@Scheduled进行定时调度的。但是有这么一个问题,如果我突然想延迟某个任务的调度时间,某天不想执行任务,那么怎么办?我分布式的项目,这个任务只能一个服务跑,跑多了会出问题(比如同步记录,你多跑了数据库多了数据)。修改代码然后重新上线?肯定不行的,那么我们应该怎么解决这种问题呢。关键词:动态任务调度尝试一本来想利用springboot的自带的ThreadPoo原创 2020-12-18 09:19:00 · 1175 阅读 · 1 评论 -
动态生成pdf
动态生成pdf需求最近有个需求,就是办公系统,往往有生成doc,pdf的需求。以往,我接触到的系统,生成doc,有这么几种方式,一种是直接利用ipoi来生成doc,这种最大的问题是,当模板的样式比较复杂的话,生成极为困难,我也没进过有人这么生成,目前这家公司倒是有这么一个思路,利用itext直接读取模板的documnet,然后因为模板里插有书签,那么我们可以在读到书签后,直接替换为数据,那么就可以达到生成doc的目的,但是需求中如果有表格,循环数据,这种需求的话,应该是要循环插入样式和数据,这种我觉得是原创 2020-11-20 17:16:56 · 604 阅读 · 0 评论 -
fegin的日志配置
fegin的日志配置调试的时候,往往会发现,我调用fegin的方法,但是却总是调用的熔断器的方法,而日志却没有打印出来,导致无从下手。现在就希望可以打印出fegin的请求参数和请求响应。默认情况下feign是没有日志打印出来的,需要增加相关配置一、创建Feign的配置文件,并在其中设置日志等级package com.xy.ito.signatureservice.config;import feign.Logger;import feign.RequestInterceptor;impor原创 2020-11-20 17:12:33 · 278 阅读 · 0 评论 -
Springboot整合通用mapper
Springboot整合通用mapper引言我第一次整合orm框架的时候,本来使用jpa,多表联查比较麻烦(只是单纯的使用,没深入使用,可能有比较好的方法使用,我没用到),单纯使用mybatis,写单纯的crud的方法,感觉自己手写太麻烦,如果用mybatis的逆向工程,它又给你生成各种方法,我觉得很烦。那有没有一个框架可以简简单单的让我不需要太多的东西就可以使用单表的操作呢,我发现了通用mapper。(后来其实发现,mybatis-plus两个思路大同小异,都挺好的。)一、导入依赖 <原创 2020-09-11 21:43:00 · 386 阅读 · 0 评论 -
springboot与mybatis的整合
springboot与mybatis的整合一、导入依赖<!-- mybatis-plus 相关的jar --><dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.0</version></dependency&g原创 2020-09-11 11:42:24 · 283 阅读 · 0 评论