中国开发网: 论坛: 程序员情感CBD: 贴子 440630
nostalgic: 测试代码.
package org.springframework.jdbc.core;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import org.springframework.jdbc.datasource.DriverManagerDataSource;
import org.springframework.jdbc.support.JdbcAccessor;

public class JdbcTemplateReTests extends JdbcAccessor {

public static void main(String[] args) throws SQLException {
final String jdbcUrl = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=arch";

final String uname = "XX";

final String pwd = "XX";

final String className = "com.microsoft.jdbc.sqlserver.SQLServerDriver";

DriverManagerDataSource ds = new DriverManagerDataSource();

ds.setDriverClassName(className);
ds.setUrl(jdbcUrl);
ds.setUsername(uname);
ds.setPassword(pwd);
MyJdbcTemplate template = new MyJdbcTemplate(ds);
if (ds == template.getDataSource()) {
System.out.println("get the ds");
} else {
System.out.println("there are different");
}
final String sql = "UPDATE T_user SET userName = 'chen' WHERE userID = ?";
final int idParam = 1;
Dispatcher d = new Dispatcher(idParam, sql);
if (d.createPreparedStatement(ds.getConnection()) instanceof PreparedStatement) {
System.out.println("Dispatcher instanceof PreparedStatement ");
}
int rowsAffected = template.update(d);
System.out.println("update\t" + rowsAffected + "\trows");

}

private static class Dispatcher implements PreparedStatementCreator,
SqlProvider {

private int id;

private String sql;

public Dispatcher(int id, String sql) {
this.id = id;
this.sql = sql;
}

public PreparedStatement createPreparedStatement(Connection conn)
throws SQLException {
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(1, id);
return ps;
}

public String getSql() {
return sql;
}
}

}

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录