![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
后端
文章平均质量分 59
Wmenghu
一位在职的高级Java后端工程师
展开
-
mybatis中Insert语句如何返回插入的主键
方法一mapper为...xml为...其中selectKey标签:将插入到数据库的某条记录的主键,返回到指定对象(user)对应属性中。keyProperty: 指定返回的主键,存储在对象中(user)的哪个属性order:相对于insert语句,selectKey标签中的sql的执行顺序。由于mysql的自增原理,执行完insert语句之后才将主键生成,所以这里selectKey的执行顺序为after。resultType:返回的主键对应的JAVA类型LAST_INSERT_ID(): 是原创 2022-12-14 23:31:48 · 4270 阅读 · 0 评论 -
树形表,自关联表查询技巧
方法一:部门表,部门表中除了自身主键id外,还有另一个字段p定义一个返回的Map,在这个Map中,通过collection标签的 select 属性,来给这个集合赋值,每次赋值就再调用一下 getAllDepartments方法查询一次,携带的参数为第一次查询时候的主键id。2. 正常的写Controlelr,service,下面给出ServiceImpl后面的代码。1: 修改数据库表对应的实体类,给实体类添加一个字段 children。这里-1是 顶级节点的parentId为-1。有空了再更新.....原创 2022-11-25 17:05:55 · 1151 阅读 · 0 评论 -
mybatisPlus条件构造器常用方法
首先是select,在MP查询中,默认查询所有的字段,如果有需要也可以通过select方法进行指定字段。当数据库表中的字段名,与实体类对象的属性名不一致时。eq,ne,gt,ge,lt,le,between,notBetween,like,notLike,likeLeft......原创 2022-10-19 17:35:48 · 1510 阅读 · 0 评论 -
Springboot是如何保证线程安全的?
以上问题:不要在Controller里出现类的实例。即便加了线程安全操作,也会出现性能问题。当然无论是Controller还是Service,如果你一定要使用对象的属性,如private Company company = new Company();可以加上ThreadLocal的引用,如private ThreadLocal tc = new ThreadLocal();但是把这种使用的对象放进方法中初始化(即进入JVM栈中更好)。原创 2022-09-06 21:43:50 · 3578 阅读 · 0 评论 -
多人访问同一个springboot项目会不会出现并发问题
项目中通常我们没有处理并发问题,但是使用项目本身还是支持一定的并发量,因为在SpringBoot。,当可分配的线程数全部用完之后,后续的请求将进入等待队列等待,等待队列满后则拒绝处理。在spring-configuration-metadata.json。在默认情况下当连接数超过。时,就会出现拒绝连接。容器,而Tomcat。,等待队列长度设置为。原创 2022-09-06 21:31:49 · 2668 阅读 · 2 评论 -
mybatis中的if-else语句!!!
mybatis中的if-else语句!!! 最通俗易懂语法:.............例子: .............原创 2022-08-26 16:34:37 · 2014 阅读 · 1 评论 -
mybatis中判断传入的数组与集合是否为空+mybatis中Foreach的使用详解
传过来的数组 object[] ,在mapper中判空时先判断是否为null,再判断数组长度 object.length是否大于0.比如参数为List集合,在mybatis中先判断是否为null,不为null再判断集合的长度 object.size() 是否大于0即可。不为空循环 使用forech 使用@Param注解自定义keyName; 也可以使用默认属性值list作为keyname如果collection的属性为array使用@Param注解自定义key原创 2022-08-26 12:49:28 · 17681 阅读 · 4 评论 -
查询公告详情,并且带有上一条和下一条的id和标题
业务场景是这样的,系统维护的很多个公告,点击其中一条公告的时候,要展示出这条公告的详情,并且在下方还要展示上一条公告的标题和下一条公告的标题。效果图:下面说一下我的思路吧:可能不是最好的解决方法,但是也能够解决问题我的实现方法,返回的数据格式是这样的这两条sql还是有差距的,我是根据优先级来确定谁在前面展示,优先级相同的话,那就谁后发布谁展示在前面。 基于这种展示方式,去编写sql查询指定公告他的上一条公告和下一条公告。(比如查询上一条:sql的大概意思就是,首先查询已经发布的公告,再查询.原创 2022-08-25 19:21:11 · 410 阅读 · 0 评论 -
Java解析上传文件的内容(比如简历信息的解析)
效果应该是这样的(图片借鉴某网站的简历上传)代码很多,这里记录一下,回头有空了再研究研究。原创 2022-08-18 14:40:58 · 2074 阅读 · 3 评论 -
mybatisPlus代码生成器,包括swagger注解
当然生成的大部分都已经生成了,其中还有一些细节需要自己改动。我的spring boot版本是2.7.2。原创 2022-08-13 17:08:24 · 1306 阅读 · 0 评论 -
@RequestParam接收JSON的字符串,它和@RequestBody的区别
1. 用来处理Content-Type: 为 application/x-www-form-urlencoded编码的内容。(Http协议中,如果不指定Content-Type,则默认传递的参数就是application/x-www-form-urlencoded类型)@RequestParam可以接受简单类型的属性,也可以接受对象类型。2. 用来处理 multipart/form-data (表单上传的) 后端代码@RequestBody注解@RequestBody接收的参数是原创 2022-08-12 13:11:55 · 4588 阅读 · 0 评论 -
Spring Cache 介绍与使用
就是一个缓存框架,可以整合其他的缓存产品,使用也非常简单,只需要加注解。在spring boot项目中,使用缓存技术只需在项目中导入相关缓存技术的依赖包,并在启动类上使用@EnableCaching开启缓存支持即可。例如,使用Redis作为缓存技术,只需要导入Spring data Redis的maven坐标即可。...原创 2022-08-07 00:13:00 · 301 阅读 · 0 评论 -
LocalDateTime用法,以及和Date的比较于区别
为什么需要LocalDate、LocalTime、LocalDateTime【java8新提供的类】java8新的时间API的使用方式,包括创建、格式化、解析、计算、修改多线程并发如何保证线程安全原创 2022-08-06 00:06:32 · 141 阅读 · 0 评论 -
for,增强for(foreach)和stream中foreach的性能和原理分析
for循环是java出生的时候就已经支持了,在jdk 1.5中开始支持 foreach循环,foreach在一定程度上简化了集合的遍历,但是由于场景的局限性不能完全替代 for 循环,stream是jdk 1.8中开始支持的,功能强大,效率也还可以。...原创 2022-08-05 23:55:30 · 2141 阅读 · 2 评论 -
SpringBoot整合腾讯云短信服务
打开,你会看到免费试用。点进去进入短信服务的控制台......原创 2022-08-05 23:04:07 · 1598 阅读 · 3 评论 -
vue+springboot+阿里云短信服务(集成redis实现验证码登录业务)
vue+springboot+阿里云短信服务(验证码业务实现) 包含了阿里云短信服务的使用,通过实际案例来进行实战应用原创 2022-08-04 20:38:29 · 1907 阅读 · 0 评论 -
SpringBoot整合阿里OSS
最简单明了的SpringBoot整合阿里OSS教程原创 2022-08-03 21:54:56 · 1014 阅读 · 0 评论 -
最简单的Springboot整合七牛云方法
最简单的Springboot整合七牛云方法,使用yaml提取需要配置的变量,大大简化开发原创 2022-08-03 14:43:24 · 1639 阅读 · 6 评论 -
ThreadLocal解释,结合mybatisplus实战应用
ThreadLocal解释,结合mybatisplus实战应用.什么是ThreadLocal?结合mybatisPlus:ThreadLocal常用方法:ThreadLocal项目实战应用原创 2022-08-02 15:32:02 · 338 阅读 · 0 评论 -
redi实现秒杀(思路加模拟)
如果稍不注意,就会出现很多问题,比如连接超时,超卖,库存剩余等问题,使用一下思路均可解决。//4.获取库存,如果库存为null,秒杀还未开始(一般库存都是在redis存好的)测试,测试前去redis加一个商品key叫sk0101qt值就是库存。//6.判断如果商品数量,库存小于1,秒杀结束。//2.通过连接池,获得redis对象。//1.uid和prodid非空判断。//5.判断用户是否重复秒杀操作。上代码redis连接池代码。//3.拼接key。...原创 2022-07-30 12:00:14 · 522 阅读 · 0 评论 -
JDK8新特性Stream流
JDK8新特性Stream流,基础使用以及项目实践原创 2022-07-24 21:03:59 · 274 阅读 · 1 评论 -
list<Menu>集合转成树形结构返回
list集合转成树形结构返回原创 2022-07-24 13:18:30 · 330 阅读 · 0 评论 -
使用jdbc连接oracle数据库
JDBC连接Oracle数据库原创 2022-07-11 17:02:31 · 4462 阅读 · 0 评论 -
fileupload:ssm文件上传,springboot文件上传
fileupload:ssm文件上传,springboot文件上传文件上传三要素不管是 ssm还是spring boot表单项都要修改1:表单项type=file;2:表单提交方式post;3:表单的enctype属性是多部分表单形式:enctype=“multipart/form-data” 当enctype修改后request.getParameter()将会失效,提交方式将不是键值对原创 2022-04-11 09:36:44 · 125 阅读 · 0 评论