java
程序员AZ
这个作者很懒,什么都没留下…
展开
-
全局异常处理类之@RestControllerAdvice
RestControllerAdvice是一个组合注解,由@ControllerAdvice,@ResponseBody组成,@ControllerAdvice又继承了@Component,因此@RestControllerAdvice本质上是个Component,用于定义@ExceptionHandler,@InitBinder和@ModelAttribute方法,适用于所有使用@RequestMapping方法.当与@RestControllerAdvice配合使用时,用于全局处理控制器里的异常。原创 2022-09-05 20:15:00 · 571 阅读 · 3 评论 -
参数验证之@Valid
Valid注解用于接口参数验证.在参数前加此注解后,再配合参数类中的注解,当不符合要求时就会在方法中返回message的错误提示信息.原创 2022-09-01 20:15:00 · 790 阅读 · 0 评论 -
接口返回Long类型数据,前端丢失精度解决办法
接口返回Long类型数据,前端丢失精度解决办法,在实体类丢失精度的字段上使用@JsonSerialize(using = ToStringSerializer.class)注解就可以将Long类型的数据返回为String类型,使前端得到不丢失精度的数据.引入import com.fasterxml.jackson.databind.annotation.JsonSerialize;import com.fasterxml.jackson.databind.ser.std.ToStringSeriali原创 2022-05-12 22:45:00 · 625 阅读 · 0 评论 -
多线程三个特性、事务的四个特性、事务的隔离级别
多线程三个特性是原子性(Atomicity)、可见性(Visibility)、有序性(Ordering)原子性:指事务的不可分割性,一个事务的所有操作要么不间断地全部被执行,要么一个也没有执行,就是线程的原子性。可见性:多个线程共享同一个变量时,其中一个线程修改了变量,其它的线程必须立即得知并获取了最新的变量值,就是线程的可见性。有序性:程序执行的顺序,是按照代码的顺序依次执行的,就是线程的有序性。事务的四个特性是原子性(Atomicity)、一致性(Consistency)、隔离性(I原创 2022-05-12 22:45:00 · 764 阅读 · 0 评论 -
LocalDateTime两个时间相差的天数,小时数,分钟数,毫秒数
计算两个LocalDateTime类型时间的相差天数,小时数,分钟数,毫秒数主要用到Duration类的between方法进行时差计算其次用到Duration类的toDays方法转换天数,小时数,分钟数,毫秒数测试代码如下: public static void main(String[] args) { LocalDateTime start = LocalDateTime.of(2022, 5, 7, 1, 1); LocalDateTime end =原创 2022-05-07 22:30:00 · 21014 阅读 · 0 评论 -
工厂模式+策略模式+Spring后置处理器
模拟实现考试试题处理逻辑,试题方式,01:手动选题;02:顺序抽题;03:随机抽题1.创建一个策略接口public interface ITestQuestions { /** * 获取试题 * * @param paperId 试卷管理表Id * @return 试题数据 */ List<TestQuestionsVO> listTestQuestions(Long paperId);}2.创建一个工厂类public class TestQuestions原创 2022-05-07 21:15:00 · 105 阅读 · 0 评论 -
LocalDateTime获取当天,前一周,本月开始时间和结束时间
当天开始时间和结束时间//当天开始时间和结束时间 打印结果-->开始时间:2021-12-29T00:00 结束时间:2021-12-29T23:59:59.999999999LocalDateTime startDateTime = LocalDateTime.of(LocalDate.now(), LocalTime.MIN);LocalDateTime endDateTime = LocalDateTime.of(LocalDate.now(), LocalTime.MAX);Syste原创 2021-12-29 20:38:22 · 6519 阅读 · 0 评论 -
关于Example查询条件IN超过1000条报错问题解决
关于Example查询条件IN超过1000条报错问题解决Example example = new Example(B.class);//把需要查询使用的条件list分成每1000条为一个小list的集合List<List<String>> partition = Lists.partition(idList, 1000);//循环集合用or拼接条件形成(id in 1,2,3... or id in 1001,1002,1003...)for (List<Strin原创 2020-11-04 16:29:59 · 1037 阅读 · 0 评论