010_学生管理系统一
生活随笔
收集整理的這篇文章主要介紹了
010_学生管理系统一
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
源碼:?https://download.csdn.net/download/aihiao/14974520
?
1. 新建一個名為StudentManager的Web項目
2. 考入相關jar
3. c3p0-config.xml配置
<?xml version="1.0" encoding="UTF-8"?> <c3p0-config><!-- default-config 默認的配置 --><default-config><property name="driverClass">com.mysql.cj.jdbc.Driver</property><property name="jdbcUrl">jdbc:mysql://192.168.25.138:3306/StudentManager?useSSL=true&useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai</property><property name="user">root</property><property name="password">lyw123456</property><!-- 初始化連接池數量 --><property name="initialPoolSize">10</property><!-- 數據庫連接最大空閑時間 --><property name="maxIdleTime">30</property><!-- 池子最大連接數 --><property name="maxPoolSize">100</property><!-- 池子最小連接數 --><property name="minPoolSize">10</property><!-- 最大Statements對象數 --><property name="maxStatements">200</property></default-config></c3p0-config>4. 數據庫連接池JDBCUtil.java工具類
package com.lywgames.util;import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.sql.DataSource; import com.mchange.v2.c3p0.ComboPooledDataSource;/*** 使用數據庫連接池的獲取的數據庫連接, 我們不用做關閉操作, 數據庫連接池自行管理*/ public class JDBCUtil {private static DataSource dataSource = null;static {dataSource = new ComboPooledDataSource();}public static DataSource getDataSource() {return dataSource;}/*** 獲取連接對象*/public static Connection getConn(){try {return dataSource.getConnection();} catch (SQLException e) {e.printStackTrace();}return null;}/*** 釋放資源* @param st* @param rs*/public static void release(Statement st, ResultSet rs){closeRs(rs);closeSt(st);}public static void release(Statement st){closeSt(st);}public static void closeRs(ResultSet rs){try {if(rs != null){rs.close();}} catch (SQLException e) {e.printStackTrace();}finally{rs = null;}}public static void closeSt(Statement st){try {if(st != null){st.close();}} catch (SQLException e) {e.printStackTrace();}finally{st = null;}}}5. 學生Student.java實體類
package com.lywgames.domain;import java.sql.Timestamp;/*** 這是學封裝的對象 bean*/ public class Student {private int sid;private String sname;private String gender;private String phone;private String hobby;private String info;private Timestamp birthday;public Student() {}public Student(String sname, String gender, String phone, String hobby, String info, Timestamp birthday) {this.sname = sname;this.gender = gender;this.phone = phone;this.hobby = hobby;this.info = info;this.birthday = birthday;}public Student(int sid, String sname, String gender, String phone, String hobby, String info, Timestamp birthday) {super();this.sid = sid;this.sname = sname;this.gender = gender;this.phone = phone;this.hobby = hobby;this.info = info;this.birthday = birthday;}public int getSid() {return sid;}public void setSid(int sid) {this.sid = sid;}public String getSname() {return sname;}public void setSname(String sname) {this.sname = sname;}public String getGender() {return gender;}public void setGender(String gender) {this.gender = gender;}public String getPhone() {return phone;}public void setPhone(String phone) {this.phone = phone;}public String getHobby() {return hobby;}public void setHobby(String hobby) {this.hobby = hobby;}public String getInfo() {return info;}public void setInfo(String info) {this.info = info;}public Timestamp getBirthday() {return birthday;}public void setBirthday(Timestamp birthday) {this.birthday = birthday;}@Overridepublic String toString() {return "Student [sid=" + sid + ", sname=" + sname + ", gender=" + gender + ", phone=" + phone + ", hobby="+ hobby + ", info=" + info + ", birthday=" + birthday + "]";}}6. 分頁PageBean.java實體類
package com.lywgames.domain;import java.util.List;/*** 這是一個用于封裝了分頁的數據。* 里面包含:* 該頁的學生集合數據* 總的記錄數* 總的頁數* 當前頁* 每頁顯示的記錄數* @param <T>*/ public class PageBean<T> {private int currentPage; //當前頁private int totalPage; //總頁數private int pageSize; //每頁的記錄數private int totalSize; //總的記錄數private List<T> list; //當前頁的學生集合public int getCurrentPage() {return currentPage;}public void setCurrentPage(int currentPage) {this.currentPage = currentPage;}public int getTotalPage() {return totalPage;}public void setTotalPage(int totalPage) {this.totalPage = totalPage;}public int getPageSize() {return pageSize;}public void setPageSize(int pageSize) {this.pageSize = pageSize;}public int getTotalSize() {return totalSize;}public void setTotalSize(int totalSize) {this.totalSize = totalSize;}public List<T> getList() {return list;}public void setList(List<T> list) {this.list = list;} }7. 數據庫操作StudentDao.java接口
package com.lywgames.dao;import java.sql.SQLException; import java.util.List; import com.lywgames.domain.Student;/*** 這是針對學生表的數據訪問 */ public interface StudentDao {/*** 查詢所有學生* @return List<Student>*/List<Student> findAll() throws SQLException;/*** 添加學生* @param student 需要添加到數據庫的學生對象* @throws SQLException*/int insert(Student student) throws SQLException;/*** 根據id刪除學生* @param sid* @throws SQLException*/int delete(int sid) throws SQLException;/*** 根據id查詢單個學生對象* @param sid* @return* @throws SQLException*/Student findStudentById(int sid) throws SQLException;/*** 更新學生信息* @param student 需要更新的學生數據* @throws SQLException*/int update(Student student) throws SQLException;/*** 模糊查詢, 根據姓名或者根據性別或者兩者兼有。 * @param sname* @param sgender* @return 集合* @throws SQLException*/List<Student> searchStudent(String sname, String sgender) throws SQLException;/*** 查詢當頁的學生數據* @param currentPage* @param pageSize* @return* @throws SQLException*/List<Student> findStudentByPage(int currentPage, int pageSize) throws SQLException;/*** 查詢總的學生記錄數* @return* @throws SQLException*/int findCount() throws SQLException; }8. 數據庫操作StudentDaoImpl.java實現類
package com.lywgames.dao.impl;import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import org.apache.commons.dbutils.QueryRunner; import org.apache.commons.dbutils.handlers.BeanHandler; import org.apache.commons.dbutils.handlers.BeanListHandler; import org.apache.commons.dbutils.handlers.ScalarHandler; import com.lywgames.dao.StudentDao; import com.lywgames.domain.Student; import com.lywgames.util.JDBCUtil;/*** 這是StudentDao的實現。 針對前面定義的規范, 做出具體的實現。*/ public class StudentDaoImpl implements StudentDao {/*** 查詢所有學生*/@Overridepublic List<Student> findAll() throws SQLException {QueryRunner queryRunner = new QueryRunner();return queryRunner.query(JDBCUtil.getConn(), "select * from t_student", new BeanListHandler<Student>(Student.class));}/*** 添加學生*/@Overridepublic int insert(Student student) throws SQLException {QueryRunner queryRunner = new QueryRunner();return queryRunner.update(JDBCUtil.getConn(), "insert into t_student values (null, ?, ?, ?, ?, ?, ?)", student.getSname(), student.getGender(), student.getPhone(), student.getHobby(), student.getInfo(), student.getBirthday());}/*** 根據id刪除學生*/@Overridepublic int delete(int sid) throws SQLException {QueryRunner queryRunner = new QueryRunner();return queryRunner.update(JDBCUtil.getConn(), "delete from t_student where sid = ?", sid);}/*** 根據id查詢單個學生對象*/@Overridepublic Student findStudentById(int sid) throws SQLException {QueryRunner queryRunner = new QueryRunner();return queryRunner.query(JDBCUtil.getConn(), "select * from t_student where sid = ?", new BeanHandler<Student>(Student.class), sid);}/*** 更新學生信息*/@Overridepublic int update(Student student) throws SQLException {QueryRunner queryRunner = new QueryRunner();return queryRunner.update(JDBCUtil.getConn(), "update t_student set sname = ?, gender = ?, phone = ?, hobby = ?, info = ?, birthday = ? where sid = ?", student.getSname(), student.getGender(), student.getPhone(), student.getHobby(), student.getInfo(), student.getBirthday(), student.getSid());}/*** 模糊查詢, 根據姓名或者根據性別或者兩者兼有。 */@Overridepublic List<Student> searchStudent(String sname, String sgender) throws SQLException {/*** 1. sname有值, sgender為null或者""* select * from t_student where sname like ?* 2. sgender有值, sname為null或者""* select * from t_student where sgender = ?* 3. sname有值, sgender也有值* select * from t_student where sname = ? and sgender = ?*/String sql = "select * from t_student";List<String> params = new ArrayList<String>();if(sname != null && sname.length() > 0 && (sgender == null || sgender.length() <= 0)) {sql = sql + " where sname like ?";params.add("%" + sname + "%");}if(sgender != null && sgender.length() > 0 && (sname == null || sname.length() <= 0)) {sql = sql + " where gender = ?";params.add(sgender);}if(sname != null && sname.length() > 0 && sgender != null && sgender.length() > 0) {sql = sql + " where sname like ? and gender = ?";params.add("%" + sname + "%");params.add(sgender);}QueryRunner queryRunner = new QueryRunner();return queryRunner.query(JDBCUtil.getConn(), sql, new BeanListHandler<Student>(Student.class), params.toArray());}/*** 查詢當頁的學生數據*/@Overridepublic List<Student> findStudentByPage(int currentPage, int pageSize) throws SQLException {// 假設pageSize是5// 第一頁: [5, 0], 0 = (1 - 1) * 5// 第二頁: [5, 5], 5 = (2 - 1) * 5// 第三頁: [5, 10], 10 = (3 - 1) * 5String sql = "select * from t_student limit ? offset ?";QueryRunner queryRunner = new QueryRunner();return queryRunner.query(JDBCUtil.getConn(), sql, new BeanListHandler<Student>(Student.class), pageSize, (currentPage - 1) * pageSize);}/*** 查詢總的學生記錄數*/@Overridepublic int findCount() throws SQLException {QueryRunner queryRunner = new QueryRunner();return ((Long)queryRunner.query(JDBCUtil.getConn(), "select count(*) from t_student", new ScalarHandler())).intValue();}}9. 邏輯操作StudentService.java接口
package com.lywgames.service;import java.sql.SQLException; import java.util.List; import com.lywgames.domain.PageBean; import com.lywgames.domain.Student;/*** 這是學生的業務處理規范*/ public interface StudentService {int DEFAULT_PAGE_SIZE = 5; // 默認一頁顯示多少條記錄/*** 查詢所有學生* @return List<Student>*/List<Student> findAll();/*** 添加學生* @param student 需要添加到數據庫的學生對象* @throws SQLException*/int insert(Student student);/*** 根據id刪除學生* @param sid* @throws SQLException*/int delete(int sid);/*** 根據id查詢單個學生對象* @param sid* @return* @throws SQLException*/Student findStudentById(int sid);/*** 更新學生信息* @param student 需要更新的學生數據* @throws SQLException*/int update(Student student);/*** 模糊查詢, 根據姓名或者根據性別或者兩者兼有。 * @param sname* @param sgender* @return 集合* @throws SQLException*/List<Student> searchStudent(String sname, String sgender);/*** 查詢當頁的學生數據* @param currentPage* @return* @throws SQLException*/PageBean<Student> findStudentByPage(int currentPage); }10. 邏輯操作StudentServiceImpl.java實現類
package com.lywgames.service.impl;import java.sql.SQLException; import java.util.List; import com.lywgames.dao.StudentDao; import com.lywgames.dao.impl.StudentDaoImpl; import com.lywgames.domain.PageBean; import com.lywgames.domain.Student; import com.lywgames.service.StudentService;/*** 這是學生業務實現*/ public class StudentServiceImpl implements StudentService {private StudentDao studentDao = new StudentDaoImpl();@Overridepublic List<Student> findAll(){try {return studentDao.findAll();} catch (SQLException e) {e.printStackTrace();}return null;}@Overridepublic int insert(Student student){try {return studentDao.insert(student);} catch (SQLException e) {e.printStackTrace();}return -1;}@Overridepublic int delete(int sid) {try {return studentDao.delete(sid);} catch (SQLException e) {e.printStackTrace();}return -1;}@Overridepublic Student findStudentById(int sid) {try {return studentDao.findStudentById(sid);} catch (SQLException e) {e.printStackTrace();}return null;}@Overridepublic int update(Student student) {try {return studentDao.update(student);} catch (SQLException e) {e.printStackTrace();}return -1;}@Overridepublic List<Student> searchStudent(String sname, String sgender) {try {return studentDao.searchStudent(sname, sgender);} catch (SQLException e) {e.printStackTrace();}return null;}@Overridepublic PageBean<Student> findStudentByPage(int currentPage) {PageBean<Student> pageBean = new PageBean<Student>();pageBean.setCurrentPage(currentPage);pageBean.setPageSize(DEFAULT_PAGE_SIZE);try {pageBean.setList(studentDao.findStudentByPage(currentPage, DEFAULT_PAGE_SIZE));int count = studentDao.findCount();pageBean.setTotalSize(count);pageBean.setTotalPage(count % DEFAULT_PAGE_SIZE == 0 ? count / DEFAULT_PAGE_SIZE : (count / DEFAULT_PAGE_SIZE) + 1);} catch (SQLException e) {e.printStackTrace();}return pageBean;}}11. 查找所有學生StudentListServlet.java
package com.lywgames.servlet;import java.io.IOException; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.lywgames.domain.Student; import com.lywgames.service.StudentService; import com.lywgames.service.impl.StudentServiceImpl;/*** 查找所有學生*/ public class StudentListServlet extends HttpServlet {private static final long serialVersionUID = 1L;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {StudentService service = new StudentServiceImpl();List<Student> studentList = service.findAll();if(studentList != null) {req.setAttribute("studentList", studentList);}req.getRequestDispatcher("list.jsp").forward(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} }12. 分頁查找學生StudentListPageServlet.java
package com.lywgames.servlet;import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.lywgames.domain.PageBean; import com.lywgames.domain.Student; import com.lywgames.service.StudentService; import com.lywgames.service.impl.StudentServiceImpl;/*** 分頁查找學生*/ public class StudentListPageServlet extends HttpServlet {private static final long serialVersionUID = 1L;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {int currentPage = Integer.valueOf(req.getParameter("currentPage")).intValue() ;StudentService service = new StudentServiceImpl();PageBean<Student> pageBean = service.findStudentByPage(currentPage);req.setAttribute("pageBean", pageBean);req.getRequestDispatcher("page_list.jsp").forward(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} }13. 添加學生AddServlet.java
package com.lywgames.servlet;import java.io.IOException; import java.sql.Timestamp; import java.text.ParseException; import java.text.SimpleDateFormat; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.lywgames.domain.Student; import com.lywgames.service.StudentService; import com.lywgames.service.impl.StudentServiceImpl;/*** 添加學生*/ public class AddServlet extends HttpServlet {private static final long serialVersionUID = 1L;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding("utf-8");String sname = req.getParameter("sname");String gender = req.getParameter("gender");String phone = req.getParameter("phone");String info = req.getParameter("info");long time = System.currentTimeMillis();try {time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(req.getParameter("birthday")).getTime();} catch (ParseException e) {e.printStackTrace();}Timestamp birthday = new Timestamp(time);String[] hobbys = req.getParameterValues("hobby");StringBuffer sb = new StringBuffer();for(int i = 0; i < hobbys.length; i++) {sb.append(hobbys[i]);if(i < hobbys.length - 1) {sb.append(",");}}StudentService service = new StudentServiceImpl();Student student = new Student(sname, gender, phone, sb.toString(), info, birthday);int result = service.insert(student);if(result == 1) {req.getRequestDispatcher("StudentListServlet.action").forward(req, resp);}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} }14. 編輯學生信息EditServlet.java
package com.lywgames.servlet;import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.lywgames.domain.Student; import com.lywgames.service.StudentService; import com.lywgames.service.impl.StudentServiceImpl;/*** 編輯學生信息*/ public class EditServlet extends HttpServlet {private static final long serialVersionUID = 1L;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding("utf-8");String sid = req.getParameter("sid");StudentService service = new StudentServiceImpl();Student student = service.findStudentById(Integer.parseInt(sid));if(student != null) {req.setAttribute("student", student);req.getRequestDispatcher("edit.jsp").forward(req, resp);}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} }15. 更新學生信息UpdateServlet.java
package com.lywgames.servlet;import java.io.IOException; import java.sql.Timestamp; import java.text.ParseException; import java.text.SimpleDateFormat; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.lywgames.domain.Student; import com.lywgames.service.StudentService; import com.lywgames.service.impl.StudentServiceImpl;/*** 更新學生信息*/ public class UpdateServlet extends HttpServlet {private static final long serialVersionUID = 1L;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding("utf-8");int sid = Integer.parseInt(req.getParameter("sid"));String sname = req.getParameter("sname");String gender = req.getParameter("gender");String phone = req.getParameter("phone");String info = req.getParameter("info");long time = System.currentTimeMillis();try {time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(req.getParameter("birthday")).getTime();} catch (ParseException e) {e.printStackTrace();}Timestamp birthday = new Timestamp(time);String[] hobbys = req.getParameterValues("hobby");StringBuffer sb = new StringBuffer();for(int i = 0; i < hobbys.length; i++) {sb.append(hobbys[i]);if(i < hobbys.length - 1) {sb.append(",");}}StudentService service = new StudentServiceImpl();Student student = new Student(sid, sname, gender, phone, sb.toString(), info, birthday);int result = service.update(student);if(result == 1) {req.getRequestDispatcher("StudentListServlet.action").forward(req, resp);}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} }16. 刪除學生DeleteServlet.java
package com.lywgames.servlet;import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.lywgames.service.StudentService; import com.lywgames.service.impl.StudentServiceImpl;/*** 刪除學生*/ public class DeleteServlet extends HttpServlet {private static final long serialVersionUID = 1L;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding("utf-8");String sid = req.getParameter("sid");StudentService service = new StudentServiceImpl();int result = service.delete(Integer.parseInt(sid));if(result == 1) {req.getRequestDispatcher("StudentListServlet.action").forward(req, resp);}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} }17. 查找學生SearchStudentServlet.java
package com.lywgames.servlet;import java.io.IOException; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.lywgames.domain.Student; import com.lywgames.service.StudentService; import com.lywgames.service.impl.StudentServiceImpl;/*** 查找學生*/ public class SearchStudentServlet extends HttpServlet {private static final long serialVersionUID = 1L;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding("utf-8");String sname = req.getParameter("sname");String gender = req.getParameter("gender");StudentService service = new StudentServiceImpl();List<Student> studentList = service.searchStudent(sname, gender);if(studentList != null) {req.setAttribute("studentList", studentList);}req.getRequestDispatcher("list.jsp").forward(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} }18. web.xml配置
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://java.sun.com/xml/ns/javaee"xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"id="WebApp_ID" version="2.5"><display-name>StudentManager</display-name><welcome-file-list><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file><welcome-file>default.html</welcome-file><welcome-file>default.htm</welcome-file><welcome-file>default.jsp</welcome-file></welcome-file-list><servlet><servlet-name>StudentListServlet</servlet-name><servlet-class>com.lywgames.servlet.StudentListServlet</servlet-class></servlet><servlet-mapping><servlet-name>StudentListServlet</servlet-name><url-pattern>/StudentListServlet.action</url-pattern></servlet-mapping><servlet><servlet-name>AddServlet</servlet-name><servlet-class>com.lywgames.servlet.AddServlet</servlet-class></servlet><servlet-mapping><servlet-name>AddServlet</servlet-name><url-pattern>/AddServlet.action</url-pattern></servlet-mapping><servlet><servlet-name>EditServlet</servlet-name><servlet-class>com.lywgames.servlet.EditServlet</servlet-class></servlet><servlet-mapping><servlet-name>EditServlet</servlet-name><url-pattern>/EditServlet.action</url-pattern></servlet-mapping><servlet><servlet-name>UpdateServlet</servlet-name><servlet-class>com.lywgames.servlet.UpdateServlet</servlet-class></servlet><servlet-mapping><servlet-name>UpdateServlet</servlet-name><url-pattern>/UpdateServlet.action</url-pattern></servlet-mapping><servlet><servlet-name>DeleteServlet</servlet-name><servlet-class>com.lywgames.servlet.DeleteServlet</servlet-class></servlet><servlet-mapping><servlet-name>DeleteServlet</servlet-name><url-pattern>/DeleteServlet.action</url-pattern></servlet-mapping><servlet><servlet-name>SearchStudentServlet</servlet-name><servlet-class>com.lywgames.servlet.SearchStudentServlet</servlet-class></servlet><servlet-mapping><servlet-name>SearchStudentServlet</servlet-name><url-pattern>/SearchStudentServlet.action</url-pattern></servlet-mapping><servlet><servlet-name>StudentListPageServlet</servlet-name><servlet-class>com.lywgames.servlet.StudentListPageServlet</servlet-class></servlet><servlet-mapping><servlet-name>StudentListPageServlet</servlet-name><url-pattern>/StudentListPageServlet.action</url-pattern></servlet-mapping> </web-app>?
總結
以上是生活随笔為你收集整理的010_学生管理系统一的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 035_jdbc-mysql-dbuti
- 下一篇: 011_学生管理系统二