Java:@SpringApplicationConfiguraction和@WebIntegrationTest在Spring Boot中不能使用的解决方案

@SpringApplicationConfiguraction和@WebIntegrationTest解决方案

在Spring Boot 1.5.7 中@SpringApplicationConfiguraction和@WebIntegrationTest中不能使用了.

找了半天总算找到了解决方案.

记录如下.

java标志

源码

如果在Spring Boot中使用了Spring Security,并且使用了自定义UserDetails,在测试的时候需要使用如下方式:

Java:使用Spring Mail发送邮件

发送邮件

本项目源码在:https://coding.net/u/pruidong/p/SpringEmailDemo/git

之前简单使用过Java Email发送邮件,但最近接触了Spring Mail组件之后,发现在之前的基础上更加方便了.本文的内容参照了:Spring Mail官方文档,以及Thymeleaf官方示例.但对部分内容进行了修改和优化,也使得发送邮件变得更加简单.

有两点需要说明的是:

  1. 本文不会贴完所有的资源,可以前往[项目地址]获取所有源码;
  2. 项目基于Maven构建,并且不需要Spring Web MVC(也就是不需要在Tomcat中运行),配置相关邮箱信息之后,直接在控制台运行即可
Spring Mail发送邮件项目结构图
Spring Mail发送邮件项目结构图

部分源码

直接使用下面的源码无法构建出完整项目,因为有部分图片、模板文件(HTML,txt)未贴出,贴出下面的代码,仅作为参考依据.完整源码可以访问项目地址

Maven依赖文件(pom.xml):

java标志

配置邮箱地址、邮箱服务器信息(base.properties):

Spring的配置文件(AppInitial.java):

发送纯文本邮件(未使用模板,SendTextEmail.java):

发送带附件的邮件(SendFileEmail.java):

使用Thymeleaf发送模板邮件(参照了Thymeleaf官方示例,有部分改动):

运行测试类(Main.java):

到此.

Java:DOM4J解析带命名空间的XML

XML解析

在Java中,XML有多种方式可以解析.但用的比较多的还是DOM4J,对于带命名空间的XML解析,DOM4J官网并没有提供例子.下面的工厂类来自网络,我只是在其中增加了几个方法.另外,下面代码基于jdk1.8.

解析所使用的XML源文件:

java

源码

Vue:切换class模拟实现tab

实现个切换

其实就是翻译了jQuery的removeClass和addClass,只是在Vue里面使用了变量去切换.

vuejs logo

运行效果

vuejs tab 运行效果

源码

源码比较简单,引用了bootcss的cdn服务.

JdbcTemplate:实现分页功能

实现分页

在数据多的时候,不分页JVM就会挂掉.由于是用的JdbcTemplate,所以就研究了下JdbcTemplate的分页.记录如下.

java

源码

部分代码,后面看时间更新为完整.

分页实体类:

生成分页的SQL语句:

InterSystems Cache 数据库的分页工具类(下面有MySQL的):

分页查询组件:

MySQL分页实现:

Oracle分页实现: