- 浏览: 683573 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (141)
- java (58)
- SQL (7)
- java开源 (2)
- javascript (3)
- struts2 (2)
- oracle (6)
- junit (1)
- js报表 (1)
- jQuery (5)
- 插件安装 (1)
- myeclipse (1)
- xfire (1)
- weblogic (1)
- hibernate (6)
- loading (1)
- jbpm (3)
- 物语 (0)
- android (14)
- spring (20)
- BigDecimal (1)
- view (1)
- 总结 (2)
- application (1)
- Netty (5)
- aop (1)
- redis (7)
- double (1)
- restful (1)
- cache (3)
- profile (1)
- redisTemplate (1)
- poi (3)
- excel导出 (1)
- mysql (7)
- group (4)
- replication (4)
- proxysql (1)
- windows (1)
- version (1)
- mongodb (2)
- RocketMQ (1)
- MQ (1)
- RSA (1)
- 日志 (2)
- ip (1)
- socket (1)
- hibernate-validator (1)
- delayQueue (1)
- spring-retry (1)
- rabbitmq (3)
- httpclient (1)
- tools (1)
- 增量发布 (1)
- web (3)
- spring-boot (5)
- druid (2)
- pageHelper (1)
- freemarker (1)
- RequestMapping (1)
- 性能优化 (2)
- springBoot (1)
- docker (2)
- 安全 (0)
- 国际化 (3)
- websocket (1)
- stomp (1)
- shiro (1)
- 网络安全 (2)
- 锁 (1)
- logback (1)
最新评论
-
changerzhuo_319:
谢谢大佬, 查了一天了没解决
Spring-boot构建多模块依赖工程时,maven打包异常:程序包xxx不存在 -
迪伦少校:
spring越来越优秀的同时,也越来越复杂
spring核心技术(1) -
hbxflihua:
ivi13 写道这种方式会有个问题,假如有个商户的交易量特别大 ...
使用spring-retry实现支付系统异步通知 -
ivi13:
这种方式会有个问题,假如有个商户的交易量特别大,通知全部失败, ...
使用spring-retry实现支付系统异步通知 -
ckxlnd:
挺好的 有借鉴意义
重写DispatcherServlet获取springmvc 所有RequestMapping的url
公司的项目框架搭建可以说是几经周折。之前的项目一直用的SSH框架,老总觉得这种架构开发效率太低了,建议把hibernate去掉或者换成是其他的持久层框架。我把原有的项目中hibernate的部分给去掉,用spring的jdbcTemplate来操作数据库。后来发现,这样做有些时候也是很费劲的,尤其是对大表的操作。为提高开发效率,又引入了hibernate框架。这样一来,即可以通过spring的jdbcTemplate直接访问数据库也可以通过hibernate来访问数据库。但这里始终有一个问题,就是事物的共享问题。Spring的jdbcTemplate和hibernate是分开配置的,没有统一交由一个类来进行管理,如果程序中有两者协同处理,很容易出现事物不能全部回滚的问题。这种担心一直都让我惴惴不安。
有没有一种机制可以让两者共用事物达到理想中的共存呢?查阅文档发现,HibernateTransactionManager真有这种机制,不禁欣喜若狂。
不使用spring jdbcTemplate时,applicationContext.xml的配置如下:
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="lobHandler" ref="oracleLobHandler" />
<property name="configLocation" value="classpath:hibernate.cfg.xml" />
</bean>
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
Hibernate 与spring jdbcTemplate共同操作的配置如下:
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="driverClass" value="oracle.jdbc.driver.OracleDriver" /> <property name="jdbcUrl" value="jdbc:oracle:thin:@192.168.0.7:1521:ORCL" /> <property name="user" value="hb0815" /> <property name="password" value="hb0815" /> <property name="minPoolSize" value="5" /> <property name="maxPoolSize" value="10"/> <property name="initialPoolSize" value="5"/> </bean> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource"><ref bean="dataSource"/></property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="lobHandler" ref="oracleLobHandler" /> <property name="configLocation" value="classpath:hibernate.cfg.xml" /> </bean> <context:component-scan base-package="com.hzunitech" /> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory" /> <property name="dataSource"><ref bean="dataSource"/></property> </bean>
评论
<property name="sessionFactory" ref="sessionFactory" />
<property name="dataSource"><ref bean="dataSource"/></property>
</bean>
对 spring JdbcTemplate 的事物控制在哪里体现的
<property name="sessionFactory" ref="sessionFactory" /> 看起来是针对 Hibernate 的
发表评论
-
通过spring-context创建可执行jar
2019-04-23 13:52 11571、新建一个maven工程; 2、pom.xml中 ... -
spring核心技术(1)
2019-01-31 18:09 1285#spring核心技术 ## ... -
整合spring、shiro、redis实现会话共享
2019-01-29 15:42 2775什么是Shiro? Apache旗下强大灵活的开源安全 ... -
Spring4+WebSocket+Socket+STOMP+Jetty构建示例
2019-01-19 16:55 1359Spring 4引入了WebSocket API,浏 ... -
应用国际化(3)
2018-12-27 21:13 869前两篇介绍了应用国际化的注意事项和提示语国际化的简单实现。后 ... -
应用国际化(2)
2018-12-26 20:39 844上一篇介绍了应用国际化需要考虑的问题,本篇介绍后端如何实现 ... -
应用国际化(1)
2018-12-26 20:08 856最近在做数字资产交 ... -
使用docker部署spring-boot多模块依赖工程
2018-10-11 17:33 6104项目架构 dw | |----dw-demo(接口d ... -
快速搭建一个简易的spring web工程
2017-12-11 20:48 7141、新建一个maven project; ... -
简单封装spring-rabbit实现mq组件化
2017-08-02 21:39 3357网上有关spring和rabbitmq整合的博文比比皆是, ... -
通过spring-data-redis实现redis分布式缓存(增强版)
2017-07-06 20:50 85251、引入spring-data-redi ... -
基于spring的redisTemplate的缓存工具类
2016-10-01 20:38 696051、spring相关配置如下: < ... -
使用spring profile实现多环境切换的简单实现
2016-10-01 18:41 11499多环境配置一直都是一件头疼不已的事情,spring自3.1 ... -
基于spring的缓存注解实现
2016-09-22 15:25 1778时间原因,这里只贴代码,见谅。 package com.r ... -
使用Spring框架实现RESTful
2016-09-11 20:48 1344RESTful web服务最近有多流行已经无需我多评价。是的 ... -
spring-data-redis RedisTemplateUtils工具类
2016-08-29 15:06 9526package com.lh.core.core.util; ... -
spring-data-redis 扩展实现时效设置
2016-08-28 20:23 20410spring目前在@Cacheable和@CacheEvi ... -
spring自定义注解样例
2016-05-17 17:21 846样例的具体内容不在博客里展示,大家自行下载源码看看吧。 -
Hibernate更新部分字段浅谈
2012-08-17 15:44 12585Hibernate更新部分字段浅谈 update语句是在Hi ... -
Hibernate视图使用实践
2012-08-09 11:19 4622Hibernate反向生成工具生 ...
相关推荐
Spring JdbcTemplate提供了一个面向对象的接口,用于执行SQL查询、更新和存储过程,避免了直接与JDBC API打交道的繁琐工作。它通过异常处理、事务管理以及结果集的自动处理,简化了数据库访问。基于注解的Spring ...
"更新记录.docx"文件可能是项目开发过程中对SpringJdbcTemplate封装工具类的修改日志,记录了每次更新的功能改进、bug修复或性能优化等内容,这对于版本管理和问题排查非常有帮助。 通过上述分析,我们可以看到...
Spring JdbcTemplate支持自动和手动的事务管理。在AOP(面向切面编程)的帮助下,可以在方法级别控制事务的开始、提交和回滚。例如,通过@Transactional注解开启事务,当发生异常时,事务会自动回滚。 五、优势与...
在大型项目中,Spring通常与Hibernate结合使用,Spring负责整体的控制流程和依赖管理,而Hibernate则专注于数据持久化。通过Spring的Transaction Management,我们可以轻松地配置和管理数据库事务,使得在服务层的...
3. `spring-jdbc-5.0.0.RELEASE.jar`:包含Spring对JDBC的支持,包括JDBCTemplate和DataSourceTransactionManager,它们是与数据库交互和管理事务的关键。 4. `spring-tx-5.0.0.RELEASE.jar`:提供了事务管理功能,...
**Spring JdbcTemplate**是Spring框架中的一个核心组件,主要用于简化Java数据库访问。它提供了一种模板化的方式来执行SQL语句,使得开发人员可以避免编写大量的重复代码,专注于业务逻辑,而不是底层的数据库交互...
Spring的JdbcTemplate是Spring框架中用于简化数据库操作的工具类,它是基于JDBC但又抽象出了一层,避免了直接与数据库驱动API交互,从而提高了代码的可读性和可维护性。本文将深入探讨Spring JdbcTemplate的常用方法...
Druid数据库连接池的SpringJDBCTemplate所需的jar包,Druid数据库连接池的SpringJDBCTemplate所需的jar包,Druid数据库连接池的SpringJDBCTemplate所需的jar包,Druid数据库连接池的SpringJDBCTemplate所需的jar包,...
Spring则是一个全面的后端框架,提供依赖注入、AOP(面向切面编程)、事务管理等功能;Spring JDBC Template是Spring提供的一个简化数据库操作的工具,它封装了JDBC的繁琐部分,让开发者可以更专注于业务逻辑。 在...
在"Maven整合Spring+SpringMVC+Hibernate+SpringDataJPA+JdbcTemplate"的DEMO中,开发者通常会创建一个Maven工程,配置相关依赖,然后分别设置Spring的配置文件(如`applicationContext.xml`)、SpringMVC的配置文件...
使用 Spring JdbcTemplate 调用 Oracle 存储过程实现 CRUD 在本文中,我们将讨论如何使用 Spring JdbcTemplate 调用 Oracle 存储过程来实现 CRUD(Create、Read、Update、Delete)操作。我们将首先编写 Oracle 存储...
Struts2负责控制流程,Spring管理业务层和持久化层,Hibernate负责数据持久化,JdbcTemplate作为Spring与数据库间的桥梁,EXT则用于创建前端用户界面。这样的组合使得开发过程更为高效,各个组件之间解耦,易于维护...
Spring JdbcTemplate是Spring框架中用于简化数据库操作的一个重要组件,它是Spring对JDBC的轻量级封装,旨在提供一种结构良好、易于使用的SQL执行机制,同时保持了JDBC的灵活性。在本实例中,我们将深入探讨Spring ...
Spring JdbcTemplate是Spring框架中的一个核心组件,主要用来简化数据库操作。它提供了一种模板方法设计模式,将SQL语句的执行与结果处理进行了抽象,使得开发者可以更加专注于业务逻辑,而无需关心底层数据访问的...
在`JdbcTemplate`的设计中,模板(Template)承担着事物控制、资源管理和异常处理的责任,而回调(Callback)则专注于实现应用程序特有的逻辑,如创建SQL语句、设置参数和处理结果集。这种分离使得开发者能够更专注...
通过使用JdbcTemplate,开发者可以避免编写大量的重复代码,如手动管理连接、处理结果集等,从而专注于业务逻辑。本文将深入探讨如何利用Spring JdbcTemplate进行CURD(Create、Read、Update、Delete)操作。 1. ...
模仿spring jdbcTemplate的粗略实现,只有很小的参考价值,如果是java初学者可以使用这个封装好的工具进行数据库操作,只需要在db.properties里配置好driver,url等信息
Spring JDBCTemplate还提供了事务管理支持。当开启事务时,它会捕获并处理数据库异常,根据异常类型决定回滚还是提交事务。这样,开发者无需手动处理这些细节,提高了代码的可读性和可靠性。 此外,JdbcTemplate对...
总之,`Spring JdbcTemplate.batchUpdate`是处理批量数据库操作的强大工具,它可以提高效率,减少与数据库的交互次数。然而,正确地使用它需要对事务管理、异常处理和性能优化有深入的理解。通过合理的配置和良好的...
它还支持事务管理,可以方便地与Spring的其他组件集成,如DataSource和TransactionManager。 在创建一个Spring的JdbcTemplate小案例时,我们需要完成以下几个步骤: 1. **配置DataSource**:首先,我们需要一个...