SpringJdbc的一个简单示例

来源:互联网 发布:新浪财经宏观经济数据 编辑:程序博客网 时间:2024/06/12 01:17

本来是想演示springJDBC与hibernate、EasyDBO性能比较的,可是为了让大家看的更清楚些我就做了这个小例子。
SpringJDBC是在原有jdbc的操作基础上进行的封装,只要你原来用过jdbc,知道自己要用jdbc干什么,那么你就会发现它的便利所在!

1.首先我们创建一个project,在src下添加一个package,就叫com.f9inux。

2.然后我们导入springjdbc所依赖的包(注:spring.jar、spring-jdbc.jar、spring-support.jar、spring-beans.jar、spring-context.jar、srping-dao.jar、commons-dbcp.jar、commons-logging.jar、commons-pool.jar)数据库我用的sqlserver2000,最后再把它的驱动包放到工程里

3.在src下添加一个配置文件,起个名就叫Bean.xml吧。内容如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
  <property name="driverClassName" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>
  <property name="url" value="jdbc:microsoft:sqlserver://100.100.100.92:1433;databaseName=gwybm"/>
  <property name="username" value="sa"/>
  <property name="password" value=""/>
 </bean>
 <bean id="op" class="com.f9inux.Op_db">
  <property name="dataSource" ref="dataSource"/>
 </bean>
</beans>

4.在com.f9inux创建一个class,就叫Op_db。里面的代码如下
package com.f9inux;
import javax.sql.DataSource;

import org.springframework.jdbc.core.support.JdbcDaoSupport;
import org.springframework.jdbc.support.rowset.SqlRowSet;

public class Op_db extends JdbcDaoSupport {

 public SqlRowSet get_info(){
  return this.getJdbcTemplate().queryForRowSet("select * from dm_bm");
 }
}

这里我只做了一个查询,其他的功能大家自己扩展~~!

5.在com.f9inux创建一个class,就叫它TestJdbc吧。代码如下
package com.f9inux;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import org.springframework.jdbc.support.rowset.SqlRowSet;

public class TestJdbc {

 /**
  * @param args
  */
 public static void main(String[] args) {
  ApplicationContext ctx=new FileSystemXmlApplicationContext("src/Bean.xml");
  Op_db op=(Op_db)ctx.getBean("op");
  SqlRowSet dr=op.get_info();
  while(dr.next()){
   System.out.println(dr.getObject(1)+" "+dr.getObject(2)+" "+dr.getObject(3));
  }
 }

}

这个类主要是测试用,大家在这个页面run Application就可以看见效果了!

总结:用惯了jdbc开发的人,突然间看见dao部分少了try、catch、con.close()...一定有点不放心吧?这个就需要你们自己去做压力试验了~~嘿嘿。以后我还会做一些其他通俗易懂的例子,探讨如何在项目中应用这些特性,希望大家多拍板砖,共同进步~~!

原创粉丝点击