【spring】——常用注解

组件类注解

在spring注入bean的时候常用的一种方式就是通过注解,装配bean。

@Component:标准一个普通的spring Bean类。

@Repository:标注一个DAO组件类。

@Service:标注一个业务逻辑组件类。

@Controller:标注一个控制器组件类。

这四个注解都是为了注入bean,其实用法相同,功能相同,就是进行了更细致的分类。一般情况下,可以用@Component代替其他三个。并且不会有问题。

装配bean常用注解

@Autowired        属于Spring的注解               

@Resource  不属于Spring的注解

共同点:

  装配bean.写在字段上,或写在setter方法

不同点:

  @Autowired  默认按类型装配,依赖对象必须存在,如果要允许null值,可以设置它的required属性为false  @Autowired(required=false)也可以使用名称装配,配合@Qualifier注解。在ITO项目中使用的就是这种按照类型进行装配bean的方式,并且没有指定名称。

@Resource  默认按名称进行装配,通过name属性进行指定

补充:@Resource注解的使用性更为灵活,可指定名称,也可以指定类型;@Autowired注解进行装配容易抛出异常,特别是装配的bean类型有多个的时候,而解决的办法是需要在增加@Qualitied进行限定。

SpringMVC注解

web模块常用注解

@Controller:表明该类会作为与前端作交互的控制层组件,通过服务接口定义的提供访问应用程序的一种行为,解释用户的输入,将其转换成一个模型然后将试图呈献给用户。

@RequestMapping: 这个注解用于将url映射到整个处理类或者特定的处理请求的方法。可以只用通配符!

@RequestParam:将请求的参数绑定到方法中的参数上,有required参数,默认情况下,required=true,也就是改参数必须要传。如果改参数可以传可不传,可以配置required=false。

@PathVariable: 该注解用于方法修饰方法参数,会将修饰的方法参数变为可供使用的uri变量(可用于动态绑定)。

@RequestBody: @RequestBody是指方法参数应该被绑定到HTTP请求Body上。

@ResponseBody: @ResponseBody与@RequestBody类似,它的作用是将返回类型直接输入到HTTP response body中。

补充

@RestController:控制器实现了REST的API,只为服务于JSON,XML或其它自定义的类型内容,@RestController用来创建REST类型的控制器,与@Controller类型。@RestController就是这样一种类型,它避免了你重复的写@RequestMapping与@ResponseBody。

猜你喜欢

转载自blog.csdn.net/AinUser/article/details/81280510