问题是这样子的:注册页面的数据提交到Servlet后,由Servlet调用连接数据库并添加数据的一个类,然后重定向一个页面,这个页面就是要显示注册页面提交的数据。具提的做法不会做,求高手解答。在线等.....
解决方案 »
- 求助:我的IDEA不能部署JSP,在哪里设置啊?帮帮忙吧,谢谢!
- 小弟跪求Struts2 整合jaspereport相关书籍(PDF),感谢各位大哥大姐!
- 怎样理解JAVA动态代理
- org.hibernate.MappingException: could not find PropertyAccessor class: 有谁能给一个修改办法,为什么会这样的?
- Freemarker 页面传值后 如何在另一页面取?
- 为什么导入下面包的时候,写文件会出错?有谁遇到过???
- 为什么我用tomcat连接不上mysql的url
- 最近用struts做了个项目,跟大家讨论一下心得,大家踊跃加入阿
- spring+ibatis+struts和spring+hibernate+struts 哪个更好?
- JBX+STRUTS+weblogic81开发的第一个示例
- EXCEL.application 设置格式效率低下的问题
- 代理中遇到的问题。
<input name="userName" value="<%=request.getAttribute("userName")%>"/>
只能用request.getDispatcher("regist.jsp").findForward(request,response)返回(函数名我忘记了,大概就是这样了)。。
UserDao.java
package com.unis.dao;import java.sql.Connection;
import java.sql.Statement;
import java.sql.DriverManager;
import java.sql.SQLException;
import com.unis.vo.UserVo;
import java.util.ArrayList;
import java.sql.ResultSet;/**
*
* <p>Title: </p>
*
* <p>Description: 基于用户管理的DAO层</p>
*
* <p>Copyright: Copyright (c) 2011</p>
*
* <p>Company: UNIS</p>
*
* @author ale
*
* @version 1.0
*/
public class UserDao {
public UserDao() {
} private Connection con = null;
private Statement st = null; /**
* 连接数据库
*/
private void initDb() {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbc:odbc:unis_20110421", "", "");
st = con.createStatement();
} catch (ClassNotFoundException ex) {
} catch (SQLException ex) {
/** @todo Handle this exception */
ex.printStackTrace();
}
} /**
* 关闭数据库
*/
private void closeDb() {
try {
st.close();
con.close();
} catch (SQLException ex) {
ex.printStackTrace();
}
} /**
* 将用户信息插入数据库中
* @param uservo UserVo
* @return boolean
*/
public int insertUser(UserVo uservo) {
this.initDb();
int tempFlag = 0;
try {
String sql = "INSERT INTO usertable (user_name,user_password,user_sex,user_describe) VALUES ('"+uservo.getName()+"','"+uservo.getPassword()+"','"+uservo.getSex()+"','"+uservo.getDescribe()+"')";
tempFlag = st.executeUpdate(sql);
System.out.println(tempFlag);
} catch (SQLException ex) {
ex.printStackTrace();
} finally {
this.closeDb();
}
return tempFlag;
} /**
* 查询数据库中所有用户信息
* @return ArrayList
*/
public ArrayList selectUserList() {
this.initDb();
ArrayList userList = null;
try {
String sql = "SELECT user_id,user_name FROM usertable";
ResultSet rs = st.executeQuery(sql);
userList = new ArrayList();
while(rs.next())
{
UserVo uservo = new UserVo();
uservo.setId(rs.getInt("user_id"));
uservo.setName(rs.getString("user_name"));
userList.add(uservo);
}
} catch (SQLException ex){
ex.printStackTrace();
}finally {
this.closeDb();
}
return userList;
}
}servlet.java
package com.unis.servlet;import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import com.unis.vo.UserVo;
import com.unis.dao.UserDao;
public class ServletUserAdd extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=UTF-8"; //Initialize global variables
public void init() throws ServletException {
} //Process the HTTP Get request
public void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException { } //Process the HTTP Post request
public void doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException { //获取客户端表单项的值
String userName = request.getParameter("userName");
String userPassword = request.getParameter("userPassword");
String userSex = request.getParameter("userSex");
String userDescribe = request.getParameter("userDescribe"); //将表单项的值保存到uservo中
UserVo uservo = new UserVo();
uservo.setName(userName);
uservo.setPassword(userPassword);
uservo.setSex(userSex);
uservo.setDescribe(userDescribe); //将表单项的值插入数据库中
UserDao userdao = new UserDao();
userdao.insertUser(uservo);// //查询数据库中所有的用户信息
// ArrayList userList = userdao.selectUserList();
//
// //将所有的用户信息发送到客户端
// request.setAttribute("userList",userList);
//
// //跳转
// request.getRequestDispatcher("/userlist.jsp").forward(request,response);
request.getRequestDispatcher("/servletuserindex").forward(request,response);
} //Clean up resources
public void destroy() {
}
}vo.java
package com.unis.vo;public class UserVo {
public UserVo() {
} public String getSex() {
return sex;
} public String getPassword() {
return password;
} public String getName() {
return name;
} public int getId() {
return id;
} public void setDescribe(String describe) {
this.describe = describe;
} public void setSex(String sex) {
this.sex = sex;
} public void setPassword(String password) {
this.password = password;
} public void setName(String name) {
this.name = name;
} public void setId(int id) {
this.id = id;
} public String getDescribe() {
return describe;
} private int id;
private String name;
private String password;
private String sex;
private String describe;
}
页面不用说了吧。。 很久以前做的的例子了 你看看有用吧
UserDao userdao = new UserDao();
userdao.insertUser(uservo);// //跳转
request.getRequestDispatcher("/servletuserindex").forward(request,response);
/* 采用这种方法的一个好处就是他把你的request和response重新带回了你的跳转页面,所以在你接收的页面,可以访问你之前调教的user信息。而你采用response.sendRidirect();的时候,是会丢失你之前填写的 信息的。*/
}
你已经操作到这里了,所以现在你已经跳转到显示你注册信息的页面了,然后你在页面中通过${requestScope.uservo.用户的属性}完成在页面中,已经注册的信息的显示