Java EE应用中对前端用户的数据库操作的审计 - 编程入门网
ction。编程模型如下:
清单 4. 使用 WSConnection 传递用户标识
WSConnection 支持下列属性的传递: WSConnection.CLIENT_ACCOUNTING_INFO WSConnection.CLIENT_LOCATION WSConnection.CLIENT_ID WSConnection.CLIENT_APPLICATION_NAME WSConnection.CLIENT_OTHER_INFO WSConnection.OTHER_CLIENT_TYPE 和开源项目的结合 在实际大型项目中,直接通过 JDBC API 访问数据库比较少见,大多通过 O/R mapping 框架如 iBatis 或 Hibernate 去操纵数据库。这些框架往往对数据库连接进行了封装,同时客户的框架又经常进行了二次封装,这使得在连接上传递属性变得不太容易。下面针对 iBatis 和 Hibernate 提出了自己的一些实践解法。 下面都是针对 JDBC 4.0 之前的 JDBC driver 的编程实践。 在 iBatis 中传递连接属性 iBatis 提供了一个接口 com.ibatis.sqlmap.client.SqlMapClient,这个接口包含了数据库增删改查的常用方法。很多客户都是基于该接口的一个 wrapper 类去完成数据库操作。但 SqlMapClient 默认的方法封装掉了对连接的使用,即开发者无须获得连接和释放连接即可使用。 客户常用的 SqlMapClient 包装类的形式: 清单 5. 一个典型的 SqlMapClient 封装类
Java EE应用中对前端用户的数据库操作的审计(4)时间:2010-11-03 IBM 库俊国客户使用这种包装类的好处是减轻调用方对 SqlMapClient 的初始化工作,同时也可以对 SqlMapClient 做一些增强。但如果需要在连接上传递属性,需要进行一些改造。改造办法是写一个自己的 SqlMapClient 实现,逐一实现 SqlMapClient 里的方法。 清单 6. 一个自定制的 SqlMapClient 实现
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |