当前页面: 开发资料首页 → JSP 专题 → Servlet小问题,就是看不懂啊,麻烦哪位大虾帮我看看,谢谢!
Servlet小问题,就是看不懂啊,麻烦哪位大虾帮我看看,谢谢!
摘要: Servlet小问题,就是看不懂啊,麻烦哪位大虾帮我看看,谢谢!
我在学习Servlet时,有段代码不知道是什么意思?
先把整个程序写下来:
package register;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
import web.*;
/**
* login
*
* @author
*/
public class Register extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
DBConnect con = new DBConnect();
String username = (String)request.getParameter("username");
String userpasswd = (String)request.getParameter("userpasswd");
String sql;
ResultSet rs;
sql = "select * from userinfo where username = '" + username + "'";
rs =con.executeQuery(sql);
try {
if(!rs.next())
{
sql = "insert into userinfo(username,userpassword,role) values('" + username + "', '" + userpasswd + "', 1)";
con.updateDb(sql);
request.setAttribute ("username", username);
getServletConfig().getServletContext().getRequestDispatcher("/register_ok.jsp").forward(request, response);
}
else
{
request.setAttribute ("username", username);
getServletConfig().getServletContext().getRequestDispatcher("/register_error.jsp").forward(request, response);
}
} catch (Exception ex) {
ex.printStackTrace ();
}
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
doPost(request,response);
}
}
在这个Servlet程序中有这么一段程序:
request.setAttribute ("username", username);
getServletConfig().getServletContext().getRequestDispatcher("/register_ok.jsp").forward(request, response);
看不懂,谢谢!能详细点更好!
前一句是向request里设置一个名为username的属性,具体的值就是程序里取得的username,在页面中可以通过request.getAttribute("username")来取得这个值
第一个就是页面跳转
request.setAttribute ("username", username); 把username存放到request范围内
getServletConfig().getServletContext().getRequestDispatcher("/register_ok.jsp").forward(request, response); 这句是一个全局转发的,相继获得了servlet中的一些信息最后 用forward进行请求转发 .