注解内容:
一. Spring注解实现IOC和AOP
- 注解方式将Bean的定义信息和Bean实现类结合在一起,Spring提供的注解有
- @Component :实现Bean组件的定义
在logger包下实现增强实现日志功能时
/**
* @author lyt
* 用户业务日志
*/
@Aspect
@Component
public class UserServiceLogger {
Logger logger = Logger.getLogger(UserServiceLogger.class);
}
- @Repository :用于标注DAO类
- @Service :用于标注业务类
- @Autowired注解实现Bean的自动装配,默认按类型匹配
- 使用@Qualifier指定Bean的名称
1)第一种方式
- @Resource注解实现组件装配,默认按名称匹配
@Resource的作用相当于@Autowired,均可标注在字段或属性的setter方法上。
@Autowired只按照byType 注入;@Resource默认按byName自动注入,也提供按照byType 注入;
二、注解定义前置增强和后置增强实现日志功能
使用注解方式定义切面可以简化配置工作量
- @Aspect:定义切面
- @Before:前置增强
- @AfterReturning:后置增强
- @After:最终增强
- @Around:定义环绕增强
- @AfterThrowing :异常抛出增强
- @PointCut:声明切点在java配置类中使用@EnableAspectJAutoProxy注解开启Spring对AspectJ代理的支持(注解在类上)。
三、Java配置类相关注解
@Configuration:声明当前类为配置类
@Bean:注解在方法上,声明当前方法的返回值为一个bean,替代xml中的方式
@ComponentScan:用于对Component进行扫描
四、注解驱动控制器
- @Controller:标注一个普通的JavaBean成为可以处理请求的控制器
- @RequestMapping:通过请求URL进行映射
五、Spring MVC
- Controller方法中参数前加@RequestParam进行直接入参
- 格式化注解@DateTimeFormat(pattern="yyyy-MM-dd")的使用 :设置对应日期属性的字符串格式
- @ModelAttribute:不仅仅和从页面中获取对象的所有属性,而且可以将对象放入request当中
- @PathVariable:对REST风格的支持
- @ResponseBody:是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON
- @RequestBody:接收的是一个Json对象的字符串,而不是一个Json对象