SpringMVC四大注解 Component·Controller·Service·Repository
2016-12-10 16:26
441 查看
如何使用Component\Controller\Service\Repository四大注解类:
•@Component 是通用标注
•@Controller 标注 web 控制器
•@Service 标注 Servicec 层的服务
•@Respository 标注 DAO 层的数据访问
•这些注解都是类级别的,可以不带任何参数,也可以带一个参数,代表bean名字,在进行注入的时候就可以通过名字进行注入了。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201612/5acbb4ea75ee5e3cece6e53b0929c454)
•在不清楚使用那个注解的时候,可以统统使用Component
![](https://oscdn.geek-share.com/Uploads/Images/Content/201612/08108440a2be081f8045b21295a9efff)
•为了代码逻辑清晰,还是建议使用具体的注解
•在springmvc的配置文件中,通过context:component-scan使注解生效
![](https://oscdn.geek-share.com/Uploads/Images/Content/201612/439843dc9d98d994cd71b56392ec4cd2)
•使用@Resource或@Autowired注解实现注入
![](https://oscdn.geek-share.com/Uploads/Images/Content/201612/f29aef3128877a9cee551899b0bb937a)
•@Autowired默认按类型装配,默认情况下必须要求依赖对象必须存在,如果要允许null值,可以设置它的required属性为false,例如:@Autowired(required=false),如果我们想使用名称装配可以结合@Qualifier注解进行使用
![](https://oscdn.geek-share.com/Uploads/Images/Content/201612/9e76e36ba065598afc07ffc668ce53ef)
•@Resource,默认安装名称进行装配,名称可以通过name属性进行指定,如果没有指定name属性,当注解写在字段上时,默认取字段名进行安装名称查找,如果注解写在setter方法上默认取属性名进行装配。当找不到与名称匹配的bean时才按照类型进行装配。但是需要注意的是,如果name属性一旦指定,就只会按照名称进行装配。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201612/0296db29e0aec9fca90d710754816a44)
注解示例GitHub(下载demo2):https://github.com/DaleyChao/SpringMVCPra/tree/7093e65517c2a504d4172427d4c71fcf18b869f3
•@Component 是通用标注
•@Controller 标注 web 控制器
•@Service 标注 Servicec 层的服务
•@Respository 标注 DAO 层的数据访问
•这些注解都是类级别的,可以不带任何参数,也可以带一个参数,代表bean名字,在进行注入的时候就可以通过名字进行注入了。
•在不清楚使用那个注解的时候,可以统统使用Component
•为了代码逻辑清晰,还是建议使用具体的注解
•在springmvc的配置文件中,通过context:component-scan使注解生效
•使用@Resource或@Autowired注解实现注入
•@Autowired默认按类型装配,默认情况下必须要求依赖对象必须存在,如果要允许null值,可以设置它的required属性为false,例如:@Autowired(required=false),如果我们想使用名称装配可以结合@Qualifier注解进行使用
•@Resource,默认安装名称进行装配,名称可以通过name属性进行指定,如果没有指定name属性,当注解写在字段上时,默认取字段名进行安装名称查找,如果注解写在setter方法上默认取属性名进行装配。当找不到与名称匹配的bean时才按照类型进行装配。但是需要注意的是,如果name属性一旦指定,就只会按照名称进行装配。
注解示例GitHub(下载demo2):https://github.com/DaleyChao/SpringMVCPra/tree/7093e65517c2a504d4172427d4c71fcf18b869f3
相关文章推荐
- SpringMVC四大注解 Component·Controller·Service·Repository
- SpringMVC的四个基本注解annotation(控制层,业务层,持久层) -- @Component、@Repository @Service、@Controller
- SpringMVC四大注解类Component、Controller、Service、Repository
- Spring中注解@Controller@Service@Repository@Component的区别
- SpringMVC常用注解@Controller,@Service,@repository,@Component
- Spring注解 Component Repository Service Controller区别
- spring注解 repository,component,service,controller
- springMvc基本注解:@Component、@Repository(持久层) 、@Service(业务逻辑) 、@Controller(控制层)
- 使用component,repository,Service,controller注解
- spring mvc常用注解@Component @Controller @Service @Repository
- Spring中的注解:@Repository、@Controller、@Service、@Component
- Spring @Repository、@Service、@Controller 和 @Component 注解作用
- @Component @Service @Controller @Repository注解使用
- SpringMVC的四个基本注解annotation(控制层,业务层,持久层) -- @Component、@Repository @Service、@Controller
- spring mvc常用注解@Component @Controller @Service @Repository
- SpringMVC的四个基本注解annotation(控制层,业务层,持久层) -- @Component、@Repository @Service、@Controller
- Spring常用注解@Component、@Controller、@ Service、@ Repository......
- @Service@Repository@Controller@Component注解的使用
- SpringMVC的四个基本注解annotation(控制层,业务层,持久层) -- @Component、@Repository @Service、@Controller
- @Component @Service @Controller @Repository注解使用