spring知识点4

来源:互联网 发布:男士防晒霜 知乎 编辑:程序博客网 时间:2024/06/09 18:22

 Spring对持久层的支持:① JDBC,② O/R Mapping(Hibernate,TopLink等)

一、Spring对持久层支持采用的策略:

  1、Spring对持久层“不发明重复的轮子”,即没有重新实现新的持久层方案,对现有持久层方案做封装,更利于使用。

  2、采用DAO模式

  3、提供了大量的模板类来简化编程(HibernateDaoSupport,JdbcTemplate等)

  4、重新设计了一套完善的异常体系结构

    ① 类型丰富,细化异常类型

    ② 全都是运行时异常(RuntimeException)

二、Spring对JDBC的支持

  1、配置数据源

    方式一:采用Spring内置的数据源,Spring内置实现 DriverManagerDataSource

<bean id="dataSource"   class="org.springframework.jdbc.datasource.DriverManagerDataSource">

         <property name="driverClassName">

         <value>com.mysql.jdbc.Driver</value>

         </property>

         <property name="url">

         <value>jdbc:mysql://localhost:3306/hibdb</value>

         </property>

         <property name="username">

         <value>root</value>

         </property>

         <property name="password">

         <value>windows</value>

         </property>

       </bean>

    方式二:采用开源数据库产品如DBCP

DBCP提供的BasicDataSource

    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">

    <property name="driverClassName">

      <value>com.mysql.jdbc.Driver</value>

    </property>

    <property name="url">

      <value>jdbc:mysql://localhost:3306/hibdb</value>

    </property>

    <property name="username">

      <value>root</value>

    </property>

    <property name="password">

      <value>windows</value>

    </property>

    </bean>

    方式三: 直接使用容器提供的数据源(如Tomcat,Weblogic,Sun Application Server)

    JNDI数据源:(mysql5,tomcat5.5)

       step1:

       在server.xml中:

       <Resource name="jdbc/mydatasource" auth="Container" description="DB Connection"

    type="javax.sql.DataSource" username="root" password="windows"

    driverClassName="com.mysql.jdbc.Driver"

    url="jdbc:mysql://localhost:3306/tarena" maxActive="5" />

    step2:

    在context.xml中(conf\context.xml):

    <ResourceLink   name="jdbc/mydatasource"       global="jdbc/mydatasource"   type="javax.sql.DataSourcer"/>

    step3:

    在beans-config.xml:

    <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">

        <property name="jndiName">

          <value>java:comp/env/jdbc/mydatasource</value>

        </property>

      </bean>

2、配置JdbcTemplate模板类(封装了绝大多数数据库操作)

3、配置DAO

4、配置Service

0 0
原创粉丝点击