@Repository @Service 和@Autowired 的使用

解释:

@Controller 声明Action组件

@Service   声明Service组件    @Service("myMovieLister")

@Repository 声明Dao组件

@Autowired 用于注入

配置方位:

@Repository ->(XXDaoImpl)
,

@Service("UserService")->(XXServiceImpl)

@Autowired ->(private UserDao;)

注意事项:

注解来注入bean实现对象的实例化时,加了@Repository 或是 @Service("UserService")的类中不能出现类成员变量的在创建时进行实例化。

例如:private UserDao dao = new UserDao();

不然会出现 Error creating bean with name ‘userController‘: Injection of autowired dependencies failed; 之类导致相关bean实例化的失败错误。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-10 13:18:54

@Repository @Service 和@Autowired 的使用的相关文章

What's the difference between @Component, @Repository & @Service annotations in Spring?

@Component is equivalent to <bean> @Service, @Controller , @Repository = {@Component + some more special functionality} That mean Service,Controller and Repository are functionally the same. The three annotations are used to separate "Layers&qu

SpringAnnotation注解之@Component,@Repository,@Service,@Controller

@Component:组件,表示此写上了此注解的bean,作为一个组件存在于容器中.这样的话别的地方就可以使用@Resource这个注解来把这个组件作为一个资源来使用了.初始化bean的名字为类名首字母小写 与@Component注解功能相同的注解有:@Repository,@Service,@Controller,@Component ,默认情况下Spring认为这4个注解会被认为是一个组件. @Repository:数据层,一般放在Dao接口的实现类上 @Service:服务层,一般放在se

[转]what’s the difference between @Component ,@Repository &amp; @Service annotations in Spring

原文地址:https://www.cnblogs.com/softidea/p/6070314.html @Component is equivalent to <bean> @Service, @Controller , @Repository = {@Component + some more special functionality} That mean Service,Controller and Repository are functionally the same. The t

@Component @Repository @Service @Controller

Spring 2.5 中除了提供 @Component 注释外,还定义了几个拥有特殊语义的注释,它们分别是:@Repository.@Service 和 @Controller.在目前的 Spring 版本中,这 3 个注释和 @Component 是等效的,但是从注释类的命名上,很容易看出这 3 个注释分别和持久层.业务层和控制层(Web 层)相对应.虽然目前这3 个注释和 @Component 相比没有什么新意,但 Spring 将在以后的版本中为它们添加特殊的功能.所以,如果 Web 应用

Spring注解 Component Repository Service Controller区别

Spring 4.1 中除了提供 @Component 注释外,还定义了几个拥有特殊语义的注释,它们分别是:@Repository.@Service 和 @Controller.在目前的 Spring 版本中,这 3 个注释和 @Component 是等效的,但是从注释类的命名上,很容易看出这 3 个注释分别和持久层.业务层和控制层(Web 层)相对应.虽然目前这 3 个注释和 @Component 相比没有什么新意,但 Spring 将在以后的版本中为它们添加特殊的功能.所以,如果 Web 应

IDEA mybatis 在service无法使用@Autowired , could not autowire

1. 首先我再配置中使用的配置如下 : 1 <!-- 4:配置扫描mapper层接口, 动态实现mapper层接口 , 注入spring容器 --> 2 <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> 3 <!-- 配置需要扫描的DAO的包 --> 4 <property name="basePackage" value="com.l

@Component, @Repository, @Service的区别

注解 含义 @Component 最普通的组件,可以被注入到spring容器进行管理 @Repository 作用于持久层 @Service 作用于业务逻辑层 @Controller 作用于表现层(spring-mvc的注解) 原文地址:https://www.cnblogs.com/shihuibei/p/9639633.html

SSM的XML和WEB.XML的配置

显示层(handler/controller): request请求到springmvc的前端控制器,从处理器映射器找相应的handler(用@RequestMapping("  ")标注,映射成功后,由Springmvc生成一个handler对象,该对象中有一个方法,即映射成功的该方法),由相应的处理器适配器去执行该handler,handler中调用的是业务控制层(service)的方法接口.然后返回jsp地址的字符串或有地址和请求参数的ModelAndView对象(其中装载着参数

SpringMVC注解@Component、@Repository、@Service、@Controller区别

SpringMVC的四个基本注解annotation(控制层,业务层,持久层) -- @Component.@Repository @Service.@Controller SpringMVC中四个基本注解: @Component.@Repository   @Service.@Controller 看字面含义,很容易却别出其中三个: @Controller   控制层,就是我们的action层 @Service        业务逻辑层,就是我们的service或者manager层 @Repo