spring注解@Service注解的使用解析
@Service注解的使用
要说明@Service
注解的使用,就得说一下我们经常在spring
配置文件applicationContext.xml
中看到如下图中的配置:
<!-- 采用扫描 + 注解的方式进行开发 可以提高开发效率,后期维护变的困难了,可读性变差了 --> <context:component-scan base-package="com.study.persistent" />
在applicationContext.xml
配置文件中加上这一行以后,将自动扫描指定路径下的包,如果一个类带了@Service
注解,将自动注册到Spring
容器,不需要再在applicationContext.xml
配置文件中定义bean
了,类似的还包括@Component
、@Repository
、@Controller
。
如这个类:
@Service("courseDAO") @Scope("prototype") public class CourseDAOImpl extends HibernateDaoSupport implements CourseDAO{ ...... }
其作用就相当于在applicationContext.xml
配置文件里配置如下信息:
<bean id="courseDAO" class="com.study.persistent.CourseDAOImpl" scope="prototype"> ...... </bean>
@Service("serviceName")
注解相当于applicationContext.xml
配置文件中配置的<bean id="serviceName">
,表示给当前类命名一个别名,方便注入到其他需要用到的类中。
@Service
注解也可以不指定serviceName
,如果不指定相当于<bean id="com.study.service.serviceName">
,com.study.service.ServiceName
就是这个类的全限定名,不加的话,默认别名就是当前类名,但是首字母小写。
@service注解的简介及使用范例
spring2.5之后出现的注解,就跟在spring
配置文件里配置bean
差不多的功能,就是让spring
自动扫描管理组件,@Service
、@Controller
、@Repository
、@Component
,这四个其实是一样的功能,没有区别,只是在MVC
模式上表示的层不一样,service
一般标注在service
层的bean
上,controller
标注在控制层,@Repository
标注在view
层,component
通用。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Springboot中LocalDateTime对象返回给前端格式化解决方案
在项目开发当中前后端使用什么样的时间格式,是一个值得关注的问题,这篇文章主要给大家介绍了关于Springboot中LocalDateTime对象返回给前端格式化的解决方案,文中通过代码介绍的非常详细,需要的朋友可以参考下2024-04-04详解mybatis中association和collection的column传入多个参数问题
这篇文章主要介绍了详解mybatis中association和collection的column传入多个参数问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-10-10Java Mybatis foreach嵌套foreach List<list<Object>&
在MyBatis的mapper.xml文件中,foreach元素常用于动态生成SQL查询条件,此元素包括item(必选,元素别名)、index(可选,元素序号或键)、collection(必选,指定迭代对象)、open、separator、close(均为可选,用于定义SQL结构)2024-09-09java web response提供文件下载功能的实例讲解
下面小编就为大家分享一篇java web response提供文件下载功能的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-01-01
最新评论