注册就是加入一个实体,而登陆就是已注册的信息进行验证的过程。
代码内嵌在HTML页面中
web.XML部分配置
Servlet1.java(Servlet)
Public class Servlet1 extends HttpServlet{
Public Servlet(){
Super();
}
Public void doGet(HttpServletRequest request , HttpServletResponse response) throws ServletException , IOException{
response.setCharacterEncoding(“utf-8”);
response.setContentType(“html/text”);
PrintlnWriter out=response.getWriter();
out.println("<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println("<HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println("<BODY>");
out.println(" this is");
out.println(this.getClass());
out.println(" ,using the GET methed!");
out.println("<br>");
out.println("注册<br>");
out.println("<form action='Register'>");
out.println("姓名:<input type='text' name='name' />");
out.println("<br/>");
out.println("密码:<input type='text' name='pass' />");
out.println("<br/>");
out.println(" ");
out.println(" ");
out.println("<input type='submit' value='Register' />");
out.println(" ");
out.println("<input type='reset' value='reset' />");
out.println("<br/>");
out.println("</form>");
out.println("登录<br>");
out.println("<form action='Login'>");
out.println("姓名:<input type='text' name='name' />");
out.println("<br/>");
out.println("密码:<input type='text' name='pass' />");
out.println("<br/>");
out.println(" ");
out.println(" ");
out.println("<input type='submit' value='Login' />");
out.println(" ");
out.println("<input type='reset' value='reset' />");
out.println("<br/>");
out.println("</form>");
out.println(" </BODY>");
out.println(" </HTML>");
out.flush();
out.close();
}
}
Action指向另外的Servlet(XML配置中的<URL-pattern>),
对应的文本如name,pass,在以下的Servlet中调用时通过request对象的getParameter( )方法中进行调用。
Login.java(Servlet)
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setCharacterEncoding("utf-8");
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println("<HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println("<BODY>");
out.println(" this is");
out.println(this.getClass());
out.println(" ,using the GET methed!");
out.println("<br>");
String name = request.getParameter("name");
String pass = request.getParameter("pass");
try{
Class.forName("com.mysql.jdbc.Driver");
String url="jdbc:mysql://192.168.1.137/test";
Connection con=DriverManager.getConnection(url,"mydata","123");
Statement stmt=con.createStatement();
String sql = "select * from AUser where name='"+name+"'and pass='"+pass+"';";
System.out.println("sql:"+sql);
ResultSet rs = stmt.executeQuery(sql);
if(rs.next()){
System.out.println("login seccess");
}else{
response.sendRedirect("Four");//跳转指令,跳向XML配置中 URL-pattern的Four
}
stmt.executeUpdate(sql);
stmt.close();
con.close();
}catch(Exception e){
System.out.println(e.getMessage());
e.printStackTrace();
}
out.println(" </BODY>");
out.println(" </HTML>");
out.flush();
out.close();
}
Register.java(Servlet)
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setCharacterEncoding("utf-8");
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println("<HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println("<BODY>");
out.println(" this is");
out.println(this.getClass());
out.println(" ,using the GET methed!");
out.println("<br>");
String name = request.getParameter("name");
String pass = request.getParameter("pass");
try{
Class.forName("com.mysql.jdbc.Driver");
String url="jdbc:mysql://192.168.1.137/test";
Connection con=DriverManager.getConnection(url,"mydata","123");
Statement stmt=con.createStatement();
String sql = "insert into AUser (name,pass) values('"+name+"','"+pass+"');";
stmt.executeUpdate(sql);
stmt.close();
con.close();
System.out.println(sql);
response.sendRedirect("Four");
}catch(Exception e){
System.out.println(e.getMessage());
e.printStackTrace();
}
out.println(" </BODY>");
out.println(" </HTML>");
out.flush();
out.close();
}
本文介绍了如何利用Servlet技术进行用户注册与登录的功能实现。通过Servlet处理HTTP请求,结合HTML页面,实现用户信息的录入与验证。配置了web.xml文件以完成相关功能设置。
278

被折叠的 条评论
为什么被折叠?



