<p class="MsoNormal" style=""><span style="" lang="EN-US"><span style=""><span style="font-family: Times New Roman;"><span style="font-size: small;">1,</span><span style="font: 7pt 'Times New Roman';"> </span></span></span></span><span style=""><span style="font-size: small;">在三层架构中,存储过程很少使用,除了在需要利用数据库的一些特性的时候。</span></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""><span style="font-size: small;"><textarea cols="66" rows="15" name="code" class="java"> static void ps() throws SQLException {
Connection conn = null;
CallableStatement cs = null;
ResultSet rs = null;
try {
// 2.建立连接
conn = JdbcUtils.getConnection();
// conn = JdbcUtilsSing.getInstance().getConnection();
// 3.创建语句
String sql = "{ call addUser(?,?,?,?) } ";
cs = conn.prepareCall(sql);
cs.registerOutParameter(4, Types.INTEGER);//第四个参数为输出参数
cs.setString(1, "ps name");
cs.setDate(2, new java.sql.Date(System.currentTimeMillis()));
cs.setFloat(3, 100f);
cs.executeUpdate();
int id = cs.getInt(4);
System.out.println("id=" + id);
} finally {
JdbcUtils.free(rs, cs, conn);
}
}</textarea></span></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""><span style="font-size: small;">2,DAOFactory的写法:</span></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""><span style="font-size: small;"> <textarea cols="64" rows="15" name="code" class="java">public class DaoFactory {
private static UserDao userDao = null;
private static DaoFactory instance = new DaoFactory();
private DaoFactory() {
try {
Properties prop = new Properties();
InputStream inStream = DaoFactory.class.getClassLoader()
.getResourceAsStream("daoconfig.properties");
prop.load(inStream);
String userDaoClass = prop.getProperty("userDaoClass");
Class clazz = Class.forName(userDaoClass);
userDao = (UserDao) clazz.newInstance();
} catch (Throwable e) {
throw new ExceptionInInitializerError(e);
}
}
public static DaoFactory getInstance() {
return instance;
}
public UserDao getUserDao() {
return userDao;
}
}</textarea></span></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""><span style="font-size: small;"> </span></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""><span style="font-size: small;"><textarea cols="66" rows="15" name="code" class="java"> static void ps() throws SQLException {
Connection conn = null;
CallableStatement cs = null;
ResultSet rs = null;
try {
// 2.建立连接
conn = JdbcUtils.getConnection();
// conn = JdbcUtilsSing.getInstance().getConnection();
// 3.创建语句
String sql = "{ call addUser(?,?,?,?) } ";
cs = conn.prepareCall(sql);
cs.registerOutParameter(4, Types.INTEGER);//第四个参数为输出参数
cs.setString(1, "ps name");
cs.setDate(2, new java.sql.Date(System.currentTimeMillis()));
cs.setFloat(3, 100f);
cs.executeUpdate();
int id = cs.getInt(4);
System.out.println("id=" + id);
} finally {
JdbcUtils.free(rs, cs, conn);
}
}</textarea></span></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""><span style="font-size: small;">2,DAOFactory的写法:</span></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""><span style="font-size: small;"> <textarea cols="64" rows="15" name="code" class="java">public class DaoFactory {
private static UserDao userDao = null;
private static DaoFactory instance = new DaoFactory();
private DaoFactory() {
try {
Properties prop = new Properties();
InputStream inStream = DaoFactory.class.getClassLoader()
.getResourceAsStream("daoconfig.properties");
prop.load(inStream);
String userDaoClass = prop.getProperty("userDaoClass");
Class clazz = Class.forName(userDaoClass);
userDao = (UserDao) clazz.newInstance();
} catch (Throwable e) {
throw new ExceptionInInitializerError(e);
}
}
public static DaoFactory getInstance() {
return instance;
}
public UserDao getUserDao() {
return userDao;
}
}</textarea></span></span></p>
<p class="MsoNormal" style=""><span style=""></span></p>
<p class="MsoNormal" style=""><span style=""><span style="font-size: small;"> </span></span></p>