這道題我在好多個公司都考了,現(xiàn)在總結(jié)下來
?
寫一種數(shù)據(jù)庫操作
?
最通用的答案是使用數(shù)據(jù)源的
?
1、完整的,基于struts框架的
?
//取得當(dāng)前模型 struts
ServletContext context = getServlet().getServletContext();
//指定配置文件???????
ModuleConfig moduleConfig = ModuleUtils.getInstance().getModuleConfig(request, context);
?
//取得配置文件中指定的數(shù)據(jù)源
DataSource dataSource = (DataSource) context.getAttribute(key + moduleConfig.getPrefix());
?
//取得數(shù)據(jù)庫連接
Connection conn = dataSource.getConnection();
?
//準(zhǔn)備sql操作
ps = conn.prepareStatement(sql);
?
//sql問中參數(shù)綁定
statement.setString(綁定參數(shù)位置, 所需綁定的參數(shù));
?
//執(zhí)行sql
rs = ps.executeQuery();
?
//結(jié)果rs保存
??while (rs.next()) {
???rs.getInt("aa");
???rs.getString("bb");
??}
?
2、簡單的
//取得數(shù)據(jù)庫連接
Connection conn = dataSource.getConnection();
?
//準(zhǔn)備sql操作
ps = conn.prepareStatement(sql);
?
//執(zhí)行sql
rs = ps.executeQuery();
?
//結(jié)果rs保存
??while (rs.next()) {
???rs.getInt("aa");
???rs.getString("bb");
??}