开启Spring注解减少XML配置
来源:互联网 发布:生活中的帅哥知乎 编辑:程序博客网 时间:2024/05/15 18:37
使用注解的好处
自Spring2.5就引入了很多注释类,可以使用注解配置完成大部分XML配置的功能,它可以利用Java反射机制获取类的结构信息,在服务器启动时会自动扫描装配.当一个项目变得越来越大,如果全部采用XML配置的方式,配置文件会变得越来越多越来越庞大,在XML文件与Java文件之间来回切换,就会变得非常繁琐且不利于维护。使用注解的方式,可以有效减少配置的工作, 提高可读性和可维护性。虽然注解的方式相对XML在服务器启动时解读的效率会低一些,但是几乎可以忽略。
在项目中开启注解
要使项目能支持注解并被有效识别,需要开启注解,在XML文件中配置:
<!-- 开启注解 --> <context:annotation-config /><!-- 自动扫描组件,定义扫描路径。这里要把web下面的 controller去除,他们是在sk-servlet.xml中配置的,如果不去除会影响事务管理的。--><context:component-scan base-package="com.sk"> <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller" /> </context:component-scan>
在xml配置了这个标签后,spring可以自动去扫描base-package下面或者子孙包下面的java文件,如果扫描到有@Component @Controller@Service@Repository等这些注解的类,则把这些类注册为bean。 如果配置了
<context:component-scan>
标签,就可以不用配置<context:annotation-config>
标签了。在
<context:component-scan>
可以添加use-default-filters,spring配置中的use-default-filters用来指示是否自动扫描带有@Component、@Repository、@Service和@Controller的类。默认为true,即默认以上注解全部扫描。如果设置为false,则只会扫描所配置中指定的注解。如下面就只会扫描带有@Controller注解的:
<context:component-scan base-package="com.sk" use-default-filters="false"> <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller" /> </context:component-scan>
- 使用
<context:include-filter/>
与<context:exclude-filter />
子标签来添加需要扫描的注解或者过滤掉某些注解。
<!--指定不扫描@Repository注解--><context:component-scan base-package="com.sk" use-default-filters="true"> <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Repository"/> </context:component-scan> <!--指定扫描@Service注解--><context:component-scan base-package="com.sk" use-default-filters="false"> <context:include-filter type="annotation" expression="org.springframework.stereotype.Service"/> </context:component-scan>
阅读全文
0 0
- 开启Spring注解减少XML配置
- 【Spring】Spring开启注解配置
- XML配置Spring注解
- spring开启注解的简单配置
- spring-mvc 开启注解
- spring使用注解@PostConstruct的xml配置
- 简化Spring XML配置---使用注解装配
- spring-mvc注解web.xml配置问题
- Spring使用注解代替XML配置
- spring注解如何替代xml配置的
- Spring框架注解扫描开启之配置细节
- spring注解(三)使用注解代替xml配置
- spring整合hibernate(注解、xml)applicationContext.xml配置
- spring整合hibernate(注解、xml)applicationContext.xml配置
- spring整合hibernate(注解、xml)applicationContext.xml配置
- spring整合hibernate(注解、xml)applicationContext.xml配置
- spring整合hibernate(注解、xml)applicationContext.xml配置
- Spring的注解配置和XML配置的比较
- LeetCode#169 Majority Element
- React Doc 简单摘要 (一)
- matlab已知数据使用不同颜色线条画图
- Java8学习总结
- 构造函数和复制构造函数的调用时机
- 开启Spring注解减少XML配置
- 抽象 abstract extends
- Date和String格式互转
- uLua 热更新 创建界面之后按钮点击事件问题
- 挑战程序竞赛系列(59):4.6树上的分治法(2)
- MongoDB serverStatus.globalLock 深入解析
- Spring与SpringMVC整合,以及实现数据库数据的增删查改和分页操作
- VS2017编译DirectX11的Effect框架时,出现C2323错误
- tensorflow的知识点一