Spring Boot中部分注解的作用

spring boot中部分注解的作用

这一节主要是对前面项目中的部分注解的作用进行解析。使用注解可以免去复杂的xml配置文件,使代码写起来更加方便。

首先是看一下启动类Application.java里面的注解@SpringBootApplication、@MapprerScan

@SpringBootApplication注解等同与使用@Configuration、@EnableAutoConfiguration和@CommponentScan及其默认属性
@EnableAutoConfiguration:启用Spring Boot的自动配置机制
@ComponentScan:在应用程序所在的包上启用@Component扫描
@Configuration:允许在上下文中注册额外的bean或导入额外的配置类

@MapperScan在Spring Boot整合Mybatis中,可以在mapper接口中添加@Mapper注解,将mapper注入到spring中,但是在每个mapper中都加入@Mapper注解会很麻烦,这时候就可以用@MapperScan注解来扫描包

经测试发现,@MapperScan注解只会扫描包中的接口,不会扫描类,所以可以在包中写Provider类。

@MapperScan(“com.demo.mapper”):扫描指定包中的接口

@MapperScan("com.demo..mapper"):一个代表任意字符串,但只代表一级包,比如可以扫到com.demo.aaa.mapper,不能扫到com.demo.aaa.bbb.mapper

@MapperScan(“com.demo.**.mapper”):两个*代表任意个包,比如可以扫到com.demo.aaa.mapper,也可以扫到com.demo.aaa.bbb.mapper

再看一下UsrController.java里面@RestController、@RequestMapping、@AutoWired、@ResponseBody、@AutoWirred

@RestController:它是作为一个Web@Controller存在的,用于专门接受传入的Web请求。

@RequestMapping:它提供了“路由”信息。如代码里面,它会告诉spring,任何带有/path的HTTP请求都会映射到home方法上去。

@AutoWired:自动导入依赖的bean。byType方式。把配置好的Bean拿来用,完成属性、方法的组装,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。当加上(required=false)时,就算找不到bean也不报错。

@ResponseBody这个注解可以放在方法上用来指示这个方法,返回的值直接写到Http的响应体中,不需要替换为Spring的Model或者解析为视图

@AutoWired:自动导入依赖的bean。byType方式。把配置好的Bean拿来用,完成属性、方法的组装,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。当加上(required=false)时,就算找不到bean也不报错。

实体类User.java中的注解

@Entity:@Table(name=”“):表明这是一个实体类。一般用于jpa这两个注解一般一块使用,但是如果表名和实体类名相同的话,@Table可以省略

@Id:表示该属性为主键。

@GeneratedValue(strategy = GenerationType.SEQUENCE,generator = “repair_seq”):表示主键生成策略是sequence(可以为Auto、IDENTITY、native等,Auto表示可在多个数据库间切换),指定sequence的名字是repair_seq。

@Column 1、当实体的属性与其映射的数据库表的列不同名时需要使用@Column标注说明,该属性通常置于实体的属性声明语句之前,还可与 @Id 标注一起使用。
2、@Column 标注的常用属性是name,用于设置映射数据库表的列名。此外,该标注还包含其它多个属性,如:unique、nullable、length、precision等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值