一:项目思路
二:界面展示和代码展示
1:主页面
注释:
界面 代码:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <style type="text/css"> table, tr { border-collapse: collapse; } td { text-align: center; } </style> </head> <body> <a href="Add.jsp">新增</a> <table border=""> <tr> <td colspan="6"> <form action="key.do"> 教员: <select name="tname"> <option value="null">--请选择教员--</option> <c:forEach var="y" items="${ all1 }"> <option value="${ y.tname }" >${y.tname }</option> </c:forEach> </select> 班级: <select name="cname"> <option value="null">--请选择班级--</option> <c:forEach var="b" items="${ all2 }"> <option value="${ b.cname }" >${b.cname }</option> </c:forEach> </select> 爱好: <input type="checkbox" name="shobby" value="唱">唱 <input type="checkbox" name="shobby" value="跳">跳 <input type="checkbox" name="shobby" value="rap">rap <button>查询</button> </form> </td> </tr> <tr> <td>学生id</td> <td>学生姓名</td> <td>学生教员</td> <td>学生班级</td> <td>学生爱好</td> <td>操作</td> </tr> <c:forEach items="${ all }" var="i"> <tr> <td>${ i.ssid }</td> <td>${ i.sname }</td> <td>${ i.tname }</td> <td>${ i.cname }</td> <td>${ i.shobby }</td> <td><a href="upd1.do?ssid=${ i.ssid }">修改</a><a href="del.do?ssid=${ i.ssid }">删除</a></td> </tr> </c:forEach> </table> </body> </html>
servlet代码:
package com.servlet; import java.io.IOException; import java.util.List; 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 com.dao.StudentDao; import com.entity.Class; import com.entity.Student; import com.entity.Teacher; @WebServlet("/index.do") public class IndexServlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub List<Student> list=new StudentDao().getAll(); req.setAttribute("all", list); List<Teacher> list1=new StudentDao().getAllTeacher(); req.setAttribute("all1", list1); List<Class> list2=new StudentDao().getAllClass(); req.setAttribute("all2", list2); req.getRequestDispatcher("Index.jsp").forward(req, resp); } }
3:增加
界面代码:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <style type="text/css"> table, tr { border-collapse: collapse; } </style> </head> <body> <form action="add.do"> <table border=""> <tr> <td>名字:<input type="text" name="sname"></td> </tr> <tr> <td>教员: <select name="tname"> <option value="null">--请选择教员--</option> <option value="李晓">李晓</option> <option value="胡桂花">胡桂花</option> </select> </td> </tr> <tr> <td>班级: <select name="cname"> <option value="null">--请选择班级--</option> <option value="T269">T269</option> <option value="T271">T271</option> </select> </td> </tr> <tr> <td>爱好: <input type="checkbox" name="shobby" value="唱" >唱 <input type="checkbox" name="shobby" value="跳" >跳 <input type="checkbox" name="shobby" value="rap" >rap </td> </tr> <tr> <td><button>确定</button> </td> </tr> </table> </form> <a href="index.do">返回</a> </body> </html>
servlet代码:
package com.servlet; import java.io.IOException; import java.io.PrintWriter; 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 com.dao.StudentDao; import com.entity.Student; @WebServlet("/add.do") public class Addservlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub // 更改编码格式 req.setCharacterEncoding("utf-8"); resp.setContentType("text/html; charset=utf-8"); PrintWriter out = resp.getWriter(); //获取各项数据 int ssid=new StudentDao().maxId(); String sname = req.getParameter("sname"); String tname = req.getParameter("tname"); String cname = req.getParameter("cname"); String shobby = req.getParameter("shobby"); int n=new StudentDao().addStu(ssid, sname, tname, cname, shobby); if(n>0) { out.print("<script language='javascript'>alert('添加成功');location='index.do';</script>"); }else { out.print("<script language='javascript'>alert('添加失败');location='index.do';</script>"); } } }
4:删除
删除没有界面代码,只有servlet代码
package com.servlet; import java.io.IOException; import java.io.PrintWriter; 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 com.dao.StudentDao; @WebServlet("/del.do") public class delServlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub req.setCharacterEncoding("utf-8"); resp.setContentType("text/html; charset=utf-8"); PrintWriter out = resp.getWriter(); int ssid = Integer.parseInt(req.getParameter("ssid")); if(new StudentDao().delStu(ssid)>0) { out.print("<script language='javascript'>alert('删除成功');location='index.do';</script>"); }else { out.print("<script language='javascript'>alert('删除失败');location='index.do';</script>"); } } }
5:修改
修改的界面和增加一样,但会把信息填上去
修改界面代码:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <style type="text/css"> table, tr { border-collapse: collapse; } </style> </head> <body> <form action="upd.do?ssid=gid"> <table border=""> <input hidden value="${ stu.ssid }" name="gid"> <tr> <td>名字:<input type="text" name="sname" value="${ stu.ssid }"></td> </tr> <tr> <td>教员: <select name="tname"> <option value="null">${ stu.tname }</option> <option value="李晓">李晓</option> <option value="胡桂花">胡桂花</option> </select> </td> </tr> <tr> <td>班级: <select name="cname"> <option value="null">${ stu.cname }</option> <option value="T269">T269</option> <option value="T271">T271</option> </select> </td> </tr> <tr> <td>爱好: <input type="checkbox" name="shobby" value="唱" <c:if test="${ stu.shobby=='唱' }"> checked </c:if>>唱 <input type="checkbox" name="shobby" value="跳" <c:if test="${ stu.shobby=='跳' }"> checked </c:if>>跳 <input type="checkbox" name="shobby" value="rap" <c:if test="${ stu.shobby=='rap' }"> checked </c:if>>rap </td> </tr> <tr> <td><button>确定</button> </td> </tr> </table> </form> <a href="index.do">返回</a> </body> </html>
获取所有值的代码:
package com.servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.List; 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 com.dao.StudentDao; import com.entity.Student; @WebServlet("/upd1.do") public class upd1Servlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub req.setCharacterEncoding("utf-8"); resp.setContentType("text/html; charset=utf-8"); PrintWriter out = resp.getWriter(); int ssid = Integer.parseInt(req.getParameter("ssid")); Student list=new StudentDao().getStu(ssid); req.setAttribute("stu", list); req.getRequestDispatcher("Upd.jsp").forward(req, resp); } }
修改的代码:
package com.servlet; import java.io.IOException; import java.io.PrintWriter; 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 com.dao.StudentDao; @WebServlet("/upd.do") public class updServlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub req.setCharacterEncoding("utf-8"); resp.setContentType("text/html; charset=utf-8"); PrintWriter out = resp.getWriter(); int ssid = Integer.parseInt(req.getParameter("ssid")); String sname = req.getParameter("sname"); String tname = req.getParameter("tname"); String cname = req.getParameter("cname"); String shobby = req.getParameter("shobby"); if(new StudentDao().updStu(ssid, sname, tname, cname, shobby)>0) { out.print("<script language='javascript'>alert('添加成功');location='index.do';</script>"); }else { out.print("<script language='javascript'>alert('添加失败');location='index.do';</script>"); } } }
完结了各位!!!拜拜