网站大量收购独家精品文档,联系QQ:2885784924

[工程科技]JDBC.ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工程科技]JDBC

当不直接使用SQL语句,而是调用数据库中的Store Procedure时,要用到Callable Statement CallabelStatement从PreparedStatement继承 使用Callable Statement SQL与Java数据类型的对应关系 DTO (Data transmission Object ) 也可以称为VO(ValueObject) 跟表做映射,用作数据传输 要求: 1.属性(property)和数据库表的列(column)作对应,一般情况下属性名应该和列名一致,一个instance对应一条记录 2.必须提供相应的get和set方法 3.必须提供无参数的构造器 4.如果需要在网络传输,还要实现Serializable接口 DTO模式 public class Student { private int id ; private String name ; private String sex; private int age ; private String email; get和set方法….. } DTO模式示例 DAO (Data Access Object)数据访问接口 封装对数据库的操作(比如最基本的CRUD操作) DAO模式 public interface UserDAO { User getUserById(int id); ListUser getAllUser(); boolean addUser(User user); boolean removeUserById(int id); } public interface BookDAO { Book getBookById(int id); ListBook getAllBook(); boolean addBook(Book user); boolean removeBookById(int id); } DAO接口示例 public interface BasicDaoIf { //增加 public boolean save(Object object) throws Exception; //删除 public boolean delete(Object object)throws Exception; //修改 public boolean update(Object object)throws Exception; //查询 public List find(Class classType,String sql) throws Exception; //按Id查询 public Object get(Class classType,int id) throws Exception; } 通过反射机制实现BasicDao,所有DAO都可以调用BasicDao完成功能实现.返回对应的结果 User user = (User)basicDao.get(User.class,1); Book book =(Book)basicDao.get(Book.class,1); 抽象DAO接口示例 可滚动的ResultSet 可更新的ResultSet 事务 批处理 JDBC高级课题 要使用可滚动的结果集,必须使用不同于前面所定义的Statement: Statement stmt = conn.createStatement(type,concurrency); PreparedStatement stmt = conn.prepareStatement(sql,type,concurrency) 可滚动的ResultSet 可滚动的ResultSet ResultSet的Type 说明 TYPE_FORWARD_ONLY 结果集不能滚动 TYPE_SCROLL_INSENSITIVE 结果集可滚动,但对数据库的变化不敏感 TYPE_SCROLL_SENSITIVE 结果集可以滚动,并且对数据库的变化敏感 可滚动的ResultSet ResultSet的Concurrency 说明 CONCUR_READ_ONLY 结果集不可用于更新数据库 CONCUR_UPDATABLE 结果集可以用于更新数据库 可滚动结果集中的方法: first last beforeFirst afterLast isFirst isLast isBeforeFirst isAfterLast relative next previous absolute 可滚动的结果集 可更新的结果集:可以直接通过结果集来更新(insert/update/delete)数据库表

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档