Spring配置文件是用于指导Spring工厂进行Bean生产、依赖关系注入(装配)及Bean实例分发的"图纸"。Java EE程序员必须学会并灵活应用这份"图纸"准确地表达自己的"生产意图"。Spring配置文件是一个或多个标准的XML文档,applicationContext.xml是Spring的默认配置文件,当容器启动时找不到指定的配置文档时,将会尝试加载这个默认的配置文件。

在学会动手"绘制图纸"之前,先要学会"阅读图纸",熟能生巧讲的就是这个道理,"熟读唐诗三百首,不会作诗也会吟"。

下面列举的是一份比较完整的配置文件模板,文档中各XML标签节点的基本用途也给出了详细的解释,这些XML标签节点在后续的知识点中均会用到,熟练掌握了这些XML节点及属性的用途后,为我们动手编写配置文件打下坚实的基础。

 
 
 
 
 
下面,就上面的配置列举一个示例:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"><!-- 定义使用C3P0连接池的数据源 --><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"><!-- 指定连接数据库的JDBC驱动 --><property name="driverClass"><value>com.mysql.jdbc.Driver</value></property><!-- 连接数据库所用的URL --><property name="jdbcUrl"><value>jdbc:mysql://localhost:3306/eportal?useUnicode=true&characterEncoding=gbk</value></property><!-- 连接数据库的用户名 --><property name="user"><value>root</value></property><!-- 连接数据库的密码 --><property name="password"><value>root</value></property><!-- 设置数据库连接池的最大连接数 --><property name="maxPoolSize"><value>20</value></property><!-- 设置数据库连接池的最小连接数 --><property name="minPoolSize"><value>2</value></property><!-- 设置数据库连接池的初始化连接数 --><property name="initialPoolSize"><value>2</value></property><!-- 设置数据库连接池的连接的最大空闲时间,单位为秒 --><property name="maxIdleTime"><value>20</value></property></bean><!-- 定义Hibernate的SessionFactory --><bean id="sessionFactory"class="org.springframework.orm.
hibernate3.LocalSessionFactoryBean"><!-- 依赖注入上面定义的数据源dataSource --><property name="dataSource" ref="dataSource" /><!-- 注册Hibernate的ORM映射文件 --><property name="mappingResources"><list><value>com/eportal/ORM/News.hbm.xml</value><value>com/eportal/ORM/Category.hbm.xml</value><value>com/eportal/ORM/Memberlevel.hbm.xml</value><value>com/eportal/ORM/Cart.hbm.xml</value><value>com/eportal/ORM/Traffic.hbm.xml</value><value>com/eportal/ORM/Newsrule.hbm.xml</value><value>com/eportal/ORM/Merchandise.hbm.xml</value><value>com/eportal/ORM/Admin.hbm.xml</value><value>com/eportal/ORM/Orders.hbm.xml</value><value>com/eportal/ORM/Cartselectedmer.hbm.xml</value><value>com/eportal/ORM/Newscolumns.hbm.xml</value><value>com/eportal/ORM/Member.hbm.xml</value></list></property><!-- 设置Hibernate的相关属性 --><property name="hibernateProperties"><props><!-- 设置Hibernate的数据库方言 --><prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop><!-- 设置Hibernate是否在控制台输出SQL语句,开发调试阶段通常设为true --><prop key="show_sql">true</prop><!-- 设置Hibernate一个提交批次中的最大SQL语句数 --><prop key="hibernate.jdbc.batch_size">50</prop><prop key="show_sql">50</prop></props></property></bean><!--定义Hibernate的事务管理器HibernateTransactionManager --><bean id="transactionManager"class="org.springframework.orm.hibernate3.HibernateTransactionManager"><!-- 依赖注入上面定义的sessionFactory --><property name="sessionFactory" ref="sessionFactory" /></bean><!--定义Spring的事务拦截器TransactionInterceptor --><bean id="transactionInterceptor"class="org.springframework.transaction.interceptor.TransactionInterceptor"><!-- 依赖注入上面定义的事务管理器transactionManager --><property name="transactionManager" ref="transactionManager" /><!-- 定义需要进行事务拦截的方法及所采用的事务控制类型 --><property name="transactionAttributes"><props><!-- 以browse、list、load、get及is开头的所有方法采用只读型事务控制类型 --><prop key="browse*">PROPAGATION_REQUIRED,readOnly</prop><prop key="list*">PROPAGATION_REQUIRED,readOnly</prop><prop key="load*">PROPAGATION_REQUIRED,readOnly</prop><prop key="get*">PROPAGATION_REQUIRED,readOnly</prop><prop key="is*">PROPAGATION_REQUIRED,readOnly</prop><!-- 所有方法均进行事务控制,如果当前没有事务,则新建一个事务 --><prop key="*">PROPAGATION_REQUIRED</prop></props></property></bean><!-- 定义BeanNameAutoProxyCreatorf进行Spring的事务处理 --><beanclass="org.springframework.aop.framework.autoproxy.
BeanNameAutoProxyCreator"><!-- 针对指定的bean自动生成业务代理 --><property name="beanNames"><list><value>adminService</value><value>columnsService</value><value>newsService</value><value>crawlService</value><value>memberLevelService</value><value>memberService</value><value>categoryService</value><value>merService</value><value>cartService</value><value>ordersService</value><value>trafficService</value></list></property><!-- 这个属性为true时,表示被代理的是目标类本身而不是目标类的接口 --><property name="proxyTargetClass"><value>true</value></property><!-- 依赖注入上面定义的事务拦截器transactionInterceptor --><property name="interceptorNames"><list><value>transactionInterceptor</value></list></property></bean><!-- 装配通用数据库访问类BaseDAOImpl --><bean id="dao" class="com.eportal.DAO.BaseDAOImpl"><property name="sessionFactory" ref="sessionFactory" /></bean><!-- 部署系统用户管理业务逻辑组件AdminServiceImpl --><bean id="adminService" class="com.eportal.service.AdminServiceImpl"><property name="dao" ref="dao" /></bean><!-- 部署新闻栏目管理业务逻辑组件ColumnsServiceImpl --><bean id="columnsService" class="com.eportal.service.ColumnsServiceImpl"><property name="dao" ref="dao" /></bean><!-- 部署订单管理业务逻辑组件OrderServiceImpl --><bean id="ordersService" class="com.eportal.service.OrderServiceImpl"><property name="dao" ref="dao" /></bean><!-- 部署流量统计业务逻辑组件TrafficServiceImpl --><bean id="trafficService" class="com.eportal.service.TrafficServiceImpl"><property name="dao" ref="dao" /></bean><!-- 部署Struts 2负责系统用户管理的控制器AdminAction --><bean id="adminAction" class="com.eportal.struts.action.
AdminAction"scope="prototype"><property name="service" ref="adminService" /></bean><!-- 部署Struts 2负责新闻栏目管理的控制器ColumnsAction --><bean id="columnsAction" class="com.eportal.struts.action.
ColumnsAction"scope="prototype"><property name="service" ref="columnsService" /></bean><!-- 部署Struts 2负责新闻管理的控制器NewsAction --><bean id="newsAction" class="com.eportal.struts.action.
NewsAction"scope="prototype"><property name="service" ref="newsService" /><property name="columnsService" ref="columnsService" /></bean><!-- 部署Struts 2负责新闻采集规则管理的控制器CrawlAction --><bean id="crawlAction" class="com.eportal.struts.action.
CrawlAction"scope="prototype"><property name="service" ref="crawlService" /><property name="columnsService" ref="columnsService" /></bean></beans> 

Spring 2.5配置文件详解相关推荐

  1. Spring Boot (4)---配置文件详解

    Spring2.0 Boot配置文件详解 配置文件说明 Spring Boot 配置文件允许为同一套应用,为不同的环境用不同的配置文件.比如开发环境.测试环境.生成环境.你可以用 properties ...

  2. 企业分布式微服务云SpringCloud SpringBoot mybatis (二)Spring Boot属性配置文件详解...

    相信很多人选择Spring Boot主要是考虑到它既能兼顾Spring的强大功能,还能实现快速开发的便捷.我们在Spring Boot使用过程中,最直观的感受就是没有了原来自己整合Spring应用时繁 ...

  3. Spring Boot 核心配置文件详解

    用过 Spring Boot 的都知道在 Spring Boot 中有以下两种配置文件 bootstrap (.yml 或者 .properties) application (.yml 或者 .pr ...

  4. Spring Boot属性配置文件详解

    相信很多人选择Spring Boot主要是考虑到它既能兼顾Spring的强大功能,还能实现快速开发的便捷.我们在Spring Boot使用过程中,最直观的感受就是没有了原来自己整合Spring应用时繁 ...

  5. (拿来主义-8) Spring Boot属性配置文件详解(三)

    相信很多人选择Spring Boot主要是考虑到它既能兼顾Spring的强大功能,还能实现快速开发的便捷.我们在Spring Boot使用过程中,最直观的感受就是没有了原来自己整合Spring应用时繁 ...

  6. spring集成RabbitMQ配置文件详解(生产者和消费者)

    1,首先引入配置文件org.springframework.amqp,如下: <dependency><groupId>org.springframework.amqp< ...

  7. (转) SpringBoot非官方教程 | 第二篇:Spring Boot配置文件详解

    springboot采纳了建立生产就绪spring应用程序的观点. Spring Boot优先于配置的惯例,旨在让您尽快启动和运行.在一般情况下,我们不需要做太多的配置就能够让spring boot正 ...

  8. SpringBoot非官方教程 | 第二篇:Spring Boot配置文件详解

    springboot采纳了建立生产就绪Spring应用程序的观点. Spring Boot优先于配置的惯例,旨在让您尽快启动和运行.在一般情况下,我们不需要做太多的配置就能够让spring boot正 ...

  9. SpringBoot非官方教程 | 第二篇:SpringBoot配置文件详解

    springboot采纳了建立生产就绪Spring应用程序的观点. Spring Boot优先于配置的惯例,旨在让您尽快启动和运行.在一般情况下,我们不需要做太多的配置就能够让spring boot正 ...

  10. Spring Boot 配置文件详解

    2019独角兽企业重金招聘Python工程师标准>>> 第二篇 : Spring Boot配置文件详解 文章首发于微信公众号<程序员果果> 地址:https://mp.w ...

最新文章

  1. androidstuido_schooltest_1
  2. jdk11默认使用的垃圾回收器是G1
  3. cast()函数用法
  4. 1 计算机主机里面都有些什么东西,计算机主机和外设分别包括那些东西?
  5. Codeforces 474C Captain Marmot 给定4个点和各自旋转中心 问旋转成正方形的次数
  6. Oracle访问同义词连接超时,利用同义词解决oracle用户访问其它schema的对象
  7. QT5获取QPlainTextEdit 某行内容
  8. 04737 c++ 自学考试2019版 第四章课后练习 程序设计题 2
  9. pytorch 优化器调参
  10. Asp.net实现MVC处理文件的上传下载删除功能实例教程
  11. MySQL正则表达式的问题
  12. 《SEO深度解析——全面挖掘搜索引擎优化的核心秘密》
  13. 如何实现基于Electron的截图识字App(一)
  14. 2022年一级建造师《工程经济》模拟卷有解析
  15. html网站背景雪花飘落效果代码,超酷html5雪花飘落特效源码
  16. 计算机管理没有指定运行,如何限制电脑只运行一个软件?只打开指定软件?
  17. 英国内政部(Home Office)间谍机构(spy powers)假装它是Ofcom咨询中的一名私人公民1514378369635...
  18. 抖音高贵气质的签名_这些抖音直播注意事项,不注意很可能被封号!
  19. python怎么运行代码-python如何运行代码
  20. 在虚拟机Virtual box搭建linux环境

热门文章

  1. linux——文件操作
  2. PowerDesigner注意事项
  3. maven整合ssh框架笔记
  4. Fragment的使用
  5. PCB设计之3W规则和20H原则
  6. Android AR场景拍照技术实现(有关键源代码)
  7. jQuery 实现点击页面其他地方隐藏菜单
  8. day16——oracle灾备2
  9. runtime 的 assemblyIdentity 元素和bindingRedirect 元素
  10. linux 中select()函数的使用