
平凡之路每一步
文章平均质量分 66
成长每一步
`送你一朵小红花
这个作者很懒,什么都没留下…
展开
-
JAVA异步编程
文章目录前言异步的使用场景:异步的好处:在JAVA中异步的实现方式一:实现异步工厂需要依赖的工具类线程池配置异步任务管理器关闭线程池实现异步调用工厂异步工厂测试用例二:使用JDK1.8中 CompletableFutureCompletableFuture 简介CompletableFuture 实现异步CompletableFuture 测试用例前言今天来简单总结一下JAVA中的异步执行,那么有异步肯定就有同步,他们有什么区别呢?我们为什么要进行异步操作呢?同步:在所有操作执行完毕后返回给客户端,原创 2021-08-14 11:04:58 · 1099 阅读 · 1 评论 -
SpringBoot实现异步导入导出任务(实现思路 + 超详细流程)
前言:在系统用户量较大,且用户较为依赖导入导出报表,而数据量又比较大的情况下,这时再采用即时下载Excel的方式用户体验就不太理想了。所以退而求其次,需要找另外的实现模式在不影响用户使用的前提下,降低我们服务器压力,同时又能满足用户需求的解决方案。本文介绍一下我们实际项目中使用的:异步导入导出模式。主要分为几个步骤:一、 用户操作导出时保存操作至异步任务表中,记录用户信息及请求时参数,同步响应给用户 “操作成功,请去任务中心查看”。二、 用户操作导入时将导入文件暂时保存至服务器中,同时保存导入操原创 2021-07-03 10:28:13 · 18138 阅读 · 2 评论 -
SpringBoot整合Mybatis Plus(超详细)一篇就够了~~
简介:官网文档地址Mybatis-Plus特性:无侵入:Mybatis-Plus 在 Mybatis 的基础上进行扩展,只做增强不做改变,引入 Mybatis-Plus 不会对您现有的 Mybatis 构架产生任何影响,而且 MP 支持所有 Mybatis 原生的特性依赖少:仅仅依赖 Mybatis 以及 Mybatis-Spring损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作预防Sql注入:内置 Sql 注入剥离器,有效预防Sql注入攻击通用CRUD操作:内置通原创 2021-06-29 21:16:15 · 2230 阅读 · 0 评论 -
Docker下修改Mysql配置文件
docker 中修改mysql配置文件1. 查出mysql容器iddocker ps 2. 进入容器docker exec -it [容器id/容器名] /bin/bash 3. 查看my.cnf文件是否存在cd /etc/mysql/ ls 列出目录:conf.d my.cnf my.cnf.fallback4. 编辑my.cnf文件vim my.cnf 报错:vim: command not foundvi my.cnf 报错:vi: comma原创 2021-04-16 17:34:06 · 1416 阅读 · 0 评论 -
Svn回退版本
1. 仅修改了文件但没有进行commit这种情况使用revert命令可以进行撤销修改使用命令svn revert xxx为修改的文件名(单个文件恢复) svn revert xxx或使用svn revert -R xxx为目录的名称(对整个目录进行恢复)svn revert -R xxx2. 已经进行了commit操作这种情况使用merge命令进行版本的回退使用命令svn log来找出需要回滚的确切版本号svn log使用命令svn merge -r xx:yy来回退版本 x原创 2021-06-21 22:11:39 · 857 阅读 · 0 评论 -
Git拉取远程分支到本地
步骤:新建文件夹名称为项目名在文件夹中右键右键打开Git Bash Here,初始化该文件夹; git init与origin master建立连接(进入GitLab或GitHab中copy url,将copy的url替换xxxxxxx.git)git remote add origin xxxxxxx.git把远程分支拉到本地(master为远程仓库的分支名) git fetch origin master在本地创建分支master并切换到该分支 git che原创 2021-06-21 22:09:24 · 3349 阅读 · 0 评论 -
JAVA三年经验面试题总结
文章目录前言:面试题javajvm、gcjdk1.8的新特性java基础框架springspring bootmybatis/mybatis-plus/springDataJpamysqlsql优化索引事务redis应用场景多线程服务器相关算法TCP/HTTP/WebSocket业务前言:2021年6月3日至10日刚经历了大概一周时间的面试,陆续接到了6个offer才入职。依稀记得面试第一天,那天是周四,两个面试全部通过,第一个offer是一家主做b2b业务的公司,由于我刚好上一个项目的业务跟他们接原创 2021-06-21 22:03:47 · 5995 阅读 · 0 评论 -
SpringBoot自定义注解防止表单重复提交
前言:本文介绍基于redis和toke机制,自定义@RepeatSubmit注解来实现防止接口重复调用情况。实现教程:自定义注解是基于spring aop实现的,所以需要先查看是否引入了aop的依赖,如果没有的话在pom文件中添加以下依赖,还有redis的依赖。<!-- 引入aop相关 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId&原创 2021-06-24 21:56:58 · 3445 阅读 · 0 评论 -
自定义@MultiRequestBody注解实现Controller中方法接收多个JSON对象
前言:最近在熟悉公司的项目框架,看到了这个注解在这里总结一下。解决的问题:1、单个字符串等包装类型都要写一个对象才可以用@RequestBody接收;2、多个对象需要封装到一个对象里才可以用@RequestBody接收。主要优势:1、支持通过注解的value指定JSON的key来解析对象。2、支持通过注解无value,直接根据参数名来解析对象。3、支持基本类型的注入。4、支持GET和其他请求方式注入。5、支持通过注解无value且参数名不匹配JSON串key时,根据属性解析对象。6、支原创 2021-06-27 10:31:25 · 3158 阅读 · 1 评论 -
SpringBoot实现防XSS攻击 超详细教程
前言:最近在熟悉公司的项目框架,看到这一块内容时深入了解了一下,在这里总结一下。XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。跨站脚本攻击(XSS),是最普遍的Web应用安全漏洞。这类漏洞能够使得攻击者嵌入恶意脚本代码到正常用户会访问到的页面中,当正常用户访问该页面时,则可导致嵌入的恶意脚本代码的执行,从而达到恶意攻击用户的目的。实现教程:教程中会涉及到几个工具类的依赖,所以需要提前引入一下,在pom文件中新加原创 2021-06-23 21:23:36 · 6789 阅读 · 6 评论 -
SpringBoot接收post请求中单个入参解决方案
场景:通常会遇到写接口时仅需要传入单个参数的情况,但是spring自带的参数解析器不支持解析这种传参,导致接收到的参数始终为null。解决方案:1、使用JSONObject与@RequestBody注解配合接收参数; @PostMapping("/getSingleParam") public void getSingleParam(@RequestBody JSONObject object){ System.out.println(object.getString("name"));原创 2021-04-29 17:24:17 · 26718 阅读 · 4 评论 -
Mysql 报错this is incompatible with sql_mode=only_full_group_by
一、前言该问题出现于mysql5.7.5版本及以后Mysql文档中是这样描述的:HAVING条件或ORDER BY列表引用GROUP BY未在该子句中命名且在功能上不依赖于(由其唯一确定) GROUP BY列的非聚合列,拒绝查询ONLY_FULL_GROUP_BYReject queries for which the select list, HAVING condition, or ORDER BY list refer to nonaggregated columns that are n原创 2021-04-28 15:03:10 · 467 阅读 · 0 评论