spring配置文件详解(applicationContext.xml)
来源:互联网 发布:网络接入服务 编辑:程序博客网 时间:2024/05/01 19:11
上次在开发时遇到创建的新路径下的model类在部署时不能与数据库表映射的问题,找到原因是在applicationContext.xml文件中没有添加我新创建的路径,所以spring找不到我的model类,也就无法完成部署。
这里说一下applicationContext的文件详解。
从上到下
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:database.properties</value> <value>classpath:wssuap.properties</value> <value>classpath:application.properties</value> </list> </property> </bean>
我们定义了一个PropertyPlaceholderConfigurer类的实例,并将其位置属性设置为我们的属性文件。该类被实现为Bean工厂的后处理器,并将使用定义在文件中的属性来代替所有的占位符(${…}value)。
接着是数据源:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${hibernate.connection.driver_class}"/> <property name="url" value="${hibernate.connection.url}"/> <property name="username" value="${hibernate.connection.username}"/> <property name="password" value="${hibernate.connection.password}"/> <property name="maxActive" value="${hibernate.connection.maxActive}" /> <property name="maxIdle" value="${hibernate.connection.maxIdle}" /> <property name="maxWait" value="${hibernate.connection.maxWait}" /> <property name="removeAbandoned" value="${hibernate.connection.removeAbandoned}"/> <property name="removeAbandonedTimeout" value="${hibernate.connection.removeAbandonedTimeout}"/> <property name="logAbandoned" value="${hibernate.connection.logAbandoned}"/> </bean>
我的工程中数据源的配置在database.properties文件中,修改数据库连接设置可以在里面操作。
然后是session工厂
<bean id="sessionFactory" class="com.wondersgroup.framework.core5.dao.support.EnhancedAnnotationSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="configLocation" value="classpath:hibernate.cfg.xml" /> <!-- dir location should be set here if *.hbm.xml exsited in the current project--> <property name="mappingDirectoryLocations"> <list> <!--<value>classpath:/com/wondersgroup/wssip/bc</value>comment--> </list> </property> <!-- any jar with zipping *.hbm.xml should be set here(for junit and deployment respectively) --> <property name="mappingJarLocations"> <list> <!-- for Deployment Environment --> <!-- <value>WEB-INF/lib/cuteframework-core-4.1-SNAPSHOT.jar</value> <value>WEB-INF/lib/cuteframework-security-4.0.jar</value> <value>WEB-INF/lib/cuteframework-appmgr-4.0.jar</value> <value>WEB-INF/lib/wsscclib-rollback-1.0-SNAPSHOT.jar</value> --> </list> </property> <property name="annotatedPackagePrefixes"> <list> <value>com.wondersgroup.wssuap</value> <value>com.wondersgroup.hzrsmh.wssip</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> ${hibernate.dialect} </prop> </props> </property> <property name="lobHandler" ref="${jdbc.handler}" /> </bean>
查找资料找到sessionFactory的作用,粘贴过来:
SessionFactory:
1,用于管理Hibernate会话(session)的对象,所以,最最最简单的理解,你可以把sessionFactory想想成里面有一个DataSource;
2,这个对象创建了,hibernate才真正和数据库连接上了。即SessionFactory维护着所有连接对象已经连接对象的分配和销毁;
3,SessionFactory是线程安全的,并且创建和销毁需要消耗比较大的资源,所以整个应用里面针对一个数据库只需要一个SessionFactory即可;
4,SessionFactory管理着配置在其中的映射对象的解析数据,动作监听器,NamedQuery等大量信息;
5,SessionFactory里面有一个二级缓存,可以提供更大生命周期的缓存策略;
我靠markdown出bug了,暂时写到这。。
- spring配置文件详解(applicationContext.xml详解)
- spring配置文件详解(applicationContext.xml详解)
- spring配置文件详解(applicationContext.xml详解)
- spring配置文件详解(applicationContext.xml)
- spring applicationContext.xml 配置文件 详解
- Spring配置文件 applicationContext.xml 详解
- Spring 配置文件applicationContext.xml详解
- spring applicationContext.xml 配置文件 详解
- spring applicationContext.xml 配置文件 详解
- spring applicationContext.xml 配置文件 详解
- spring applicationContext.xml 配置文件 详解
- spring applicationContext.xml 配置文件 详解
- spring applicationContext.xml 配置文件 详解
- spring applicationContext.xml 配置文件 详解
- spring applicationContext.xml 配置文件 详解
- spring applicationContext.xml 配置文件详解
- Spring配置文件applicationContext.xml详解
- spring的配置文件applicationContext.xml配置文件详解
- x&(x-1)
- Swift - 如何用Reachability来混编判断网络状况
- 5-23 IP地址转换 (20分) (位操作)
- 给Recyclerview的item设置不同布局的Adapter
- 寻访x86处理器“实模式”和“保护模式”的前世今生
- spring配置文件详解(applicationContext.xml)
- 2013长沙现场赛J - Josephina and RPG
- hdu2846 Repository (字典树)
- Mac OS X 系统目录结构
- 安卓开发网络资源汇总
- 实现一个类只能被实例化一次
- css 3中的box-sizing属性
- 数据库设计(多对一,1-1,1-多)的设计总结
- Ajax基本用法