您的位置:首页 > 编程语言 > Java开发

实现Spring连接数据库

2011-05-16 19:51 411 查看
1.创建数据库

mysql工具SQLyog创建mytest

2.创建项目 SpringDBTest

3.myspring.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean id="dbtest" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource">
<ref local="dataSource"/>
</property>

</bean>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close" >
<property name="driverClassName">
<value>org.gjt.mm.mysql.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://127.0.0.1/mytest</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>111111</value>
</property>
</bean>

</beans>

在src文件夹下创建myspring.xml

4.创建抽象类SQLStatement

package tm.statement;

public abstract class SqlStatement {
final public static String createSqlString="create table mytable(id int,cname varchar(50))";
final public static String insertData1String="insert into mytable values(1,'name1')";
final public static String insertData2String="insert into mytable values(2,'name2')";;
final public static String insertData3String="insert into mytable values(3,'name3')";;
final public static String selectSqlString="select * from mytable";

}

5.新建类SpringtoResultSetInfoBean

package tm.bean;

public class SpringtoResultSetInfoBean {
private int id;
private String templatename;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTemplatename() {
return templatename;
}
public void setTemplatename(String templatename) {
this.templatename = templatename;
}

}

6.新建测试类Test

package tm.test;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowCallbackHandler;
import org.springframework.jdbc.core.RowCountCallbackHandler;

import tm.bean.SpringtoResultSetInfoBean;
import tm.statement.SqlStatement;

public class SpringTest {
public static void main(String[] args) {
Resource resource=new ClassPathResource("myspring.xml");
BeanFactory factory=new XmlBeanFactory(resource);

JdbcTemplate jt=(JdbcTemplate)factory.getBean("dbtest");

//jt.execute(SqlStatement.createSqlString);
jt.execute(SqlStatement.insertData1String);
jt.execute(SqlStatement.insertData2String);
jt.execute(SqlStatement.insertData3String);

RowCountCallbackHandler rccHandler=new RowCountCallbackHandler();
jt.query(SqlStatement.selectSqlString, rccHandler);

System.out.println("结果集中的列数量"+rccHandler.getColumnCount());
System.out.println("结果集中的行的数量"+rccHandler.getRowCount());
System.out.println("结果集中的结果");

String[] strings=rccHandler.getColumnNames();
for(int i=0;i<strings.length;i++)
{
System.out.print(strings[i]+" ");
}

final ArrayList list=new ArrayList();

jt.query(SqlStatement.selectSqlString, new RowCallbackHandler(){

public void processRow(ResultSet resultSet) throws SQLException {
SpringtoResultSetInfoBean sBean=new SpringtoResultSetInfoBean();
sBean.setId(resultSet.getInt(1));
sBean.setTemplatename(resultSet.getString(2));
list.add(sBean);
}
}
);

for (int i = 0; i < list.size(); i++) {
SpringtoResultSetInfoBean sBean=(SpringtoResultSetInfoBean)list.get(i);
System.out.println("/n"+" "+sBean.getId());
System.out.println(" "+sBean.getTemplatename());
}
System.out.println("/n完成!");

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: