Spring
注解
要记得在xml文件中添加context约束
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">还要记得加入context支持
<context:annotation-config/>使用component-scan扫描特定的包 使其中的注解生效
<context:component-scan base-package="com.example.demo"/>给容器中注入的注解
@Component:泛指各种组件
@Controller:控制层
@Service:业务层
@Repository:数据访问层
@Bean:导入第三方包里的注解
@Import(要导入到容器中的组件)
@Configuration:声明当前类为配置类
@ComponentScan:扫描配置
注入bean的注解
@Autowired:自动注入 可以用在变量,setter方法,构造函数上
@Inject 和 @Resource 都是自动注入
@Autowired、@Inject是默认按照类型匹配的,@Resource是按照名称匹配的
@Autowired如果需要按照名称匹配需要和@Qualifier一起使用 @Inject和@Name一起使用
@Primary:让spring进行自动装配的时候,默认使用首选的bean,和@Qualifier一个效果
切面相关
@Aspect:声明一个切面
@After:在方法执行之后执行
@Before:在方法执行之前执行
@Around:在方法执行之前与之后执行
@PointCut:声明切点
Web相关
@RequestMapping:用于映射web请求,包括访问路径和参数
@RequestBody:允许request的参数在request体内,而不是在直接连接的地址后面
@ResponseBody:支持将返回值放到response内,而不是一个界面,通常用户返回json数据
@PathVariable:用于接收路径参数,比如@RequestMapping(".....")声明的路径,将注解放在参数前,即可获取该值,通常作为Restful的接口实现方法
@RestController:@Controller和@ResponseBody的组合注解,意味着,该Controller的所有方法都默认有@ResponseBody
@ControllerAdvice:全局异常处理,全局数据绑定,全局数据预处理
@ExceptionHandler:用于全局处理控制器的异常
事务
@Transactional:注解在类级别时,表示所有该类的公共方法都配置相同的事务属性
定时任务相关
@EnableScheduling:在配置类上使用,开启计划任务的支持
@Scheduled:来申明这是一个任务,包括cron,fixDelay,fixRate等类型(方法上需要先开启计划任务的支持)
Enable**注解
@EnableAspectAutoProxy:开启对AspectJ自动代理的支持
@EnableAsync:开启异步方法的支持
@EnableScheduling:开启计划任务的支持
@EnableWebMvc:开启webMVC的配置支持
@EnableConfigurationProperties:开启对@ConfigurationProperties注解配置Bean的支持
@EnableJpaRepositories:开启对SpringData JPA Repository的支持
@EnableTransactionManagement:开启注解式事务的支持
@EnableCaching:开启注解式的缓存支持