Lombok注解
| 注解 | 意义 |
|---|---|
@Data | 包含了@Getter, @Setter, @ToString, @EqualsAndHashCode, 不包含全参构造和无参构造 |
@Getter | 生成Getter方法 |
@Setter | 生成Setter方法 |
@NoArgsConstructor | 无参构造 |
@AllArgsConstructor | 全参构造 |
@ToString | 重写toString方法 |
@ToString(exclude="column") | toString的时候不加入某个参数 |
@EqualsAndHashCode | 重写equals和hascode方法 |
@EqualsAndHashCode(exclude="column") | 重写equals和hascode方法 |
@EqualsAndHashCode(of="column") | 重写equals和hascode方法, 用column比较是否一致, exclude排除 ,of 只要 |
@Slf4j | logback, 直接调用log |
@Log4j | log4j, 直接调用log |
Maven环境隔离
- 本地开发环境(
Local) - 开发环境(
Dev) - 测试环境(
Beta) - 线上环境(
Prod)
在pom.xml中build节点增加
<resources>
<resource>
<directory>src/main/resources.${deploy.type}</directory>
<excludes>
<exclude>*.jsp</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
在pom.xml中增加profiles节点, 该节点和build节点同级
<profiles>
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault> <!--默认节点, 编译-->
</activation>
<properties>
<deploy.type>dev</deploy.type>
</properties>
</profile>
<profile>
<id>beta</id>
<properties>
<deploy.type>beta</deploy.type>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<deploy.type>prod</deploy.type>
</properties>
</profile>
</profiles>
新建对应的文件夹, 并把要隔离的文件分开, 公共的留下
打包
## P后面跟dev就是编译dev环境的配置文件, prod就是正式环境, 以此类推
mvn clean package -Dmaven.test.skip=true -Pdev