`

appcationContext.xml

阅读更多
appcationContext.xml

<beans>
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost/test?useUnicode=true&amp;characterEncoding=UTF-8</value>
</property>
<property name="username">
<value>root</value>
</property>
</bean>
<bean id="exampleHibernateProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="properties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
</props>
</property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="mappingResources">
<list>
<value>Test.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<ref bean="exampleHibernateProperties" />
</property>
</bean>

<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager"
abstract="false" singleton="true" lazy-init="default"
autowire="default" dependency-check="default">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<bean id="baseDao" abstract="true" singleton="false">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<bean id="testDao" parent="baseDao" class="ssh.naxj.dao.TestDao" singleton="true"/>
<bean id="testBoTarget" class="ssh.naxj.bo.TestBo" singleton="true">
<property name="testDao" ref="testDao"/>
</bean>

<bean id="testBo"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager"><ref local="transactionManager"/></property>
<property name="target"><ref local="testBoTarget"/></property>
<property name="transactionAttributes">
<props>
<prop key="*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>

</beans>
第一部分 数据源

<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>//驱动名称
</property>
<property name="url">
<value>jdbc:mysql://localhost/test?useUnicode=true&amp;characterEncoding=UTF-8</value>//数据库地址
</property>
<property name="username">
<value>root</value>//用户名
</property>
<property name="password">
<value>root</value>//密码
</property>
</bean>

第二部分 hibernate的配置

<bean id="exampleHibernateProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="properties">
<props>
<prop key="hibernate.hbm2ddl.auto">update</prop>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>//对应所使用的数据库,我所用的是MYSQL
<prop key="hibernate.query.substitutions">true '0', false '1'</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.c3p0.minPoolSize">5</prop>
<prop key="hibernate.c3p0.maxPoolSize">20</prop>
<prop key="hibernate.c3p0.timeout">600</prop>
<prop key="hibernate.c3p0.max_statement">50</prop>
<prop key="hibernate.c3p0.testConnectionOnCheckout">false</prop>
</props>
</property>
</bean>

第三部分 hibernate的sessionFactory 一个关联于特定数据库的全局工厂

<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />//先前定义的数据源
</property>
<property name="mappingResources">
<list>
<value>Test.hbm.xml</value>//hibernate O/R map文件
</list>
</property>
<property name="hibernateProperties">
<ref bean="exampleHibernateProperties" />//先前定义的hibernate 配置
</property>
</bean>

第四部分 事务 transactionManager

<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager"
abstract="false" singleton="true" lazy-init="default"
autowire="default" dependency-check="default">
<property name="sessionFactory">
<ref bean="sessionFactory" />//先前定义的sessinFactory
</property>
</bean>

第五部分 Dao 抽象

<bean id="baseDao" abstract="true" singleton="false">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
定义baseDao的好处就是在以下的Dao中再不用每个bean 都要注入sessionFactory了

第六部分 Dao

<bean id="testDao" parent="baseDao" //继承于先前定义的Dao 抽象
class="ssh.naxj.dao.TestDao" singleton="true"/>

第七部分 定义 Target (BO)

<bean id="testBoTarget" class="ssh.naxj.bo.TestBo" singleton="true">
<property name="testDao" ref="testDao"/>//IOC 注入testDao
</bean>

第八部分 使用事务的BO

<bean id="testBo"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager"><ref local="transactionManager"/></property>//transactionManager
<property name="target"><ref local="testBoTarget"/></property>//Target
<property name="transactionAttributes">
<props>
<prop key="*">PROPAGATION_REQUIRED</prop>//“*”为所有的方法使用事务
</props>
</property>
</bean>
分享到:
评论

相关推荐

    maven的本地仓库配置文件settings.xml和项目中文件pom.xml.zip

    一、Idea关联的maven本地仓库配置文件settings.xml (1)必须使用默认文件名 D:\developsoft\javaweb\commonPlugins\maven\apache-maven-3.8.1_first\conf\settings.xml 二、Myeclipse关联的maven本地仓库配置文件...

    opencv的各种haarcascade.xml文件

    haarcascades\haarcascade_eye.xml haarcascades\haarcascade_eye_tree_eyeglasses.xml haarcascades\haarcascade_frontalface_alt.xml haarcascades\haarcascade_frontalface_alt2.xml haarcascades\haar...

    javax.xml.rpc相关jar包

    而`javax.xml.rpc`是Java平台标准版(Java SE)的一部分,它提供了一组API来支持Web服务的开发。这个API集允许开发者创建、部署和调用基于J2EE(Java 2 Platform, Enterprise Edition)的Web服务。 标题中的“javax...

    opencv分类器 人脸 人眼 上身 鼻子 耳朵等等 检测的.xml文件

    haarcascade_eye.xml'haarcascade_eye_tree_eyeglasses.xml'haarcascade_frontalcatface.xml'haarcascade_frontalface_alt.xml'haarcascade_frontalface_alt2.xml'haarcascade_frontalface_alt_tree.xml'haarcascade...

    jakarta.xml.bind-api-2.3.3-API文档-中文版.zip

    赠送jar包:jakarta.xml.bind-api-2.3.3.jar; 赠送原API文档:jakarta.xml.bind-api-2.3.3-javadoc.jar; 赠送源代码:jakarta.xml.bind-api-2.3.3-sources.jar; 赠送Maven依赖信息文件:jakarta.xml.bind-api-...

    License.xml 破解码

    License.xml 破解码License.xml 破解码License.xml 破解码License.xml 破解码License.xml 破解码License.xml 破解码License.xml 破解码License.xml 破解码License.xml 破解码License.xml 破解码License.xml 破解码...

    jakarta.xml.bind-api-2.3.2-API文档-中文版.zip

    赠送jar包:jakarta.xml.bind-api-2.3.2.jar; 赠送原API文档:jakarta.xml.bind-api-2.3.2-javadoc.jar; 赠送源代码:jakarta.xml.bind-api-2.3.2-sources.jar; 赠送Maven依赖信息文件:jakarta.xml.bind-api-...

    javax.xml.bind.jar

    【标题】"javax.xml.bind.jar" 是一个Java开发中常用的工具包,主要包含了Java对象到XML数据绑定的API,这是Java标准版(Java SE)的一部分,用于帮助开发者将Java类和XML文档之间的转换自动化,从而简化了XML处理。...

    在web.xml中引入其他xml配置文件的步骤

    ### 在web.xml中引入其他XML配置文件的步骤 在Java Web开发中,`web.xml`作为Web应用程序的核心配置文件,负责定义应用级别的配置信息。为了提高代码的可维护性和复用性,有时需要将一部分配置内容提取到独立的XML...

    jakarta.xml.bind-api-2.3.3-API文档-中英对照版.zip

    赠送jar包:jakarta.xml.bind-api-2.3.3.jar; 赠送原API文档:jakarta.xml.bind-api-2.3.3-javadoc.jar; 赠送源代码:jakarta.xml.bind-api-2.3.3-sources.jar; 赠送Maven依赖信息文件:jakarta.xml.bind-api-...

    javax.xml.rpc

    "javax.xml.rpc"是Java平台中的一个关键组件,主要用于实现基于XML的远程过程调用(XML-RPC)服务。这个框架允许Java应用程序通过HTTP协议来调用远程服务器上的方法,从而实现分布式计算。在Java EE环境中,它常与...

    jakarta.xml.bind-api-2.3.2-API文档-中英对照版.zip

    赠送jar包:jakarta.xml.bind-api-2.3.2.jar; 赠送原API文档:jakarta.xml.bind-api-2.3.2-javadoc.jar; 赠送源代码:jakarta.xml.bind-api-2.3.2-sources.jar; 赠送Maven依赖信息文件:jakarta.xml.bind-api-...

    ar.com.tadp.xml.rinzo

    《ar.com.tadp.xml.rinzo:Eclipse XML插件深度解析》 在软件开发领域,XML(Extensible Markup Language)作为一种数据交换格式,被广泛应用于配置文件、数据存储和网络通信等领域。Eclipse作为一款强大的开源集成...

    main_menu.xml菜单汉化文件

    `main_menu.xml` 文件是XML格式的,XML是一种标记语言,用于描述数据结构和内容。在MySQLWorkbench中,这个文件定义了每个菜单项的ID、文本和关联的操作。例如,"文件"(File)菜单可能包含"新建"(New)、"打开"...

    AndroidManifest.xml反编译工具

    在Android应用开发中,`AndroidManifest.xml`是一个至关重要的文件,它包含了应用程序的基本配置和元数据,如应用的包名、所需权限、启动活动、服务、接收器等。本话题将详细探讨`AndroidManifest.xml`的反编译工具...

    lbpcascade-frontalface.xml与 haarcascade-eye-tree-eyeglasses.xml

    lbpcascade_frontalface.xml 和 haarcascade_eye_tree_eyeglasses.xml 是 OpenCV 中的人脸和眼睛识别分类器。lbpcascade_frontalface.xml 是基于 Local Binary Patterns (LBP) 算法的人脸识别分类器,可以用来检测...

    String.xml Excel 相互转换工具

    `String.xml`文件是Android系统用来存储应用中所有文本资源的主要方式,它使得开发者能够方便地管理和国际化应用的文本内容。本工具就是专为处理`String.xml`与Excel表格之间的相互转换而设计的,方便开发者进行批量...

    android String.xml Excel 相互转换工具

    为了方便管理这些多语言资源,Android使用`String.xml`文件来存储应用中的文本字符串。然而,手动编辑这些XML文件既耗时又容易出错,尤其是在处理大量文本时。这时,就需要借助一些工具进行`String.xml`与Excel之间...

    haarcascade_eye_tree_eyeglasses.xml与haarcascade_frontalface_alt.xml

    在检测时,先导入训练好的参数文件,其中haarcascade_frontalface_alt2.xml对正面脸的识别效果较好,haarcascade_profileface.xml对侧脸的检测效果较好。当然,如果要达到更高的分类精度,可以收集更多的数据进行...

Global site tag (gtag.js) - Google Analytics