requestsetCharacterEncoding("utf-8");
responsesetContentType("text/html;charset=utf-8");
PrintWriter out = responsegetWriter();
//获取请求参数
int id = IntegerparseInt(requestgetParameter("id"));
//调用dao层将这个id的学生找到
StudentDao sd = new StudentDao();
Student s = sdfindById(id);
//将学生对象保存到request范围
requestsetAttribute("s", s);
//使用请求转发,让修改页面展示将要被修改的学生信息
requestgetRequestDispatcher("updatejsp")forward(request, response);
outflush();
outclose();
这是servlet里面的内容
public Student findById(int id){
Student s = null;
Connection conn = null;
PreparedStatement pstm = null;
ResultSet rs = null;
String sql = "select from student where stuid=";
//获取连接
conn = BaseDaogetConn();
try {
pstm = connprepareStatement(sql);
pstmsetInt(1, id);
//执行查询
rs = pstmexecuteQuery();
if(rsnext()){
int stuId = rsgetInt("stuid");
String stuName = rsgetString("stuname");
String stuSex = rsgetString("stusex");
int stuAge = rsgetInt("stuage");
String stuBid = rsgetString("stubid");
//先将数据封装到Student对象中
s = new Student(stuId, stuName, stuSex, stuAge, stuBid);
//将对象放入集合
}
} catch (SQLException e) {
eprintStackTrace();
}finally{
BaseDaocloseAll(conn, pstm, rs);
}
return s;
}
//这是写在Dao里面的内容
//这个是BaseDao 加载驱动 获取链接的
public class BaseDao{
//加载驱动
static{
try {
ClassforName("oraclejdbcdriverOracleDriver");
} catch (ClassNotFoundException e) {
eprintStackTrace();
}
}
//获取连接
public static Connection getConn(){
Connection conn = null;
try {
conn = DriverManagergetConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott", "130130");
} catch (SQLException e) {
eprintStackTrace();
}
return conn;
}
//关闭所有资源
public static void closeAll(Connection conn,Statement st,ResultSet rs){
try {
if(null!=rs){
rsclose();
}
if(null!=st){
stclose();
}
if(null!=conn){
connclose();
}
} catch (SQLException e) {
eprintStackTrace();
}
}
}
最简单的办法使用rsaddnew,这个添加完数据,你直接rs("id")就能取了,不用再单走查询。不清楚你再问我。
你用recordset的addnew方法做添加数据 *** 作。
rsaddnew
rsupdate
id
=rs("id")
注意open的游标设置为3,3,2,否则最后id可能取不到。
以上就是关于JAVA servlet中怎么根据JSP页面传来的ID,用hql语句查询主键ID里的信息全部的内容,包括:JAVA servlet中怎么根据JSP页面传来的ID,用hql语句查询主键ID里的信息、asp+mysql 插入后获取刚插入的ID值、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)