版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、GBU客户化开发中心伙伴培训课程NC数据库操作数据库操作何胜利2007-03-25 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机找出发展机edesafaaaaadsdfdffdd会并进行初步筛选会并进行初步筛选NCV5以前版本的典型代码以前版本的典型代码1.定义sql语句: String strSql=“select . From .where .”2.定义连接: con = getConnection()3.定义stmt: stmt = con.prepareStatement(strSql)4.给条件赋值:stmt.setString(1, key)5.执行查
2、询:ResultSet rs = stmt.executeQuery()6.处理结果集:while (rs.next() rs.getString(1); rs.getDecimal(2);. 7.处理异常关闭连接: stmt.close(); con.close(); 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛选项目经营项目经营弊端弊端:嵌入大量SQL语句,冗余是不可避免的 一次又一次地编写相同的普通代码 ,工作效率低代码难以维护,表结构一点小改动就难以承受数据库访问异常不统一 内部经营内部经营人员经营人员经营成果经营成
3、果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛选项目经营项目经营V5新的数据库访问框架新的数据库访问框架 JDBC FrameWork 1. 灵活 2. 简洁3. 高的容错性4. 异常的统一处理DataBaseJDBCAPIJDBCFrameworkDataAccessObjectBusinessService业务委托接口,提供EJB封装数据访问对象,组织数据访问逻辑提供统一的数据操作访问,简化数据访问操作 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛选项目经营项目经营PersistenceMana
4、ger 管理连接会话的生命周期,并提供了对单表管理连接会话的生命周期,并提供了对单表VO操作的常用实现操作的常用实现 JdbcSession 对对JDBC的的API封装和简化封装和简化SQLParameter 封装执行封装执行SQL的参数的参数ResultSetProcessor 结果集处理回调接口,封装结果集处理结果集处理回调接口,封装结果集处理DbException 封装不同数据库的异常,和统一处理不同数据库的封装不同数据库的异常,和统一处理不同数据库的Error CodeBaseDAO / IUAPQueryBS / IVOPersistence 管理连接会话的生命周期,提供了对单表管理
5、连接会话的生命周期,提供了对单表VO操作的常用实现操作的常用实现 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛选项目经营项目经营1.前台数据访问前台数据访问使用使用IVOPersistence服务组件,进行增删改操作;服务组件,进行增删改操作;使用使用IUAPQueryBS服务组件,进行查询操作。服务组件,进行查询操作。 IUAPQueryBS iUAPQueryBS = (IUAPQueryBS)NCLocator.getInstance().lookup(IUAPQueryBS.class.getName(); iUAP
6、QueryBS. executeQuery()executeQuery() 2.后台数据访问后台数据访问 使用使用BaseDAO工具类,进行单表对象的工具类,进行单表对象的CRUD操作;操作;使用使用PersistenceManager,进行单表对象的进行单表对象的CRUD操作操作 new BaseDAO(). insertObject()insertObject() 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛选项目经营项目经营JdbcSession的创建的创建 PersistenceManagersessionManag
7、er=PersistenceManager.getInstance();tryJdbcSessionsession=sessionManager.getJdbcSession();/数据库访问操作数据库访问操作session.insert();session.update();session.query();catch(DbExceptione)finallysessionManager.release();/需要关闭会话 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛选项目经营项目经营String sql = select
8、* from bd_deptdoc; /构造查询语句构造查询语句List list = (List) session.executeQuery(sql, new ArrayListProcessor();String sql = select * from bd_deptdoc where dept_code=?;SQLParameter param = new SQLParameter(); /构造参数对象构造参数对象param.addParam(“aaa”); /添加参数添加参数List list=(List) session.executeQuery(sql, param, new Ar
9、rayListProcessor(); 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛选项目经营项目经营String sql = update bd_deptdoc set dept_code =aaawhere dept_code=bbb; session.executeUpdate(sql);String sql = update bd_deptdoc set dept_code =aaawhere dept_code=?”; SQLParameter param = new SQLParameter(); /构造参数对象
10、构造参数对象param.addParam(“bbb”); /添加参数添加参数session.executeUpdate(sql, param); 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛选项目经营项目经营String sql = update bd_deptdoc set dept_code =aaa where dept_code=bbb; session.addBatch(sql); /添加需要执行的同构添加需要执行的同构SQLint rows = session.executeBatch(); /执行执行Strin
11、g sql = update bd_deptdoc set dept_code =aaa where dept_code=?”; SQLParameter param = new SQLParameter(); /构造参数对象构造参数对象param.addParam(“bbb”); /添加参数添加参数session.addBatch(sql, param); /添加需要执行的同构添加需要执行的同构SQLint rows = session.executeBatch(); /执行执行 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步
12、筛选项目经营项目经营特殊参数特殊参数1. Null参数参数param.addNullParam(java.sql.Types.INTEGER);2. Blob参数参数param.addBlobParam (new Object(); 3. Clob参数参数param.addClobParam (new String(); 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛选项目经营项目经营结果集合的处理结果集合的处理 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛
13、选项目经营项目经营ArrayProcessor数组处理器,返回一个对象数组,结果集中只有一行数据,其中结果集中每一列对应数组的一个元素 ArrayListProcessor数组集合处理器,返回一个ArrayList集合,集合中的每一个元素是一个数组,每个数组对应结果集中的一行数据,其中结果集中每一列对应数组的一个元素 MapProcessorHashMap处理器,返回一个HashMap,结果集中只有一行数据,其中结果集合中每一列的列名和列值对应HashMap的一个关键字和相应的值 MapListProcessorHashMap集合处理器,返回一个ArrayList集合,集合中的每一个元素是一个
14、HashMap,每个HashMap对应结果集中的一行数据,其中结果集合中每一列的列名和列值对应HashMap的一个关键字和相应的值 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛选项目经营项目经营BeanProcessor值对象处理器,返回一个JavaBean,结果集中只有一行数据,该处理器能自动把结果集中的值按列的名称映射到javaBean中,如结果集中有名称为”name”的字段,那么只要该java对象中有getName()方法就能把结果集合中”name”对应的值映射到对象中 BeanListProcessor值对象集合处理
15、器,返回一个ArrayList集合,集合中的每一个元素是一个javaBean,每个javaBean对应结果集合中一行数据,其中每个JavaBean中的数据映射关系和BeanProcess同理 ColumnProcessor列值处理器,返回一个Java对象,结果集中只有一行数据,该对象对应与结果集中某一列的值,该处理器通过结果集列的序号或名称来确定列 内部经营内部经营人员经营人员经营成果经营成果经营客户经营客户经营找出发展机会并进找出发展机会并进行初步筛选行初步筛选项目经营项目经营自定义的结果集处理器自定义的结果集处理器publicclassCustomProcessorextendsBaseProcessorpublicObjectproces
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安徽亳州刘桥中学2026届初三下学期中考适应性月考(八)数学试题含解析
- 袋鼠式护理:不仅仅是保暖
- 医院门诊部绩效考核制度
- 中小学校审计制度
- 审计局走访制度
- 审计人员管理制度
- 大众绩效考核制度
- 审计局控烟监督管理制度
- 保安部绩效考核制度
- 健全医院内部审计制度
- 江苏省交通设施代建合同范本
- 2026年及未来5年中国耐火粘土行业发展运行现状及投资战略规划报告
- T∕CIECCPA 125-2026 温室气体 产品碳足迹量化方法与要求 燃气-蒸汽联合循环发电产品
- 2024版2026春新教科版科学三年级下册教学课件:第一单元 辨别方向 单元小结复习
- 物业管理公司员工招聘条件及流程
- 2025年上海大专自主招生免笔试及答案
- 汽车制造焊接工艺技术规范
- 2025年黑龙江生态工程职业学院单招职业倾向性测试模拟测试卷附答案解析
- 融媒体应聘考试题及答案
- (新版)上海安全员C3考试(重点)题库300题(含答案)
- 老年2型糖尿病合并认知障碍照护方案
评论
0/150
提交评论