ログイン登録・CRUD(JSP +サーブレット)
(A)の特長
1.ユーザーがログインするために正しいパスワードを入力します
2.新しいユーザーは登録することができます
3.学生のログイン情報のテーブルを表示するには
4.あなたは、学生を追加することができます
5.学生は、既存の情報を変更することができます
6.既存の学生を削除することができます
7.あなたは学生数にログインしているユーザーを表示することができます(各ページはセッションを呼び出して表示することができます)
8.ビューが記録されていてもよいです
(B)を表示するページ
ログインページ
登録ページ
学生情報ページ
ページを追加
追加した後、学生情報テーブル
ページを変更します。
改正後の学生情報テーブル
削除後の学生情報テーブル
(C)プロジェクトコード
package entity; public class Student { private String sno; private String password; private String name; public Student(String sno, String password, String name) { this.sno = sno; this.password = password; this.name = name; } public String getSno() { return sno; } public void setSno(String sno) { this.sno = sno; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
package util; import entity.Student; import java.util.HashMap; public class StudentUtil { public static HashMap<String, Student> map=new HashMap<String,Student>(); static{ map.put("101",new Student("101","123","lili")); map.put("102",new Student("102","123","lisa")); map.put("103",new Student("103","123","coco")); map.put("104",new Student("104","123","mark")); } public static boolean log(Student stu){ boolean b=false; for(String s:map.keySet()){ if(map.get(s).getSno().equals(stu.getSno())&&map.get(s).getPassword().equals(stu.getPassword())){ b=true; } } return b; } public static boolean reg(Student stu){ map.put(stu.getSno(),stu); return true; } }
package servlet; import entity.Student; import org.omg.CORBA.Request; import util.StudentUtil; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @WebServlet("/LoginServlet") public class LoginServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String sno=req.getParameter("sno"); String password=req.getParameter("password"); Student s=new Student(sno,password,null); boolean b=StudentUtil.log(s); if(b==true){ req.setAttribute("sno",sno); req.getRequestDispatcher("logon.jsp").forward(req,resp); }else{ req.getRequestDispatcher("error.jsp").forward(req,resp); } } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); } }
package servlet; import entity.Student; import util.StudentUtil; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @WebServlet("/RegisterServlet") public class RegisterServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String sno=req.getParameter("sno"); String password=req.getParameter("password"); String name=req.getParameter("name"); StudentUtil.reg(new Student(sno,password,name)); req.getRequestDispatcher("/index.jsp").forward(req,resp); } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); } }
package servlet; import entity.Student; import util.StudentUtil; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @WebServlet("/InsertServlet") public class InsertServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String sno=req.getParameter("sno"); String password=req.getParameter("password"); String name=req.getParameter("name"); StudentUtil.map.put(sno,new Student(sno,password,name)); req.getRequestDispatcher("student.jsp").forward(req,resp); } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); } }
package servlet; import util.StudentUtil; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @WebServlet("/UpdateServlet") public class UpdateServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String sno=req.getParameter("sno"); String password=req.getParameter("password"); String name=req.getParameter("name"); StudentUtil.map.get(sno).setName(name); StudentUtil.map.get(sno).setPassword(password); req.getRequestDispatcher("student.jsp").forward(req,resp); } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); } }
package servlet; import util.StudentUtil; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @WebServlet("/DeleteServlet") public class DeleteServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String sno= req.getParameter("sno"); StudentUtil.map.remove(sno); req.getRequestDispatcher("student.jsp").forward(req,resp); } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); } }
index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <form action="LoginServlet" method="post"> <div class="log"> <h2>登录</h2> 学号:<input type="text" name="sno"><br> 密码:<input type="password" name="password"> <br> <input type="submit" value="确认登录"> <a href="register.jsp" >注册</a> </div> </form> </body> </html>
register.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <form action="RegisterServlet" method="post"> 学号:<input type="text" name="sno"><br> 密码:<input type="text" name="password"><br> 姓名:<input type="text" name="name"><br> <input type="submit" value="确认"> </form> </body> </html>
logon.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <% session.setAttribute("sno",request.getAttribute("sno")); Object o=application.getAttribute("count"); if(o==null){ application.setAttribute("count",1); }else{ int c=Integer.parseInt(o.toString()); application.setAttribute("count",c+1); } %> <% request.getRequestDispatcher("student.jsp").forward(request,response); %> </body> </html>
student.jsp
<%@ page import="util.StudentUtil" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <a href="insert.jsp">增加</a> <span>用户:<%=session.getAttribute("sno")%></span> <span>浏览量:<%=application.getAttribute("count")%></span> <table> <tr> <td>学号</td> <td>密码</td> <td>姓名</td> <td></td> </tr> <% for(String s: StudentUtil.map.keySet()){%> <tr> <td><%=StudentUtil.map.get(s).getSno()%></td> <td><%=StudentUtil.map.get(s).getPassword()%></td> <td><%=StudentUtil.map.get(s).getName()%></td> <td><a href="update.jsp?sno=<%=StudentUtil.map.get(s).getSno()%>&&password=<%=StudentUtil.map.get(s).getPassword()%>&&name=<%=StudentUtil.map.get(s).getName()%>">修改</a> <a href="DeleteServlet?sno=<%=StudentUtil.map.get(s).getSno()%>">删除</a></td> </tr> <% } %> </table> </body> </html>
error.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> 账户名或密码错误 <a href="index.jsp">返回登录</a> </body> </html>
insert.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <form action="InsertServlet" method="post"> 学号:<input type="text" name="sno"/><br> 密码:<input type="text" name="password"/><br> 姓名:<input type="text" name="name"/><br> <input type="submit" value="确认添加"> </form> </body> </html>
update.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <form action="UpdateServlet" method="post"> <table> <tr> <td>学号</td> <td><input type="text" name="sno" value="<%=request.getParameter("sno")%>"></td> </tr> <tr> <td>密码</td> <td><input type="text" name="password" value="<%=request.getParameter("password")%>"></td> </tr> <tr> <td>姓名</td> <td><input type="text" name="name" value="<%=request.getParameter("name")%>"></td> </tr> </table> <input type="submit" value="确认修改"> </form> </body> </html>