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

SSHSpring访问数据库.pptVIP

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
访问数据库 主讲人:孙鑫 Spring的DAO支持 Spring提供的DAO(数据访问对象)支持主要的目的是便于以标准的方式使用不同的数据访问技术, 如JDBC,Hibernate或者JDO等。它不仅可以让你方便地在这些持久化技术间切换, 而且让你在编码的时候不用考虑处理各种技术中特定的异常。 一致的异常层次 Spring提供了一种简便的方法,把特定于某种技术的异常,如SQLException, 转化为自己的异常,这种异常属于以DataAccessException 为根的异常层次。这些异常封装了原始异常对象,这样就不会有丢失任何错误信息的风险。 除了对JDBC异常的封装外,Spring也对Hibernate异常进行了封装,把它们从一种专有的受查异常 (Hibernate3.0以前的版本),转化为一系列抽象的运行时异常(对JDO也是这样)。 它可以让你轻松处理大多数持久化异常(这些异常大多是不可恢复的,而且只出现在特定 的层次),而不再需要讨厌的样板式catch/throw代码块和异常声明。你仍然可以在需要 的地方捕获并处理这些异常。就像我们上面提到的,JDBC异常(包括特定于某种数据库 方言的异常)也可以被转化为同样的异常层次,这意味着你可以在一致的编程模型下,通 过JDBC来执行某些操作。 上述情况适用于各种使用模板方式访问ORM的版本。如果使用拦截器方式,你在应用中就得自己小心处理HibernateException、 JDOException等,最好是委托给 SessionFactoryUtils的 convertHibernateAccessException、 convertJdoAccessException等方法。这些方法可以把相应的异常转化为与org.springframework.dao中定义的异常层次相兼容的异常。 由于JDOException是unchecked异常,它们也可以被简单地抛出, 尽管这在异常处理方面牺牲了通用的DAO抽象。 Spring的DataAccessException异常层次位于org.springframework.dao包中。 一致的DAO支持抽象类 为了便于以一种一致的方式使用各种数据访问技术,如JDBC、JDO和Hibernate, Spring提供了一套抽象的DAO类供你继承。这些抽象类提供一些方法来设置数据源,以及你正在使用的技术中专有的一些配置设定。 Dao支持类: JdbcDaoSupport - JDBC数据访问对象的基类。需要设置数据源,同时为子类提供JdbcTemplate。 HibernateDaoSupport - Hibernate数据访问对象的基类。需要设置SessionFactory,同时为子类提供HibernateTemplate。也可以选择直接通过HibernateTemplate来初始化, 这样就可以重用后者的设置,例如SessionFactory,flush的方式,异常解释器等等。 JdoDaoSupport - JDO数据访问对象的基类。需要设置PersistenceManagerFactory,同时为子类提供JdoTemplate。 配置数据源 为了对数据库进行JDBC操作,你必须首先得到一个数据库连接。你可以采用传统的数据库访问方式,通过Class.forName()来加载与注册数据库驱动,然后通过DriverManager.getConnection()来得到数据库连接。然而采用这种方式,你需要自己去管理数据库连接,无法得到数据源的好处。在Spring的DAO框架中,Connection对象是通过DataSource得到的。Spring提供了几种选择让你的应用程序获得DataSource。 使用DriverManagerDataSource Spring发行版提供一个非常轻量级的DataSource实现:DriverManagerDataSource,这个类对于脱离Web容器的单元测试是十分便利的。在产品阶段我们还是应该使用功能更为强大的第三方的数据源实现。 DriverManagerDataSource和传统的方式一样获取JDBC连接。 下面这个例子说明如何配置DriverManagerDataSource: DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setDriverClassName( com.mysql.jdbc.Driver); dataSource.setUrl( jdbc:mysql://localhost:3306/bookstore); dataSource

文档评论(0)

wuyoujun92 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档