SpringMVC常用的注解:
1. 1.实例化:(base-package扫描包结构时要扫描的注解)
@Controller ----->控制层
@Service ----->Servoce(业务层)
@Repository ----->dao层(持久化层)
* 2.@RequestMapping注解:
表示请求路径映射,如果标注在某个controller的类级别上,则表明访问此类路径下的方法都要加上其配置的路径;最常用是标注在方法上,表明哪个具体的方法来接受处理某次请求。
* 3.@Autowired和@Resource的区别
用途:做bean的注入时使用
历史:@Autowired 属于Spring的注
@Resource 不属于Spring的注解, JDK1.6支持的注javax.annotation.Resource
共 同点: 装配bean. 写在字段上,或写在setter方法
不同点:@Autowired 默认按类型装配 依赖对象必须存在,如果要允许null值,可以设置它的 required属性为false , @Autowired(required=false)也可以使用名称装配,配合@Qualifier注解
@Resource默认是按照名称装配的 通过name属性进行指定
总结: @Autowired自动注解,举个例子吧,一个接口,俩个实现类,Autowired就不知道注入哪一个实现类,而Resource有name属性,可以区分。
* 4.@RequestParam
@RequestParam注解类型用于将指定的请求参数赋给方法中的形参。如:@RequestParam("username") String username,
注:若请求中的属性名跟方法中定义的变量名一致的话可省去不写
* 5.@RequestBody 和@ResponseBody注解:
@RequestBody将json字符串对象转换成Java 对象 等价于servlert request.getInPutStream()
@ResponseBody 将java对象转换成Json字符串对象 等价于 servlert response.getOutPutStream()
* 6.@SessionAttributes注解
将model和modelmap从request范围转换成session范围 实现session共享 不同的请求都可以访问到其中的属性 只需要将key存放到@SessionAttributes注解中即可
* 7. @WebService注解:
此注解式用来表明此java类是某个WebService的实现类或者是此java类定义了某个WebService的接口
* 8.@WebParam注解:
此注解是webservice里面的注解,表示方法的参数 书写形式是(name="name") 加上name="name"后,在wsdl中看到的参数名称就有意义了,不然就是arg0等这种没意义的参数,不利于阅读。@Controller 声明Action组件@Service 声明Service组件 @Service("myMovieLister")@Repository 声明Dao组件@Component 泛指组件, 当不好归类时.@RequestMapping("/menu") 请求映射@Resource 用于注入,( j2ee提供的 ) 默认按名称装配,@Resource(name="beanName")@Autowired 用于注入,(srping提供的) 默认按类型装配@Transactional( rollbackFor={Exception.class}) 事务管理@ResponseBody@Scope("prototype") 设定bean的作用域