spring
2016-04-28 23:01
477 查看
一.JDBCTemplate
导入的jar
[align=left]//创建连接池[/align]
DriverManagerDataSource dmd=
new
DriverManagerDataSource();
[align=left]//往连接池里面设置4大参数[/align]
dmd.setDriverClassName(
"com.mysql.jdbc.Driver");
[align=left] dmd.setUrl("jdbc:mysql:///myspring03");[/align]
dmd.setUsername(
"root");
dmd.setPassword(
"root");
[align=left] //创建jdbcTemplate模板[/align]
JdbcTemplate template =
new
JdbcTemplate();
[align=left] //将连接池设置到模板中[/align]
[align=left] template.setDataSource(dmd);[/align]
[align=left]=====================[/align]
[align=left]
[/align]
[align=left]<bean id="ds3" class="com.mchange.v2.c3p0.ComboPooledDataSource">[/align]
[align=left] <property name="driverClass" value="com.mysql.jdbc.Driver"/>[/align]
[align=left] <property name="jdbcUrl" value="jdbc:mysql:///myspring03"/>[/align]
[align=left] <property name="user" value="root"/>[/align]
[align=left] <property name="password" value="root"></property>[/align]
[align=left] </bean>[/align]
<bean id="
jdbctemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource"
ref="ds3"/>
[align=left] </bean> -->[/align]
[align=left]
[/align]
[align=left]引入外部文件:[/align]
[align=left] <!--外部属性文件的导入 ====================================================== -->[/align]
[align=left] [/align]
<!--在xml的文件中引入db.properties文件-->
<!-- <context:property-placeholder location="classpath:db.properties"/> -->
<!-- 在配置文件中使用配置文件中的信息 -->
<!-- <bean id="ds4" class="com.mchange.v2.c3p0.ComboPooledDataSource">
[align=left] <property name="driverClass" value="${jdbc.driver}"/>[/align]
[align=left] <property name="jdbcUrl" value="${jdbc.url}"/>[/align]
[align=left] <property name="user" value="${jdbc.user}"/>[/align]
[align=left] <property name="password" value="${jdbc.password}"></property>[/align]
[align=left] </bean>[/align]
<bean id="
jdbctemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource"
ref="ds4"/>
[align=left] </bean> -->[/align]
<!--外部属性文件的导入 ====================================================== end-->
[align=left]==============[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]==================[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]1.1.5Spring的事务管理:[/align]
[align=left][/align]
声明事务管理在xml中的配置:(基于AOPxml的配置)
[align=left] <!--在xml的文件中引入db.properties文件-->[/align]
<context:property-placeholder
location="classpath:db.properties"
/>
<!-- 在配置文件中使用配置文件中的信息 -->
<bean
id="dataSource"
class="com.mchange.v2.c3p0.ComboPooledDataSource"
>
<property
name="driverClass"
value="${jdbc.driver}"
/>
<property
name="jdbcUrl"
value=
"${jdbc.url}"/>
<property
name="user"
value=
"${jdbc.user}"/>
<property
name="password"
value="${jdbc.password}"
></property>
</bean
>
<bean
id="accountService"
class="cn.itcast.demo3.AccountServiceImpl"
>
<property
name="accountDao"
ref="accountDao"
></property>
</bean
>
[align=left] [/align]
<bean
id="accountDao"
class="cn.itcast.demo3.AccountDaoImpl"
>
<!-- 直接注入我们的数据源 -->
<property
name="dataSource"
ref="dataSource"
></property>
</bean
>
[align=left] [/align]
<!--注册事务管理器 -->
<bean
id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager"
>
<!-- 事务管理器得需要引入我们的连接池即数据源,因为得获得连接,开启事务 -->
<property
name="dataSource"
ref="dataSource"
></property>
</bean
>
<!--基于 AOP的声明事务管理 -->
<!--定义一个增强,事务的通知 -->
<tx:advice
id="txAdvice"
transaction-manager="transactionManager"
>
<!--事务里面的属性 -->
<tx:attributes
>
<tx:method
name=
"transf" />
</tx:attributes
>
</tx:advice
>
<!--定义AOP的配置(通知和切点的组合) -->
<aop:config
>
<aop:pointcut
expression="execution(* cn.itcast.demo3.AccountService+.*(..))"
id=
"mypointcut"/>
<aop:advisor
advice-ref="txAdvice"
pointcut-ref="mypointcut"
/>
</aop:config
>
[align=left] [/align]
[align=left]步骤:[/align]
[align=left] 1>导包 aop tx[/align]
[align=left] 2>在xml中配置[/align]
配置数据源
声明目标类,持久层的类。并且在持久层中注入数据源,目的是Dao类继承JdbcDaoSupport。此类帮我们拿到模板,直接注入数据源即可
注册事务管理器。事务管理器中注入数据源!目的是获得连接,开启事务
定义增强。事务管理的 : <tx:Advicer id="" transcation-manager="事务管理器"> 事务里面的属性
定义Aop的设置
[align=left] [/align]
[align=left] <!--声明目标类和dao 类。在dao类中注入数据源 -->[/align]
<!--注册事务管理器 -->
<!--定义增强 -->
<!--声明一个切面 通知和切点的组合 -->
<!-- 事务管理器 -->
<bean id="transac
dcce
tionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
第二步:注解事务:
<!-- 开启注解的事务管理 -->
<tx:annotation-driven transaction-manager="transactionManager"/>
第三步:在Service上使用注解
@Transactional
* 注解中有属性值:
* isolation
* propagation
* readOnly
=====================
<!--在xml的文件中引入db.properties文件-->
<context:property-placeholder
location="classpath:db.properties"
/>
<!-- 在配置文件中使用配置文件中的信息 -->
<bean
id="dataSource"
class="com.mchange.v2.c3p0.ComboPooledDataSource"
>
<property
name="driverClass"
value="${jdbc.driver}"
/>
<property
name="jdbcUrl"
value=
"${jdbc.url}"/>
<property
name="user"
value=
"${jdbc.user}"/>
<property
name="password"
value="${jdbc.password}"
></property>
</bean
>
<bean
id="accountService"
class="cn.itcast.demo4.AccountServiceImpl"
>
<property
name="accountDao"
ref="accountDao"
></property>
</bean
>
[align=left] [/align]
<bean
id="accountDao"
class="cn.itcast.demo4.AccountDaoImpl"
>
<!-- 直接注入我们的数据源 -->
<property
name="dataSource"
ref="dataSource"
></property>
</bean
>
[align=left] [/align]
<!--注册事务管理器 -->
<bean
id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager"
>
<!-- 事务管理器得需要引入我们的连接池即数据源,因为得获得连接,开启事务 -->
<property
name="dataSource"
ref="dataSource"
></property>
</bean
>
<!--基于注解的方式来完成事务的管理 -->
<tx:annotation-driven
transaction-manager="transactionManager"
/>
[align=left]
[/align]
[align=left]在目标类上加上[/align]
[align=left]
[/align]
[align=left]@Transactional[/align]
public
class
AccountServiceImpl
implements
AccountService {
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
导入的jar
[align=left]//创建连接池[/align]
DriverManagerDataSource dmd=
new
DriverManagerDataSource();
[align=left]//往连接池里面设置4大参数[/align]
dmd.setDriverClassName(
"com.mysql.jdbc.Driver");
[align=left] dmd.setUrl("jdbc:mysql:///myspring03");[/align]
dmd.setUsername(
"root");
dmd.setPassword(
"root");
[align=left] //创建jdbcTemplate模板[/align]
JdbcTemplate template =
new
JdbcTemplate();
[align=left] //将连接池设置到模板中[/align]
[align=left] template.setDataSource(dmd);[/align]
[align=left]=====================[/align]
[align=left]
[/align]
[align=left]<bean id="ds3" class="com.mchange.v2.c3p0.ComboPooledDataSource">[/align]
[align=left] <property name="driverClass" value="com.mysql.jdbc.Driver"/>[/align]
[align=left] <property name="jdbcUrl" value="jdbc:mysql:///myspring03"/>[/align]
[align=left] <property name="user" value="root"/>[/align]
[align=left] <property name="password" value="root"></property>[/align]
[align=left] </bean>[/align]
<bean id="
jdbctemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource"
ref="ds3"/>
[align=left] </bean> -->[/align]
[align=left]
[/align]
[align=left]引入外部文件:[/align]
[align=left] <!--外部属性文件的导入 ====================================================== -->[/align]
[align=left] [/align]
<!--在xml的文件中引入db.properties文件-->
<!-- <context:property-placeholder location="classpath:db.properties"/> -->
<!-- 在配置文件中使用配置文件中的信息 -->
<!-- <bean id="ds4" class="com.mchange.v2.c3p0.ComboPooledDataSource">
[align=left] <property name="driverClass" value="${jdbc.driver}"/>[/align]
[align=left] <property name="jdbcUrl" value="${jdbc.url}"/>[/align]
[align=left] <property name="user" value="${jdbc.user}"/>[/align]
[align=left] <property name="password" value="${jdbc.password}"></property>[/align]
[align=left] </bean>[/align]
<bean id="
jdbctemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource"
ref="ds4"/>
[align=left] </bean> -->[/align]
<!--外部属性文件的导入 ====================================================== end-->
[align=left]==============[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]==================[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]1.1.5Spring的事务管理:[/align]
[align=left][/align]
声明事务管理在xml中的配置:(基于AOPxml的配置)
[align=left] <!--在xml的文件中引入db.properties文件-->[/align]
<context:property-placeholder
location="classpath:db.properties"
/>
<!-- 在配置文件中使用配置文件中的信息 -->
<bean
id="dataSource"
class="com.mchange.v2.c3p0.ComboPooledDataSource"
>
<property
name="driverClass"
value="${jdbc.driver}"
/>
<property
name="jdbcUrl"
value=
"${jdbc.url}"/>
<property
name="user"
value=
"${jdbc.user}"/>
<property
name="password"
value="${jdbc.password}"
></property>
</bean
>
<bean
id="accountService"
class="cn.itcast.demo3.AccountServiceImpl"
>
<property
name="accountDao"
ref="accountDao"
></property>
</bean
>
[align=left] [/align]
<bean
id="accountDao"
class="cn.itcast.demo3.AccountDaoImpl"
>
<!-- 直接注入我们的数据源 -->
<property
name="dataSource"
ref="dataSource"
></property>
</bean
>
[align=left] [/align]
<!--注册事务管理器 -->
<bean
id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager"
>
<!-- 事务管理器得需要引入我们的连接池即数据源,因为得获得连接,开启事务 -->
<property
name="dataSource"
ref="dataSource"
></property>
</bean
>
<!--基于 AOP的声明事务管理 -->
<!--定义一个增强,事务的通知 -->
<tx:advice
id="txAdvice"
transaction-manager="transactionManager"
>
<!--事务里面的属性 -->
<tx:attributes
>
<tx:method
name=
"transf" />
</tx:attributes
>
</tx:advice
>
<!--定义AOP的配置(通知和切点的组合) -->
<aop:config
>
<aop:pointcut
expression="execution(* cn.itcast.demo3.AccountService+.*(..))"
id=
"mypointcut"/>
<aop:advisor
advice-ref="txAdvice"
pointcut-ref="mypointcut"
/>
</aop:config
>
[align=left] [/align]
[align=left]步骤:[/align]
[align=left] 1>导包 aop tx[/align]
[align=left] 2>在xml中配置[/align]
配置数据源
声明目标类,持久层的类。并且在持久层中注入数据源,目的是Dao类继承JdbcDaoSupport。此类帮我们拿到模板,直接注入数据源即可
注册事务管理器。事务管理器中注入数据源!目的是获得连接,开启事务
定义增强。事务管理的 : <tx:Advicer id="" transcation-manager="事务管理器"> 事务里面的属性
定义Aop的设置
[align=left] [/align]
[align=left] <!--声明目标类和dao 类。在dao类中注入数据源 -->[/align]
<!--注册事务管理器 -->
<!--定义增强 -->
<!--声明一个切面 通知和切点的组合 -->
基于注解的事务管理:
第一步:事务管理器:<!-- 事务管理器 -->
<bean id="transac
dcce
tionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
第二步:注解事务:
<!-- 开启注解的事务管理 -->
<tx:annotation-driven transaction-manager="transactionManager"/>
第三步:在Service上使用注解
@Transactional
* 注解中有属性值:
* isolation
* propagation
* readOnly
=====================
<!--在xml的文件中引入db.properties文件-->
<context:property-placeholder
location="classpath:db.properties"
/>
<!-- 在配置文件中使用配置文件中的信息 -->
<bean
id="dataSource"
class="com.mchange.v2.c3p0.ComboPooledDataSource"
>
<property
name="driverClass"
value="${jdbc.driver}"
/>
<property
name="jdbcUrl"
value=
"${jdbc.url}"/>
<property
name="user"
value=
"${jdbc.user}"/>
<property
name="password"
value="${jdbc.password}"
></property>
</bean
>
<bean
id="accountService"
class="cn.itcast.demo4.AccountServiceImpl"
>
<property
name="accountDao"
ref="accountDao"
></property>
</bean
>
[align=left] [/align]
<bean
id="accountDao"
class="cn.itcast.demo4.AccountDaoImpl"
>
<!-- 直接注入我们的数据源 -->
<property
name="dataSource"
ref="dataSource"
></property>
</bean
>
[align=left] [/align]
<!--注册事务管理器 -->
<bean
id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager"
>
<!-- 事务管理器得需要引入我们的连接池即数据源,因为得获得连接,开启事务 -->
<property
name="dataSource"
ref="dataSource"
></property>
</bean
>
<!--基于注解的方式来完成事务的管理 -->
<tx:annotation-driven
transaction-manager="transactionManager"
/>
[align=left]
[/align]
[align=left]在目标类上加上[/align]
[align=left]
[/align]
[align=left]@Transactional[/align]
public
class
AccountServiceImpl
implements
AccountService {
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
相关文章推荐
- Java核心知识点-Byte详解
- 【Leetcode】:230. Kth Smallest Element in a BST 问题 in JAVA
- 在eclipse中使用Lombok
- Java提高篇之常量池
- [javase]多线程(一)
- Java基础二
- Spring 事务管理笔记
- Java经典书籍
- 21045308刘昊阳 《Java程序设计》第九周学习总结
- Mac下eclipse安装插件subclipse
- 类的初始化顺序
- Java继承机制的初始化顺序+静态动态绑定
- 第一章 JAVA入门(javad的平台无关性)
- 第一章 JAVA入门(初识java标准版,企业版,精简版)
- JDK源码学习之TreeMap.java分析
- java的常用类
- java命名规范
- java比较器Comparable接口和Comparator接口的区别及应用
- 研究jdk关于TreeMap 红黑树算法实现
- 《Spring实战》学习笔记-第七章:Spring MVC进阶