Java框架

提供java开源框架学习,主要包括Spring、SpringMVC、Mybatis、Hibernate等企业主流技术,帮助学生快速掌握java框架技术。

最新文章

Mybatis Datetime日期类型返回Json数据格式化处理

Mybatis Datetime日期类型返回Json数据格式化处理

在我们使用Mybatis开发时,针对数据库Datetime日期类型或者Timestamp日期类型时,在Mapper映射为Domain实体并通过@ResponseBody转为json格式的数据返回时,我们会发现,日期类型数据往往不是我们想要的格式,我们需要对其统一做格式化处理。一、问题阐述首先,Java潘老师带大家看下问题产生的情形:1)数据库日期字段类……

潘老师 1周前 (09-10) 33 ℃ (0)(1)

Quartz定时任务通过SimpleTrigger指定时间的间隔实现

Quartz定时任务通过SimpleTrigger指定时间的间隔实现

最近有个同学咨询关于Quartz框架定时任务的问题,但他不是使用的cron方式实现指定时间间隔执行某个代码逻辑,而是使用的是SimpleTrigger的方式来实现的。之前潘老师也只用过cron注解配置的方式实现过,SimpleTrigger定时执行某个方法还真没试过,但好在最后成功解决了他的bug,因此也趁这个机会整理下关于SimpleTrigger的实现Q……

潘老师 2周前 (09-07) 49 ℃ (0)(1)

IDEA+SpringBoot整合Swagger2实现自动创建API接口文档详解

IDEA+SpringBoot整合Swagger2实现自动创建API接口文档详解

一、传统维护API文档缺点当下很多公司都采取前后端分离的开发模式,前端和后端的工作由不同的开发人员完成。在这种开发模式下,维护一份及时更新且完整的REST API文档将会极大的提高我们的工作效率。传统意义上的文档都是后端开发人员手动编写的,相信大家也都知道这种方式很难保证文档的及时性,长期以往这种文档也就会失去其参考意义,反而还会加大前后端之间的沟通成本,……

潘老师 2个月前 (08-02) 211 ℃ (0)(2)

MyBatis-Plus的saveBatch批量插入为何效率很低,耗时很长,怎么解决?

MyBatis-Plus的saveBatch批量插入为何效率很低,耗时很长,怎么解决?

由于项目是使用MyBatis-Plus开发的,用起来也确实比较方便,尤其是service层封装好的一些通用的增删改查方法,省去了不少sql语句的书写,但是在开发过程中,我也发现MyBatis-Plus的saveBatch批量插入方法针对MySQL和Oracle数据库可能会出现效率贼低的情况,下面我们先具体来说说产生的原因是什么。一、MySQL数据库针对M……

潘老师 2个月前 (07-14) 701 ℃ (0)(6)

SpringBoot整合spring-retry组件实现重试机制

SpringBoot整合spring-retry组件实现重试机制

一、重试机制当我们调用一个接口时可能由于网络不稳定或网络抖动等原因造成第一次请求失败的情况,当我们再去尝试就成功了,这就是重试机制,其主要目的就是要尽可能地提高请求成功的概率,但一般情况下,我们请求第一次失败,代码运行就抛出异常结束了,如果想再次请求可能还需要手工操作,这非常地不方便,可行性也不佳。因此,Spring框架提供了对重试机制支持,并且在Spri……

潘老师 3个月前 (06-23) 360 ℃ (0)(3)

SpringBoot如何使用Undertow容器代替Tomcat

SpringBoot如何使用Undertow容器代替Tomcat

最近开发项目,顺丰那边人要求把SpringBoot中的Tomcat服务器替换为Undertow容器,我也是第一次听说这个容器,平时都是Tomcat用的多,既然听说了,那就要研究下,不然岂不是很可惜?毕竟既然说替换,那其必然有相对Tomcat在某些方面具备更大的优势。哈哈,好了,切入正题,我们都知道Spring Boot内嵌容器默认启动的都是Tomcat,但是……

潘老师 3个月前 (06-17) 347 ℃ (0)(3)

SpringBoot项目实现接口参数校验(含分组校验)与全局异常处理

SpringBoot项目实现接口参数校验(含分组校验)与全局异常处理

我们在开发SpringBoot项目时,有时候需要对外提供接口,对外暴露的接口在接收到请求参数时,我们无法保障参数是否满足我们的需求,比如是否为空、是否长度太长等等,如果我们自己手工一个个属性去校验,那将是非常的麻烦,因此,我们可以使用一些校验框架帮助我们实现改过程,如果存在不符合规则的属性,我们可以示使用全局异常来进行统一处理。下面,潘老师给大家实现一个案例……

潘老师 3个月前 (06-17) 329 ℃ (0)(3)

IDEA使用Log4j2后Console控制台日志打印没有彩色效果

IDEA使用Log4j2后Console控制台日志打印没有彩色效果

在开发过程中,发现IDEA使用SpringBoot整合Log4j2后Console控制台日志打印没有彩色效果,看上去很不爽,完全没有区分度,具体效果如下:原因分析:IDEA控制台没有打印彩色日志的主要原因在于Log4j 2.10版本以后Log4j2默认关闭了Jansi(一个支持输出ANSI颜色的类库)解决步骤:我们采用两个步骤解决该问题:1)打开……

潘老师 3个月前 (06-15) 456 ℃ (0)(1)

SpringBoot如何整合Log4j2实现日志记录

SpringBoot如何整合Log4j2实现日志记录

在java项目开发中,日志记录是必不可少的,详细且具体的日志记录对于日后的bug漏洞追踪及维护具有事半功倍的效果,而目前比较流行的主要架构就是SpringBoot+Log4j2来实现日志记录。下面我们来详细了解下如何使用SpringBoot整合Log4j2以及为什么选择Log4j2。一、常用日志框架类型1)java.util.logging:是JDK在1……

潘老师 3个月前 (06-15) 357 ℃ (0)(0)

如何单独使用OpenFeign实现HTTP请求接口调用

如何单独使用OpenFeign实现HTTP请求接口调用

关于什么是OpenFeign在讲Spring Cloud时的文章中介绍过,具体可以参考(21到24小节):不过以上对OpenFeign的使用都是基于Spring Cloud整合之后的,如果我们想单独使用OpenFeign来实现HTTP请求调用第三方接口,我们该如何去实现呢?这里我们的举列应用场景就是实现一个java项目(非web项目),封装底层http请求……

潘老师 3个月前 (06-15) 535 ℃ (0)(0)