Springboot集成jsp及部署服务器实现原理

1.在application配置文件里面加入配置:spring: mvc: view: prefix: /jsp/ suffix: .jsp2.手动在src->main->下面创建webapp文件夹
3.在Springboot 启动类加入如下代码:@B...

2020-10-14

MyBatis-Plus集成Druid环境搭建的详细教程

一、简介Mybatis-Plus是一款 MyBatis 动态 sql 自动注入 crud 简化 增 删 改 查 操作中间件。启动加载 XML 配置时注入 mybatis 单表 动态 SQL 操作 ,为简化开发工作、提高生...

2020-10-14

java实现把一个List集合拆分成多个的操作

有些时候我们需要对一批数据进行分批处理, 使用subList方法可以实现对List集合进行固定长度的分割. /* * List分割 */ public static List<List<String>> groupList(L...

2020-10-14

关于使用Mybatisplus自带的selectById和insert方法时的一些问题

一.关于使用Mybatisplus自带的selectById和insert方法时的一些问题1.selectById的问题(1).表的主键列名不是id时查询不到数据,因为Mybatisplus自动生成的sql语句where后面拼...

2020-10-14

JAVA8 List<List<Integer>> list中再装一个list转成一个list操作

我就废话不多说了,大家还是直接看代码吧~ List<Integer> collect = IntStream.range(1, 10).boxed().collect(Collectors.toList()); List<Integer> collect1 = IntStream....

2020-10-14

Mybatis-Plus条件构造器的具体使用方法

在Mybatis-Plus中,Wrapper接口的实现类关系如下:

可以看到,AbstractWrapper和AbstractChainWrapper是重点实现,接下来我们重点看下AbstractWrapper以及其子类。说明:QueryWrappe...

2020-10-14

使用mybatis-plus的insert方法遇到的问题及解决方法(添加时id值不存在异常)

mybatis在持久层框架中还是比较火的,一般项目都是基于ssm。虽然mybatis可以直接在xml中通过SQL语句操作数据库,很是灵活。但正其操作都要通过SQL语句进行,就必须写大量的xml文...

2020-10-14

浅谈MyBatis-Plus学习之Oracle的主键Sequence设置的方法

一、Oracle的主键Sequence设置简介
在Oracle数据库中不支持主键自增策略,它是通过Sequence序列来进行完成的,因此需要在MP中进行相关配置二、相关配置如下
2.1、pom.xml 添加...

2020-10-14

MyBatisPlus中使用or()和and()遇到的问题及细节处理

在项目中使用MyBatisPlus中的or()查询时由于误用,导致查询数据不对,仅作记录。
写法一:LambdaQueryWrapper<Task> queryWrapper = new QueryWrapper<Task>().lambda(); queryWr...

2020-10-14

Mybatis-Plus通用枚举的使用详解

解决了繁琐的配置,让 mybatis 优雅的使用枚举属性!修改表结构
ALTER TABLE `tb_user` ADD COLUMN `sex` INT ( 1 ) NULL DEFAULT 1 COMMENT '1-男,2-女' AFTER `deleted`;定义...

2020-10-14

java排查一个线上死循环cpu暴涨的过程分析

问题,打一个页面cpu暴涨,打开一次就涨100%,一会系统就卡的不行了。排查方法,因为是线上的linux,没有用jvm监控工具rim链接上去。只好用命令排查:top cpu排序,一个java进程cpu到50...

2020-10-14

mybatis-plus getOne和逻辑删除问题详解

1.getOne如果查询出的结果有多个,这时候会抛异常
这样就不用每次getOne的Wrapper后面还跟last(“limit 1”)2.@TableLogic就不用每次list查询的时候跟上 .eq(“deleted”,fal...

2020-10-14

mybatis-plus 表名添加前缀的实现方法

1、使用mybatis-plus自身的查询构造去,只需要在全局配置中添加如下配置
mybatis-plus: mapper-locations: classpath:mappers/*Mapper.xml # mapper映射文件 global-config:...

2020-10-14

java 实现多个list 合并成一个去掉重复的案例

我就废话不多说了,大家还是直接看代码吧~ public static void main(String[] args){ List<Integer> list1 = new ArrayList<Integer>(); list1.add(1); list1.add(2...

2020-10-14

利用Lambda表达式创建新线程案例

代码public class LamdaDemo{ public static void main( String[] args ) { Runnable task = () -> { String threadName = Thread.currentThread().getName(...

2020-10-14

Java实现多线程轮流打印1-100的数字操作

首先打印1-100数字如果用一个单线程实现那么只要一个for循环即可,那么如果要用两个线程打印出来呢?(一个线程打印奇数,一个线程打印偶数)于是大家会想到可以通过加锁实现,但是这样...

2020-10-14

Java多线程通信:交替打印ABAB实例

使用wait()和notify()实现Java多线程通信:两个线程交替打印A和B,如ABABABpublic class Test { public static void main(String[] args) { final PrintAB print = new Pri...

2020-10-14

MybatisPlus中的删除和逻辑删除及区别介绍

删除又分为逻辑删除和物理删除,那么它们有什么区别呢?
物理删除:真实删除,将对应数据从数据库中删除,之后查询不到此条被删除数据。
逻辑删除:假删除,将对应数据中代表是否被删除字...

2020-10-14

springboot+mybatis配置控制台打印sql日志的方法

此处项目环境为简单的springboot+mybatis环境。可查看到上一篇文章搭建的简单springboot+mybatis的项目
想要控制台打印sql日志。只需要在resources目录下添加logback.xml文...

2020-10-14

mybatis-plus分页查询的实现示例

按照官方文档进行的配置:快速开始|mybatis-plus引入依赖:
<!-- 引入mybatisPlus -->   <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot...

2020-10-14

Springboot实现多线程注入bean的工具类操作

场景: 使用springboot多线程,线程类无法自动注入需要的bean解决方法: 通过工具类获取需要的bean工具类代码:import org.springframework.beans.BeansException;import org.sprin...

2020-10-14

MyBatis-Plus Generator配置详解

本文仅对使用MyBatis-Plus的代码生成器配置做保存,适合使用了该插件的童鞋做参考。
内部有大量默认配置,有性趣的童鞋可以研究下源码。
ps:官方文档更齐全http://mp.baomidou.c...

2020-10-14

Mybatis plus 配置多数据源的实现示例

记得面试时候,有面试官会问道,你们多数据源是怎么实现的呀。.......,一阵蒙蔽中,然后说道我们之前项目中,没有用到多数据源。所幸,目前做得项目中有一个业务逻辑中,用到多个数据库...

2020-10-14

解决SpringBoot2多线程无法注入的问题

1、情况描述使用springboot2多线程,线程类无法实现自动注入需要的bean,解决思路,通过工具类获取需要的bean如下package com.ps.uzkefu.apps.ctilink.handler; import com.baomi...

2020-10-14

mybatis 根据id批量删除的实现操作

第一种,直接传递给mapper.xml 集合/数组形式<delete id="deleteByLogic" parameterType = "java.util.List"> delete from user where 1>2 or id in <foreach collec...

2020-10-14

Spring Cloud Admin健康检查 邮件、钉钉群通知的实现

本文主要介绍了Spring Cloud Admin的使用,分享给大家,具体如下:源码地址:https://github.com/muxiaonong/Spring-Cloud/tree/master/cloudadminAdmin 简介官方文档:What is Sprin...

2020-10-14

SpringBoot中时间类型 序列化、反序列化、格式处理示例代码

【SpringBoot】 中时间类型 序列化、反序列化、格式处理Dateyml全局配置spring: jackson: time-zone: GMT+8 date-format: yyyy-MM-dd HH:mm:ss #配置POST请求Body中Date时...

2020-10-14

详解Java 反射和反射的应用场景

反射机制介绍JAVA 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态...

2020-10-14

为什么Java开发需要配置环境变量

之前学习 Java 的时候,感觉最难做的一件事情就是配置 jdk 的环境。那叫一个困难啊,Path, JAVA_HOME, CLASSPATH 印象深刻的很…(但是现在 JDK11 不用再配置 classpath 了,jre 和...

2020-10-14

Spring Boot 集成 Sharding-JDBC + Mybatis-Plus 实现分库分表功能

一、 Sharding-jdbc简介“Sharding-jdbc是开源的数据库操作中间件;定位为轻量级Java框架,在Java的JDBC层提供的额外服务。它使用客户端直连数据库,以jar包形式提供服务,无需额外...

2020-10-14

解决SpringBoot jar包中的文件读取问题实现

前言
SpringBoot微服务已成为业界主流,从开发到部署都非常省时省力,但是最近小明开发时遇到一个问题:在代码中读取资源文件(比如word文档、导出模版等),本地开发时可以正常读取...

2020-10-14

Java Math.round(),Math.ceil(),Math.floor()的区别详解

Math.round() “四舍五入”,
小数点后第一位<5 正数:Math.round(11.46)=11 负数:Math.round(-11.46)=-11小数点后第一位>5 正数:Math.round(11.68)=12 负数:Math.round(-11.6...

2020-10-14

浅析Java 对象引用和对象本身

示意图应用场景1.赋值2.方法入参3.调用方法和被调用方法代码import com.alibaba.fastjson.JSONObject;import java.util.ArrayList;import java.util.List;import org.slf4j...

2020-10-14

这一次搞懂Spring事务是如何传播的

前言上一篇分析了事务注解的解析过程,本质上是将事务封装为切面加入到AOP的执行链中,因此会调用到MethodInceptor的实现类的invoke方法,而事务切面的Interceptor就是Transactio...

2020-10-14

mybatisplus报Invalid bound statement (not found)错误的解决方法

搭建项目时使用了mybatisplus,项目能够正常启动,但在调用mapper方法查询数据库时报Invalid bound statement (not found)错误。以下为项目配置pom文件<dependency> <groupId>c...

2020-10-14

浅析JDBC的使用方法

1.使用步骤: 导包 加载驱动类class.forName(....) DriverManager获取sql对象 写sql语句 Statement与prepareStatement不一样的执行sql语句,前者是直接sql对象 . 执行语句...

2020-10-14

这一次搞懂Spring事务注解的解析方式

前言事务我们都知道是什么,而Spring事务就是在数据库之上利用AOP提供声明式事务和编程式事务帮助我们简化开发,解耦业务逻辑和系统逻辑。但是Spring事务原理是怎样?事务在方法...

2020-10-14

idea项目文件夹横向显示,纵向显示的解决方法

昨天装了IDEA,版本为IntelliJ IDEA 2020.1.1 x64
打开之后出现了下图中的问题解决步骤很简单1.先关闭IDEA
2.删除项目文件夹下的.idea文件夹
3.再重新打开IDEA,重新打开项目...

2020-10-14

JAVA抽象类及接口使用方法解析

抽象类可以有自己的成员变量,继承抽象类的对象共用成员变量,也可以修改成员变量的值。可以有非抽象的方法。接口只能有static final的成员变量(一般不使用),只能有抽象的方法。pu...

2020-10-14

这一次搞懂Spring代理创建及AOP链式调用过程操作

前言AOP,也就是面向切面编程,它可以将公共的代码抽离出来,动态的织入到目标类、目标方法中,大大提高我们编程的效率,也使程序变得更加优雅。如事务、操作日志等都可以使用AOP实现...

2020-10-14

Spring bean为什么默认是单例

熟悉Spring开发的朋友都知道Spring提供了5种scope分别是singleton、prototype、request、session、global session。如下图是官方文档上的截图,感兴趣的朋友可以进去看看这五...

2020-10-14

Spring IOC原理补充说明(循环依赖、Bean作用域等)

前言通过之前的几篇文章将Spring基于XML配置的IOC原理分析完成,但其中还有一些比较重要的细节没有分析总结,比如循环依赖的解决、作用域的实现原理、BeanPostProcessor的执行...

2020-10-14

SpringData Repository Bean方法定义规范代码实例

本节主要介绍Repository Bean中方法定义规范。1、方法不是随便声明,需要符合一定的规范。2、按照Spring Data的规范,查询方法以find|read|get开头,涉及条件查询时,条件的属性用...

2020-10-14

解决在Idea 2020.2下使用 Lombok的注解不生效的问题(插件安装了,依赖也写了,自动注解也设置了)

如题必要条件都有但还是不能生效虽然不是灰色,但是还是可以看到上面的导包是灰色的,并且没有任何报错。
而且可以看到上面正常正确的类是有图标的,但是Test这个类没有。在其他...

2020-10-14

解决idea2020.1 用gitee push推送被拒绝的原因(亲测有效)

出现问题截图出现问题的原因原因是仓库里有文件了,我们推送新的项目的时候造成了冲突,仓库已经有主人了;原因一般是因为我们本地的项目一致没有和远程仓库接触过。(通俗理解,我不...

2020-10-14

这一次搞懂Spring自定义标签以及注解解析原理说明

前言在上一篇文章中分析了Spring是如何解析默认标签的,并封装为BeanDefinition注册到缓存中,这一篇就来看看对于像context这种自定义标签是如何解析的。同时我们常用的注解如:@...

2020-10-14

mybatis-plus主键生成策略

MP 支持多种主键策略 默认是推特的“” 雪花算法“” ,也可以设置其他策略下面我演示主键策略使用MP的主键定义在一个一个枚举类中 源码如下public enum IdType { AUTO(0),/...

2020-10-14

Idea配置超详细图文教程(2020.2版本)

Idea配置(2020.2版本)1、Idea 设置字体2、Idea配置Maven3、不区分大小写4、自动导包功能及相关优化功能5、自动编译6、多行显示7、单词拼写检查8、idea中 类中显示成员变量和...

2020-10-14

JAVA线上常见问题排查手段汇总

在平时开发过程中,对于线上问题的排查以及系统的优化,免不了和Linux进行打交道。每逢大促和双十一,对系统的各种压测性能测试,优化都是非常大的一次考验。抽空整理了一下自己在...

2020-10-14

mybatis-plus实体类主键策略有3种(小结)

mybatis plus 实体类主键策略有3种( 注解 > 全局 > 默认 )当IdType的类型为ID_WORKER、ID_WORKER_STR或者UUID时,主键由MyBatis Plus的IdWorker类生成,idWorker中调用了分布式唯...

2020-10-14
返回顶部
顶部