1、用惯了idea,会觉得Eclipse质感较low。webstrom和idea界面美感和功能真香。下面先介绍几个自己也在用的插件,留名备份
1.1 lombok与swagger插件
setting — plugins 搜索lombok,安装重启。pom文件添加依赖就能用了。
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<!--swagger2-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
注解开发@Data@Builder@AllArgsConstructor@NoArgsConstructor 包含了全参构造、无参构造、builder、set、get、tostring等方法,基本将模型中需要用到的方法全覆盖。如何使用百度下,不必多说。
swagger2的用法(接口注解、可视化ui)
1.2 hibernate-validator参数校验
这些校验规则注解是在JSR 303(java)规范中定义的,但是JSR 303只是一个规范,并没有很多比较具体的实现。目前通常都是使用hibernate-validator进行统一参数校验,hibernate-validator是对JSR 303规范的实现。
<!-- spring-boot-start-web中已集成,在使用其他框架时自己选择是否需要加入--->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.2.4.Final</version>
</dependency>
1.3 Rainbow Brackets 多色的花括号(还是有点用的)
1.4 Maven Helper
直接打开pom文件,即可查看依赖数,自动分析jar包是否存在冲突
1.5 Jackson 用于序列化与反序列化
SpringBoot默认是使用Jackson作为JSON数据格式处理的类库,Jackson在各方面都比较优秀,且不需要导包。
反序列化:在客户端将请求数据上传到服务端的时候,自动的处理JSON数据对象中的字符串、数字,将其转换为包含Date类型、Integer等类型的对象。
序列化:按照指定的格式、顺序等将实体类对象转换为JSON字符串
1.6 Free Mybatis Plugin: mybatis xml id与接口间跳转
1.7 常用的Utils工具类
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
</dependency>
1.8 Mybatis Log Plugin: 快速打印SQL语句
1.9 Alibaba Java Coding Guidelines: 阿里巴巴开发规范
https://github.com/alibaba/p3c
1.10 RestfulToolkit: 快速定位controller层接口、接口测试
1.11 CodeGlance: vscod右侧代码地图
2 配置文件写入与读取
2.1 加载全局配置
spring boot 会在启动初—run()—prepareEnvironment(准备环境)—configureEnvironment(配置环境)—configureProfiles(配置文件)—从load完成的配置文件中读取,默认只有一个全局配置文件:application.yml或application.properties
2.2 配置文件的位置决定读取优先级 —1位置的配置优先级最高
2.3 使用@ImportResource加载Spring的xml配置文件(可用于解决过滤器初始化阶段bean对象注入)
在spring boot应用入口启动类上加@ImportResource(locations = {“classpath:beans.xml”})
在没有Spring注解的时代,spring的相关配置都是通过xml来完成的,如:beans.xml。下面的XML配置的含义是:将com.asky.servicesDemo.service.TestBeanService实例化并注入到Spring上下文环境中。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="testBeanService" class="com.zimug.bootlaunch.service.TestBeanService"></bean>
</beans>
2.4 SpringBoot整合Netflix Archaius实现配置管理
Archaius 开发指南 https://github.com/Netflix/archaius/wiki/Users-Guide
引入依赖Jar包
<dependency>
<groupId>com.netflix.archaius</groupId>
<artifactId>archaius-core</artifactId>
<version>0.7.6</version>
</dependency>
动态读取配置项
private DynamicStringProperty hello = DynamicPropertyFactory.getInstance().getStringProperty("student.age","zhangSan");
配置config.properties
student.age=18
不重启即可完成配置项动态修改