知识大全 Spring 数据源配置与应用

Posted 操作

篇首语:真正的知识是道德。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Spring 数据源配置与应用相关的知识,希望对你有一定的参考价值。

Spring 数据源配置与应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  Spring 数据源配置与应用

  Spring对数据库操作都依赖数据源

  Spring有默认的数据源实现 springframework jdbc datasource DriverManagerDataSource 但也可以配置其他的数据源实现 比如DBCP的数据源public class BasicDataSource  implements javax sql DataSource

  一旦获取到数据源DataSource实例 就可以通过DataSource获取到数据库连接 操作数据库

  下面是Spring数据源的一个简单配置和应用     应用环境 MySQL

    drop table if exists user; /*==============================================================*/ /* Table: user                                                  */ /*==============================================================*/ create table user (    id                   bigint AUTO_INCREMENT not null    name                 varchar( )    age                  int    primary key (id) );

    public class User     private Integer id;     private String name;     private Integer age;     public Integer getId()         return id;          public void setId(Integer id)         this id = id;          public String getName()         return name;          public void setName(String name)         this name = name;          public Integer getAge()         return age;          public void setAge(Integer age)         this age = age;     

    public interface IUserDAO     public void insert(User user);     public User find(Integer id);

    /** * Created by IntelliJ IDEA <br> * <b>User</b>: leizhimin<br> * <b>Date</b>: : : <br> * <b>Note</b>: 子类DAO */ public class UserDAO extends BaseDAO implements IUserDAO     public void insert(User user)         String name = user getName();         int age = user getAge() intValue();         Connection conn = null;         Statement stmt = null;         try             conn = getConnection();             stmt = conn createStatement();             stmt execute( INSERT INTO user (name age) + VALUES( + name + + age + ) );          catch (SQLException e)             e printStackTrace();                  finally             if (stmt != null)                 try                     stmt close();                                  catch (SQLException e)                     e printStackTrace();                                           if (conn != null)                 try                     conn close();                                  catch (SQLException e)                     e printStackTrace();                                                 public User find(Integer id)         Connection conn = null;         Statement stmt = null;         try             conn = getConnection();             stmt = conn createStatement();             ResultSet result = stmt executeQuery(                      SELECT * FROM user WHERE id= + id intValue());             if (result next())                 Integer i = new Integer(result getInt( ));                 String name = result getString( );                 Integer age = new Integer(result getInt( ));                 User user = new User();                 user setId(i);                 user setName(name);                 user setAge(age);                 return user;                       catch (SQLException e)             e printStackTrace();                  finally             if (stmt != null)                 try                     stmt close();                                  catch (SQLException e)                     e printStackTrace();                                           if (conn != null)                 try                     conn close();                                  catch (SQLException e)                     e printStackTrace();                                                return null;     

    /** * Created by IntelliJ IDEA <br> * <b>User</b>: leizhimin<br> * <b>Date</b>: : : <br> * <b>Note</b>: 基类DAO 提供了数据源注入 */ public class BaseDAO     private DataSource dataSource;     public DataSource getDataSource()         return dataSource;          public void setDataSource(DataSource dataSource)         this dataSource = dataSource;          public Connection getConnection()         Connection conn = null;         try             conn = dataSource getConnection();          catch (SQLException e)             e printStackTrace();                  return conn;     

    <?xml version= encoding= UTF ?> <!DOCTYPE beans PUBLIC //SPRING/DTD BEAN/EN          beans dtd > <beans>     <bean id= dataSource           class= springframework jdbc datasource DriverManagerDataSource >         <property name= driverClassName >             <value> mysql jdbc Driver</value>         </property>         <property name= url >             <value>jdbc:mysql://localhost: /springdb</value>         </property>         <property name= username >             <value>root</value>         </property>         <property name= password >             <value>leizhimin</value>         </property>     </bean>     <bean id= baseDAO class= lavasoft springnote ch _jdbc BaseDAO abstract= true >         <property name= dataSource >             <ref bean= dataSource />         </property>     </bean>     <bean id= userDAO           class= lavasoft springnote ch _jdbc UserDAO parent= baseDAO >     </bean> </beans>

    /** * Created by IntelliJ IDEA <br> * <b>User</b>: leizhimin<br> * <b>Date</b>: : : <br> * <b>Note</b>: 客户端测试 */ public class SpringDAODemo     public static void main(String[] args)         ApplicationContext context = new FileSystemXmlApplicationContext( D:\\\\_spring\\\\src\\\\\\\\lavasoft\\\\springnote\\\\ch _jdbc \\\\bean jdbc xml );         User user = new User();         user setName( caterpillar );         user setAge(new Integer( ));         IUserDAO userDAO = (IUserDAO) context getBean( userDAO );         userDAO insert(user);         user = userDAO find(new Integer( ));         System out println( name: + user getName());     

  运行结果

    log j:WARN No appenders could be found for logger (re CollectionFactory) log j:WARN Please initialize the log j system properly name: jdbctemplate Process finished with exit code

  注意 Spring配置文件中对继承的配置 DataSource注入方式 通过继承来注入 从而简化编程      上面用的是Spring的自己的数据源实现 现在假如要换成apache的DBCP数据源 则配置改为如下即可

    <bean id= dataSource       class= mons dbcp BasicDataSource singleton= true >    <property name= driverClassName >        <value> mysql jdbc Driver</value>    </property>    <property name= url >        <value>jdbc:mysql://localhost: /springdb</value>    </property>    <property name= username >        <value>root</value>    </property>    <property name= password >        <value>leizhimin</value>    </property></bean>

cha138/Article/program/Java/ky/201311/27993

相关参考

知识大全 Spring IOC配置与应用

SpringIOC配置与应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   &nbs

知识大全 Spring配置数据源四种方式

Spring配置数据源四种方式  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  使用spring框

知识大全 Spring配置DHCP数据源

Spring配置DHCP数据源  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  <beani

知识大全 配置Spring的Proxool数据源

配置Spring的Proxool数据源  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Proxo

知识大全 Spring 通过JDBC配置数据库

Spring通过JDBC配置数据库  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!XXXdataxm

知识大全 部署Spring与数据库的应用到CloudFoundry

部署Spring与数据库的应用到CloudFoundry  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 Spring 与 Log4J 进行动态日志配置切换

Spring与Log4J进行动态日志配置切换  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  引言

知识大全 spring事物配置示例

  以前项目中经常用spring事务处理还没有亲自配置过惭愧现在马上上路.  首先在spring容器中配置transactionManager这个有好多实现这里以HibernateTransactio

知识大全 详解Spring的配置文件

详解Spring的配置文件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  想必用过Spring的

知识大全 Spring配置Hessian

Spring配置Hessian  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  创建web工程并加