这篇文章貌似只是帮助理解并沒有什么实用性。还讲了下如何配置数据源也就是建立数据库连接
在开发应用时,总少不了和数据库打交道 那在处理数据库访问功能時,需要:初始化数据访问框架打开连接,读取和写入数据处理各种异常,关闭连接 如果上述操作出现问题,就可能损坏和删除掉企业数据其实我们在开发项目时,应该把大部分精力放在编写业务相关的代码上即读取和写入数据。而不是处理上述问题对吧。
先介绍一下配置数据源 和 数据访问技术:
配置数据源:只是在我们的应用和数据库之间建立一个连接 使我们的应用可以访问数据库。而访問数据库也有很多种方式可以选择这就是数据访问技术了。
数据访问技术有多种:JDBCJPA,Hibernate数据访问需要做的事:把应用的实体类和数据庫表进行映射,对数据库数据进行增删改查这写事情在不同的数据访问技术中有不同的方法。
其实呢使用哪种方式配置数据源和使用哪种数据访问技术好像是没有关系的。 在开发过程中配置数据库应该只是一次性的工作,数据访问是一直在使用的如果不是要配置整個应用,在开发时只需要知道怎么获取数据库的连接,使用的哪种数据库访问技术也就是持久化框架就可以开发持久层了不用关心应鼡程序 是怎么配置数据源建立数据库连接的。
Spring和数据访问技术:Spring自带了一组数据访问框架集成了多种数据访问技术。Spring对上述3种持久化方式都提供支持也就是Spring对Spring能够帮助我们消除持久化代码中那些单调枯燥的数据访问逻辑,专注于应用程序中数据的管理 那就在介绍某种數据访问技术时,介绍一下它没有Spring的帮助是怎么工作的借助于Spring对它的支持,它是怎么简化了工作专注于数据管理的。
在Spring配置数据源总結
数据源有两种:从连接池获取和不从连接池获取建议使用从连接池获取连接的数据源。而池连接呢 通过应用服务器的JNDI获取数据源更好数据库连接池,性能更好至于怎么好……
在Spring上下文中配置数据源bean有多种方式:通过JDBC驱动程序定义数据源,通过JNDI查找数据连接池的数據源。
检索JNDI中的任何对象(包括数据源)并将装配到Spring上下文中使之成为Spring的bean。
jndi-name属性用于指定JNDI中资源的名称根据指定的名称查找数据源。如果應用程序运行在Java应用服务器中你需要将resource-ref属性设置为true,这样给定的jndi-name将会自动添加“java:comp/env/”前缀
在Spring中配置数据源连接池
如果不能从JNDI中查找数据源,那么下一个选择就是直接在Spring中配置数据源连接池
通过JDBC驱动 定义数据源
这种数据源配置方式的缺点:其中SingleConnectionDataSource在每个连接请求时都会返回同┅个的连接有且只有一个数据库连接,不支持多线程DriverManagerDataSource和SimpleDriverDataSource虽然支持多线程,但是每次请求连接都会创建新的连接没有连接池功能,性能不佳
URL。最后username和password用于在连接数据库时进行认证。这也是配置一个数据源(数据库连接必须的)