各种注解功能

SpringBoot推荐 => 注解代替配置文件

Spring注解
@Transactional				//事务注解  (标注到Service方法上,表示数据库 curd操作必须全部完成,否则回滚)
@Configuration				//注解代替Spring配置Spring注解,标记类后当前类成配置类,当前类的@Bean注解
@Component					//声明一个 组件  会被注入到 IOC容器中
@Value						//从配置文件中取值
@SpringBootApplication		//标注一个springboot应用
@Bean						//注入JavaBean
@service  					//声明服务层
@Repository					//
@Autowired					//自动装配 (不推荐使用)
@EnableAutoConfiguration//SpringBoot自动配置(auto-configuration):尝试根据你添加的jar依赖自动配置你的Spring应用
controller
@PostMapping
@GetMapping
@PutMapping
@DeleteMapping   
@RequestMapping(value = "/getUsers", method = RequestMethod.GET)@RequestMapping(/path”)表示该控制器处理所有“/path”的UR L请求。RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。
用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。该注解有六个属性:
params:指定request中必须包含某些参数值是,才让该方法处理。
headers:指定request中必须包含某些指定的header值,才能让该方法处理请求。
value:指定请求的实际地址,指定的地址可以是URI Template 模式
method:指定请求的method类型, GET、POST、PUT、DELETE等
consumes:指定处理请求的提交内容类型(Content-Type),如application/json,text/html;
produces:指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回
    
    
@Restcontroller(包含@Controller@ResponseBody)  标注控制层    @ResponseBody	 表示该方法的返回结果直接写入HTTP response body	
@ResponseBody:标记在类上,表示类下所有方法返回一条语句给网站,    
    
    

/*获取参数 三个注解*/    
@PathVariable 	– 从url取值(RESTFUL风格)		
@RequestMapping("/submit/{Id}")											
public void submitModifyArticle(@PathVariable("id") String id){}   


/*接收请求 url中的参数  和  请求体中 Content-Type 为 application/x-www-form-urlencoded 编码的内容*/
@RequestParam	用在方法的参数前面。

    
    
/*一般用在POST 和 PUT方法中  不可用在GET中*/
@RequestBody      /*数据在application/x-www-form-urlencoded数据   Params和form-data中不可获取到*/
Mapper注解
@MapperScan("com.rock.lejiajia.**.mapper")	//扫描Mapper接口 省去@Mapper接口
@Mapper      								//声明Mapper接口
@Param("page")								//声明传入xml中参数的名称
Oauth及Spring Security注解
@EnableAuthorizationServer     //开启Oauth授权服务器
@EnableResourceServer			//Oauth资源服务器  (访问该项目接口时需要令牌)
@EnableWebSecurity				//开启web安全
Lombok注解
@UtilityClass  //所有的方法和属性都会加上static 关键字
@Getter	@Setter //生成get	set方法
@Data 			//注在类上,提供类的get、set、equals、hashCode、canEqual、toString方法
@AllArgsConstructor //注在类上,提供类的全参构造
@NoArgsConstructor  //注在类上,提供类的无参构造
@Accessors(chain=true)//开启链式编程
@Accessors(fluent = true)//调用get、set方法时不用不带set和get前缀   如 User user=new User().age(31).name("pollyduan");
@Accessors(prefix = "N") // set方法忽略指定前缀  如 user.setame("pollyduan");
Swagger注解
@EnableSwagger2									//开启Swagger
@ApiOperation(value = "根据专题名称分页获取专题")	//作用在Controller方法上面 说明接口的作用
@ApiModelProperty("商品名称")					//作用在属性上 说明字段含义
@EnableKnife4j								 // 开启knife4j文档   地址: http://localhost:6500/doc.html

Spring验证注解
@Null  //被注释的元素必须为null
@NotNull  //被注释的元素不能为null
@AssertTrue  //被注释的元素必须为true
@AssertFalse  //被注释的元素必须为false
@Min(value)  //被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@Max(value)  //被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@DecimalMin(value)  //被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@DecimalMax(value)  //被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@Size(max,min)  //被注释的元素的大小必须在指定的范围内。
@Digits(integer,fraction)  //被注释的元素必须是一个数字,其值必须在可接受的范围内
@Past  //被注释的元素必须是一个过去的日期
@Future  //被注释的元素必须是一个将来的日期
@Pattern(value) //被注释的元素必须符合指定的正则表达式。
@Email //被注释的元素必须是电子邮件地址
@Length //被注释的字符串的大小必须在指定的范围内
@NotEmpty  //被注释的字符串必须非空
@Range  //被注释的元素必须在合适的范围内
数据库注解
@EnableCaching  //开启基于注解的缓存
@Cacheable
/*cacheNames/value :用来指定缓存组件的名字
key :缓存数据时使用的 key,可以用它来指定。默认是使用方法参数的值。(这个 key 你可以使用 spEL 表达式来编写)
keyGenerator :key 的生成器。 key 和 keyGenerator 二选一使用
cacheManager :可以用来指定缓存管理器。从哪个缓存管理器里面获取缓存。
condition :可以用来指定符合条件的情况下才缓存
unless :否定缓存。当 unless 指定的条件为 true ,方法的返回值就不会被缓存。当然你也可以获取到结果进行判断。(通过 #result 获取方法结果)
sync :是否使用异步模式。*/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值