SpringMVC中的主要注解及介绍
SpringMVC中业务层、控制层、DAO层中的主要注解:
@Service:用于标注业务层组件
@Service("testService")
public class DataServiceImpl{
}
@Controller:用于标注控制层组件,不需要再配置文件中定义action的bean
@Controller
public class TestAction(){
}
@Repository:@Repository(value=”nameDAO”),用于标注数据访问组件,即DAO组件
@Component:泛指组件
@Autowired:原先访问dao层的bean,运用于spring配置文件;加入之后,不用DAO层的bean。
@Autowired
private TestDao testdao;
这样不需要再书写testDao方法就可以直接使用
@Autowired默认按类型装配
@Resource默认按名称装配
@RequestMapping
注解为控制器指定可以处理哪些 URL 请求,在浏览器中书写XXX.do或者XXX.json才能访问相应的action方法。
@RequestMapping(value="XXX",method=RequestMethod.POST)
public String XXX(){
}
@ResponseBody
该注解用于将Controller的方法返回的对象,返回的数据不是html页面,而是xml、json等形式的数据。通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区。
@RequestBody
该注解用于读取Request请求的body部分数据,使用系统默认配置。HttpMessageConverter进行解析,然后把相应的数据绑定到要返回的对象上 ,再把HttpMessageConverter返回的对象数据绑定到 controller中方法的参数上。
@ModelAttribute
在方法定义上使用 @ModelAttribute 注解:Spring MVC 在调用目标处理方法前,会先逐个调用在方法级上标注了@ModelAttribute 的方法。在方法的入参前使用 @ModelAttribute 注解:可以从隐含对象中获取隐含的模型数据中获取对象,再将请求参数–绑定到对象中,再传入入参将方法入参对象添加到模型中。
@RequestParam
在处理方法入参处使用 @RequestParam 可以把请求参 数传递给请求方法。
@PathVariable
绑定 URL 占位符到入参。
@ExceptionHandler
注解到方法上,出现异常时会执行该方法。
@ControllerAdvice
使一个Contoller成为全局的异常处理类,类中用@ExceptionHandler方法注解的方法可以处理所有Controller发生的异常。