
用 scriptlet 就可以了
<%
这里是你的 CRUD(增删改查) 的代码
%>
建议你把这些 CRUD 的 *** 作写到 Servlet 内 会比较 方便`
package comoadaoimpl; import javasqlConnection; </SPAN></li>import javasqlPreparedStatement; </SPAN></li>import javasqlResultSet; </SPAN></li>import javasqlSQLException; </SPAN></li>import javasqlStatement; </SPAN></li>import javautilList; </SPAN></li>import javautilMap; </SPAN></li> import orgapachecommonsloggingLog; </SPAN></li>import orgapachecommonsloggingLogFactory; </SPAN></li> import comoacoreDynaForm; </SPAN></li>import comoadaoDao; </SPAN></li>import comoajdbcConnectionFactory; </SPAN></li>import comoajdbcDaoAccessException; </SPAN></li>import comoajdbcDybaBean; </SPAN></li>import comoajdbcJdbcPage; </SPAN></li>import comoajdbcPage; </SPAN></li>import comoajdbcRowsDynaClass; </SPAN></li> / </SPAN></li> 基类DAO,实现一些基本共有方法 @author Gao_wx Mar 26, 2008 / public class BaseDao implements Dao { </SPAN></li> protected Log logger = LogFactorygetLog(BaseDaoclass); </SPAN></li> // 获取数据库链接 </SPAN></li> protected Connection getConnection() { </SPAN></li> return ConnectionFactorygetConnection(); </SPAN></li> } // 在此链接上,根据sql语句获取List </SPAN></li> protected List<DybaBean> getList(Connection conn, String sql) </SPAN></li> throws DaoAccessException { </SPAN></li> try { </SPAN></li> Statement st = conncreateStatement( ResultSetTYPE_SCROLL_INSENSITIVE, ResultSetCONCUR_READ_ONLY); ResultSet rs = stexecuteQuery(sql); return getList(rs); </SPAN></li> } catch (SQLException e) { </SPAN></li> throw new DaoAccessException(sql, e); </SPAN></li> } } // 根据Result获取List </SPAN></li> protected List<DybaBean> getList(ResultSet rs) throws SQLException { </SPAN></li> RowsDynaClass rsdc = new RowsDynaClass(rs); </SPAN></li> return rsdcgetRows(); </SPAN></li> } // 根据sql语句获取List </SPAN></li> protected List<DybaBean> getList(String sql) throws DaoAccessException { </SPAN></li> Connection conn = getConnection(); return getList(conn, sql); </SPAN></li> } // 在此连接上,根据sql语句,id加载一条记录 </SPAN></li> protected DybaBean loadById(Connection conn, String sql, int id) </SPAN></li> throws DaoAccessException { </SPAN></li> try { </SPAN></li> PreparedStatement pst = connprepareStatement(sql, ResultSetTYPE_SCROLL_INSENSITIVE, ResultSetCONCUR_READ_ONLY); pstsetInt(1, id); </SPAN></li> ResultSet rs = pstexecuteQuery(); List list = getList(rs); if (listsize() > 1) { </SPAN></li> loggerwarn("加载了2条以上的记录,请检查sql:" + sql); </SPAN></li> } if (listsize() == 0) { </SPAN></li> loggerwarn("数据库没有此记录!"); </SPAN></li> return null; </SPAN></li> } else { </SPAN></li> return (DybaBean) listget(0); </SPAN></li> } } catch (SQLException e) { </SPAN></li> throw new DaoAccessException(sql, e); </SPAN></li> } } // 根据sql语句,id,加载一条记录 </SPAN></li> protected DybaBean loadById(String sql, int id) throws DaoAccessException { </SPAN></li> Connection conn = getConnection(); return loadById(conn, sql, id); </SPAN></li> } // 在此连接上,根据Sql和id删除一条记录,返回影响行数 </SPAN></li> protected int deleteById(Connection conn, String sql, int id) </SPAN></li> throws SQLException { </SPAN></li> PreparedStatement pst = connprepareStatement(sql, ResultSetTYPE_SCROLL_INSENSITIVE, ResultSetCONCUR_READ_ONLY); pstsetInt(1, id); </SPAN></li> int del = pstexecuteUpdate(); </SPAN></li> return del; </SPAN></li> } // 根据sql语句,id删除一条记录 </SPAN></li> protected int deleteById(String sql, int id) throws DaoAccessException { </SPAN></li> Connection conn = getConnection(); try { </SPAN></li> int del = deleteById(conn, sql, id); </SPAN></li> return del; </SPAN></li> } catch (SQLException e) { </SPAN></li> throw new DaoAccessException(sql, e); </SPAN></li> } } protected Page getPage(DynaForm form, String sql) throws DaoAccessException { </SPAN></li> Connection conn = getConnection(); Page page = getPage(conn, form, sql); return page; </SPAN></li> } // 获取分页对象 </SPAN></li> protected Page getPage(Connection conn, DynaForm form, String sql) </SPAN></li> throws DaoAccessException { </SPAN></li> int p = formgetInt("p"); </SPAN></li> if (p < 1) { </SPAN></li> p = 1; </SPAN></li> } int size = formgetInt("size"); </SPAN></li> if (size < 10) { </SPAN></li> size = 10; </SPAN></li> } Page page; try { </SPAN></li> page = new JdbcPage(conn, sql, p, size); </SPAN></li> } catch (SQLException e) { </SPAN></li> throw new DaoAccessException(sql, e); </SPAN></li> } return page; </SPAN></li> } }
String ID=requestgetparameter("ID");
Connection conn=null;
preparedmenter pstmt=null;
String sql="";
int count=0;
try{
conngetConnPool();\\连接池,自己网上找就行
sql="delete from where id="
connparperementer(sql);
pstmtsetString(ID);
count=pstmtexecuteUpdate();
if(count>=1)
outprintln("删除成功");
}catch(EXception e )
{outprintln("删除失败");}
finally{释放资源,这你肯定会}
public void addshops(ShopInfo ui){
String sql = "update PerfectShop set 字段名= where 字段名(主键)=";
try{
pre = connprepareStatement(sql);
//设置相应的字段值
presetString(1,字段值);
int n = preexecuteUpate();
//可以根据n来判断是否执行成功
}catch(Exception e){
eprintStackTrace();
}
}
另外你上面的rs = preexecuteQuery();
应该改成preexecuteUpdate();它返回的是受影响的行数
查询的时候用executeQuery();
以上就是关于如何在jsp页面的迭代器下,根据id对一条数据进行增删查改全部的内容,包括:如何在jsp页面的迭代器下,根据id对一条数据进行增删查改、JSPWeb开发中一个关于数据库 *** 作类该这么写,类中要带有查询,增删改,以及关闭数据库 *** 作方法,请高手指、jsp删除代码 (有一个删除连接,如何删除数据库的内容,通过ID删除)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)