springboot~Compiler时开启插件的诠释效率

敞开build时的笺注

 “Settings > Build >
Compiler > Annotation Processors”

图片 1

接下来再设置lombok插件

图片 2

在档次里布置关于lombok的依赖项

compileOnly('org.projectlombok:lombok:1.16.20')

末尾就能够在代码中接纳lombok的笺注了

/**
 * 用户实体
 *
* @Data :注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
* @Setter:注解在属性上;为属性提供 setting 方法
* @etter:注解在属性上;为属性提供 getting 方法
* @og4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
* @oArgsConstructor:注解在类上;为类提供一个无参的构造方法
* @llArgsConstructor:注解在类上;为类提供一个全参的构造方法
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserInfo {
    @Id
    private String id;
    @NotNull
    private String name;
    private String email;
}

好了,启用插件申明就说到此地,谢谢阅读!

 

在上述所述的jar文件中定义了一多级的笺注,在那之中相比较重庆大学的是:

对于IJ这几个IDE工具以来,大家会设置一些插件来增派大家更好的进展付出,像lombok就是一款不错的插件,使用表明的格局在类型编写翻译时拉拉扯扯大家转移代码,像getter,setter,tostring等等,它们一般都以有的再一次的代码,而lombok正是赞助大家转变那个再度代码的,对于3个IJ的工具以来,若是您不运行编写翻译时申明作用,那么项目在build时会报错!

不过只要想让那么些评释真正行事,必须在布局文件扩张多少个常量的概念:

若果期望利用struts2的申明功效,必须选择三个包struts2-convention-plugin-2.1.8.1.jar,小编利用的环境是struts2.1.8.1。假诺你选择了不一致的本子,找名字就行。

  • @ParentPackage,那个注明对应了xml文件中的package节点,它唯有1本质量叫value,其实正是package的name属性;
  • @Namespace,命名空间,也正是xml文件中<package>的namespace属性;
  • @Action,这些表明对应<action>节点。这几个注明可以动用于action类上,也足以动用于艺术上。这一个阐明中有多少个属性:

    • value(),表示action的U逍客L,约等于<action>节点中的name属性;
    • results(),表示action的多个result;这一个脾气是2个数组属性,因而得以定义四个Result;
    • interceptorRefs(),表示action的五个拦截器。那些天性也是二个数组属性,由此得以定义八个拦截器;
    • params(),那是多少个String类型的数组,它根据name/value的花样协会,是传给action的参数;
    • exceptionMappings(),那是尤其属性,它是2个ExceptionMapping的数组属性,表示action的不胜,在利用时必须引用相应的拦截器;
  • @Result,这么些注明对应了<result>节点。那个注明只好选取于action类上。这几个注脚中也有几本天性:

    • name(),表示action方法的重回值,也便是<result>节点的name属性,暗中认可情状下是【success】;
    • location(),表示view层文件的岗位,能够是相对路径,也足以是相对路径;
    • type(),是action的类型,比如redirect;
    • params(),是三个String数组。也是以name/value方式传送给result的参数;

小编们领会常常状态下,Struts2是因此struts.xml配置的。但是随着系统规模的加大大家需求配备的文书会比较大,固然大家能够根据不相同的系统机能将不一样模块的配置文件单独书写,然后经过<include>节点将差别的安顿文件引入到终极的struts.xml文件中,不过到底依然要尊崇和管理这一个文件,因而也会给保卫安全工作拉动十分大的麻烦。为了化解那个题目,能够设想动用struts2的笺注。实际上struts第22中学最主要的定义正是package、action以及Interceptor等等概念,所以一旦了然这几个表明就足以了。

实在,struts第22中学的主要注明正是这一个,当然了,还有地点提到的@interceptorRef和@exceptionMapping;基本上,明白了那么些注脚就足以了。

如上八个常量都以协助功效的,为了让声明真正的干活,必须在布置文件中扩大<package>节点的布局,至少是<package name=”myPackage”
extends=”struts-default” />,那样申明就足以选择了。

  • struts.convention.default.parent.package:这一个常量表示缺省的包名是如何,因为在骨子里运用中,大家平时定义叁个缺省的包,这一个包中定义了第一次全国代表大会堆的拦截器等等,然后此外的包继承自这几个包。那些常量能够配也足以不配;
  • struts.convention.package.locators:那几个常量表示您的action类的java包的包名的后缀是什么:比如action。那一个常量也足以不配;
  • struts.convention.package.locators.basePackage:那一个常量表示你的action类的java包package的名字是啥;那一个常量也足以不配;

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图