SSM框架中常用注解
Mybatis常用注解
@Param就是将接口的参数中与@Select注解中的字段进行对应
在@Insert执行完之后通过@SelectKey获取最近插入的主键的编号
Spring常用注解
例:Component(value=”role”)
@Component代表Spring IOC会把这个类扫描生成Bean实例,而其中的value属性代表这个类在Spring中的id,这就相当于xml方式定义的Bean的id, 也可以简写成@Component(“role”),甚至可以直接写成@Component,不写的就为默认类名,且首字母以小写的形式作为id
@Value代表的是值的注入,即为属性注入相应的值
@ComponentScan代表进行扫描,默认是扫描当前包的路径,存在着两个配置项,第一个是basePackages,意味着它可以配置一个Java包的数组,Spring会根据它的配置扫描对应的包和子包,将配置好的Bean装配进来,第2个是basePackageClasses,意味着可以配置多个类,Spring会根据配置的类所在的包,为包和子包进行扫描装配对应配置的Bean。
@Autowired
@Primary
@Primary代表首要的,当SpringIOC通过一个借口或者抽象类注入对象的时候,由于存在多个实现类或者具体类,就会犯糊涂,不知道采用哪个类注入为好。注解@Primary则是告诉Spring IOC容器,请优先使用该类注入
@Qualifier
@Bean
以上都是通过@Component装配Bean,但是@Component只能注解在类上,不能注解到方法上,注解@Bean可以注解到方法上,并且将方法返回的对象作为Spring的Bean,存放在IOC容器中
@Scope
@Scope注解用于指定Bean的作用范围
单例(singleton):它是默认的选项,在整个应用中,spring只为其生成一个Bean的实例
原型(prototype):当每次注入,或者通过springIOC容器获取Bean时,spring都会为它创建一个实例
会话(session):在web应用中使用,就是在会话过程中spring只创建一个实例
请求(request):在web应用中,就是在一次请求中spring会创建一个实例,但是不同的请求会创建不同的实例
SpringMVC常用注解
URL Mapping注解
@RequestMapping-通用绑定
@GetMapping-绑定Get请求
@PostMapping-绑定Post请求
利用@RequestParam为参数设置默认值