NCV5数据库操作.ppt_第1页
NCV5数据库操作.ppt_第2页
NCV5数据库操作.ppt_第3页
NCV5数据库操作.ppt_第4页
NCV5数据库操作.ppt_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

NC502客户化开发培训 用友软件股份有限公司集团及行业客开管理部张时栋2008年3月20日 NC数据库操作 NCV5以前版本的典型代码1 定义sql语句 StringstrSql select From where 2 定义连接 con getConnection 3 定义stmt stmt con prepareStatement strSql 4 给条件赋值 stmt setString 1 key 5 执行查询 ResultSetrs stmt executeQuery 6 处理结果集 while rs next rs getString 1 rs getDecimal 2 7 处理异常关闭连接 stmt close con close 弊端 嵌入大量SQL语句 冗余是不可避免的一次又一次地编写相同的普通代码 工作效率低代码难以维护 表结构一点小改动就难以承受数据库访问异常不统一 V5新的数据库访问框架JDBCFrameWork1 灵活2 简洁3 高的容错性4 异常的统一处理 核心类与工具类PersistenceManager管理连接会话的生命周期 并提供了对单表VO操作的常用实现JdbcSession对JDBC的API封装和简化SQLParameter封装执行SQL的参数ResultSetProcessor结果集处理回调接口 封装结果集处理DbException封装不同数据库的异常 和统一处理不同数据库的ErrorCodeBaseDAO IUAPQueryBS IVOPersistence管理连接会话的生命周期 提供了对单表VO操作的常用实现 1 前台数据访问使用IVOPersistence服务组件 进行增删改操作 使用IUAPQueryBS服务组件 进行查询操作 IUAPQueryBSiUAPQueryBS IUAPQueryBS NCLocator getInstance lookup IUAPQueryBS class getName iUAPQueryBS executeQuery 2 后台数据访问使用BaseDAO工具类 进行单表对象的CRUD操作 使用PersistenceManager 进行单表对象的CRUD操作newBaseDAO insertObject JdbcSession的创建PersistenceManagersessionManager PersistenceManager getInstance try JdbcSessionsession sessionManager getJdbcSession 数据库访问操作session insert session update session query catch DbExceptione finally sessionManager release 需要关闭会话 JdbcSession基本操作1 无参查询Stringsql select frombd deptdoc 构造查询语句Listlist List session executeQuery sql newArrayListProcessor 2 有参查询Stringsql select frombd deptdocwheredept code SQLParameterparam newSQLParameter 构造参数对象param addParam aaa 添加参数Listlist List session executeQuery sql param newArrayListProcessor JdbcSession基本操作3 无参更新Stringsql updatebd deptdocsetdept code aaa wheredept code bbb session executeUpdate sql 4 有参更新Stringsql updatebd deptdocsetdept code aaa wheredept code SQLParameterparam newSQLParameter 构造参数对象param addParam bbb 添加参数session executeUpdate sql param JdbcSession基本操作5 无参批量更新Stringsql updatebd deptdocsetdept code aaa wheredept code bbb session addBatch sql 添加需要执行的同构SQLintrows session executeBatch 执行6 有参批量更新Stringsql updatebd deptdocsetdept code aaa wheredept code SQLParameterparam newSQLParameter 构造参数对象param addParam bbb 添加参数session addBatch sql param 添加需要执行的同构SQLintrows session executeBatch 执行 特殊参数1 Null参数param addNullParam java sql Types INTEGER 2 Blob参数param addBlobParam newObject 3 Clob参数param addClobParam newString 结果集合的处理 ArrayProcessor数组处理器 返回一个对象数组 结果集中只有一行数据 其中结果集中每一列对应数组的一个元素ArrayListProcessor数组集合处理器 返回一个ArrayList集合 集合中的每一个元素是一个数组 每个数组对应结果集中的一行数据 其中结果集中每一列对应数组的一个元素MapProcessorHashMap处理器 返回一个HashMap 结果集中只有一行数据 其中结果集合中每一列的列名和列值对应HashMap的一个关键字和相应的值MapListProcessorHashMap集合处理器 返回一个ArrayList集合 集合中的每一个元素是一个HashMap 每个HashMap对应结果集中的一行数据 其中结果集合中每一列的列名和列值对应HashMap的一个关键字和相应的值 BeanProcessor值对象处理器 返回一个JavaBean 结果集中只有一行数据 该处理器能自动把结果集中的值按列的名称映射到javaBean中 如结果集中有名称为 name 的字段 那么只要该java对象中有getName 方法就能把结果集合中 name 对应的值映射到对象中BeanListProcessor值对象集合处理器 返回一个ArrayList集合 集合中的每一个元素是一个javaBean 每个javaBean对应结果集合中一行数据 其中每个JavaBean中的数据映射关系和BeanProcess同理ColumnProcessor列值处理器 返回一个Java对象 结果集中只有一行数据 该对象对应与结果集中某一列的值 该处理器通过结果集列的序号或名称来确定列 自定义的结果集处理器publicclassCustomProcessorextendsBaseProcessor publicObjec

温馨提示

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

评论

0/150

提交评论