NC5数据库操作_第1页
NC5数据库操作_第2页
NC5数据库操作_第3页
NC5数据库操作_第4页
NC5数据库操作_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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.执行查询:ResultSet rs = stmt.execu

2、teQuery() 6.处理结果集:while (rs.next() rs.getString(1); rs.getDecimal(2);. 7.处理异常关闭连接: stmt.close(); con.close();,内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,弊端: 嵌入大量SQL语句,冗余是不可避免的 一次又一次地编写相同的普通代码 ,工作效率低 代码难以维护,表结构一点小改动就难以承受 数据库访问异常不统一,内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,V5新的数据库访问框架 JDBC FrameWork 1. 灵活 2

3、. 简洁 3. 高的容错性 4. 异常的统一处理,内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,核心类与工具类 PersistenceManager 管理连接会话的生命周期,并提供了对单表VO操作的常用实现 JdbcSession 对JDBC的API封装和简化 SQLParameter 封装执行SQL的参数 ResultSetProcessor 结果集处理回调接口,封装结果集处理 DbException 封装不同数据库的异常,和统一处理不同数据库的Error Code BaseDAO / IUAPQueryBS / IVOPersistence 管理连接会话的生

4、命周期,提供了对单表VO操作的常用实现,内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,1.前台数据访问 使用IVOPersistence服务组件,进行增删改操作; 使用IUAPQueryBS服务组件,进行查询操作。 IUAPQueryBS iUAPQueryBS = (IUAPQueryBS)NCLocator.getInstance().lookup(IUAPQueryBS.class.getName(); iUAPQueryBS. executeQuery() 2.后台数据访问 使用BaseDAO工具类,进行单表对象的CRUD操作; 使用Persistenc

5、eManager,进行单表对象的CRUD操作 new BaseDAO(). insertObject(),内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,JdbcSession的创建 PersistenceManager sessionManager= PersistenceManager. getInstance (); try JdbcSession session = sessionManager. getJdbcSession (); /数据库访问操作 session.insert(); session.update(); session.query();

6、 catch (DbException e) finally sessionManager. release ();/需要关闭会话 ,内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,JdbcSession基本操作 1.无参查询 String sql = select * from bd_deptdoc; /构造查询语句 List list = (List) session.executeQuery(sql, new ArrayListProcessor(); 2.有参查询 String sql = select * from bd_deptdoc where de

7、pt_code=?; SQLParameter param = new SQLParameter(); /构造参数对象 param.addParam(“aaa”); /添加参数 List list=(List) session.executeQuery(sql, param, new ArrayListProcessor();,内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,JdbcSession基本操作 3.无参更新 String sql = update bd_deptdoc set dept_code =aaa where dept_code=bbb; se

8、ssion.executeUpdate(sql); 4.有参更新 String sql = update bd_deptdoc set dept_code =aaa where dept_code=?”; SQLParameter param = new SQLParameter(); /构造参数对象 param.addParam(“bbb”); /添加参数 session.executeUpdate(sql, param);,内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,JdbcSession基本操作 5.无参批量更新 String sql = update

9、bd_deptdoc set dept_code =aaa where dept_code=bbb; session.addBatch(sql); /添加需要执行的同构SQL int rows = session.executeBatch(); /执行 6.有参批量更新 String sql = update bd_deptdoc set dept_code =aaa where dept_code=?”; SQLParameter param = new SQLParameter(); /构造参数对象 param.addParam(“bbb”); /添加参数 session.addBatch

10、(sql, param); /添加需要执行的同构SQL int rows = session.executeBatch(); /执行,内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,特殊参数 1. Null参数 param.addNullParam(java.sql.Types.INTEGER); 2. Blob参数 param.addBlobParam (new Object(); 3. Clob参数 param.addClobParam (new String();,内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,结果集合的处理,

11、内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,ArrayProcessor 数组处理器,返回一个对象数组,结果集中只有一行数据,其中结果集中每一列对应数组的一个元素 ArrayListProcessor 数组集合处理器,返回一个ArrayList集合,集合中的每一个元素是一个数组,每个数组对应结果集中的一行数据,其中结果集中每一列对应数组的一个元素 MapProcessor HashMap处理器,返回一个HashMap, 结果集中只有一行数据,其中结果集合中每一列的列名和列值对应HashMap的一个关键字和相应的值 MapListProcessor HashMa

12、p集合处理器,返回一个ArrayList集合,集合中的每一个元素是一个HashMap,每个HashMap对应结果集中的一行数据, 其中结果集合中每一列的列名和列值对应HashMap的一个关键字和相应的值,内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,BeanProcessor 值对象处理器,返回一个JavaBean,结果集中只有一行数据,该处理器能自动把结果集中的值按列的名称映射到javaBean中,如结果集中有名称为”name”的字段,那么只要该java对象中有getName()方法就能把结果集合中”name”对应的值映射到对象中 BeanListProces

13、sor 值对象集合处理器,返回一个ArrayList集合,集合中的每一个元素是一个javaBean,每个javaBean对应结果集合中一行数据,其中每个JavaBean中的数据映射关系和BeanProcess同理 ColumnProcessor 列值处理器,返回一个Java对象,结果集中只有一行数据,该对象对应与结果集中某一列的值,该处理器通过结果集列的序号或名称来确定列,内部经营,人员经营,成果经营,客户经营,找出发展机会并进行初步筛选,项目经营,自定义的结果集处理器 public class CustomProcessor extends BaseProcessor public Object processResultSet(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论