事务保证

旧项目升级,部分保留了旧项目的Oracle 存储过程代码(要和Oracle CRM交互).java

在这个交互上,就须要使用一个CRM系统的帐号,甲方的想法,是不一样的用户都应使用本身的帐号.接口

但从前的旧项目全部逻辑基本都在存储过程当中,目前大部分逻辑都在java中了,如何把帐号信息传递到Oracle是个问题(不想大量修改存储过程接口).事务

旧项目将用户信息(userName,ID,Locale)做为Session级别环境变量设在Session中,这个Session和HttpSession貌似作了一一对应(不肯定,但确定有这么一个对应).io

升级后用的是链接池,Oracle DB Session对应到每个jdbc connection.变量

仍是重用了旧代码的Session环境变量,给全部相关操做放入事务(Spring 事务管理能够保证屡次SQL操做使用同一个jdbc connection,这是废话),而后在每一个事务中增长Set环境变量的操做.jdbc

找不到合适切点,没有使用AOP,但问题仍是解决了.项目

记一下吧.存储过程

相关文章
相关标签/搜索