全网最详细servlet03(跟着宝哥学java:servlet):只通过servlet实现学生的增删改查和老师的登录,拼凑页面

1 servlet项目

1.1 项目需求

通过servlet实现老师登录+学生的增删改查

1.2 数据库设计

USE db_1;
DROP TABLE student;
CREATE TABLE student(
   sid INT PRIMARY KEY AUTO_INCREMENT,
   sname VARCHAR(100) UNIQUE,
   sex CHAR(1),
   score FLOAT(4,1),
   sbirth DATE,
   sdy BOOL
);
INSERT INTO student VALUES(
NULL,
SUBSTRING(REPLACE(UUID(),"-",""),1,10),
IF(RAND()>0.5,"男","女"),
TRUNCATE(RAND()*100,1),
CONCAT(TRUNCATE(RAND()*10+1990,0),"/",TRUNCATE(RAND()*12+1,0),"/",TRUNCATE(RAND()*30+1,0)),
RAND()>0.5
);
SELECT * FROM student;

DROP TABLE teacher;
CREATE TABLE teacher(
   tid INT PRIMARY KEY AUTO_INCREMENT,
   tname VARCHAR(100) UNIQUE,
   tpwd VARCHAR(100) DEFAULT "123456"
);
INSERT INTO teacher VALUES(10011,"张无忌","123456");
INSERT INTO teacher VALUES(10012,"张三丰","123456");
INSERT INTO teacher VALUES(10013,"张翠山","123456");
INSERT INTO teacher VALUES(10014,"张柏芝","123456");

1.3 创建项目 分包 导入jar

  • 创建web项目

在这里插入图片描述

  • 选择项目的编码集为utf-8

在这里插入图片描述

  • 引入tomcat

在这里插入图片描述

  • 导入jdbc驱动
    在这里插入图片描述

  • 分包

在这里插入图片描述

1.4 创建实体类

public class Teacher implements Serializable{
	private Integer tid;
	private String tname;
	private String tpwd;
    ...
}
public class Student implements Serializable {
//	   sid INT PRIMARY KEY AUTO_INCREMENT,
//	   sname VARCHAR(100) UNIQUE,
//	   sex CHAR(1),
//	   score FLOAT(4,1),
//	   sbirth DATE,
//	   sdy BOOL
	private  Integer sid;
	private String sname;
	private String sex;
	private Float score;
	private Date sbirth;
	private Boolean sdy;
    ...
}

1.5 工具类

package com.zhiyou100.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class JdbcUtil {
	private static String driverName,user,pwd,url;
	static{
		driverName="com.mysql.jdbc.Driver";
		user="root";
		pwd="root";
		url="jdbc:mysql://localhost:3306/db_1?characterEncoding=utf8";
	}
	//注册驱动
	static{
		try {
			 Class.forName(driverName);
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
	}
	//获取连接
	public static Connection getCon(){
		try {
			 return DriverManager.getConnection(url, user, pwd);
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
	}
	//关闭连接释放资源
	public static void close(Connection con,Statement sta,ResultSet set){
		try {
			 if(set!=null) set.close();
			 if(sta!=null) sta.close();
			 if(con!=null) con.close();
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
		
	}

}
package com.zhiyou100.util;

import java.sql.DriverManager;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateStrUtil {
	private static String pattern="yyyy年MM月dd日";
	private static  SimpleDateFormat sdf=new SimpleDateFormat(pattern);
	public static String date2Str(Date date){
		return sdf.format(date);
	}
	public static Date str2Date(String str){
		try {
			return sdf.parse(str);
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
	}

}

1.6 dao

package com.zhiyou100.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import com.zhiyou100.entity.Student;
import com.zhiyou100.util.JdbcUtil;

public class StudentDao {
	// 获取一个
	public Student getOneByTid(int sid) {
		Connection con = JdbcUtil.getCon();
		PreparedStatement pre = null;
		ResultSet set = null;
		Student stu = null;
		try {
			pre = con.prepareStatement("select * from student where sid=?");
			pre.setInt(1, sid);
			set = pre.executeQuery();
			if (set.next()) {
				stu = new Student(set.getInt("sid"), set.getString("sname"), set.getString("sex"),
						set.getFloat("score"), set.getDate("sbirth"), set.getBoolean("sdy"));
			}
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
		JdbcUtil.close(con, pre, set);
		return stu;
	}

	// 删除一个
	public int deleteOne(int sid) {
		Connection con = JdbcUtil.getCon();
		PreparedStatement pre = null;
		int hang = 0;
		try {
			pre = con.prepareStatement("delete from student where sid=?");
			pre.setInt(1, sid);
			hang = pre.executeUpdate();
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
		JdbcUtil.close(con, pre, null);
		return hang;
	}

	// 添加一个
	public int addOne(Student stu) {
		Connection con = JdbcUtil.getCon();
		PreparedStatement pre = null;
		int hang = 0;
		try {
			pre = con.prepareStatement("insert into student(sname,sex,score,sbirth,sdy) values(?,?,?,?,?)");
			pre.setString(1, stu.getSname());
			pre.setString(2, stu.getSex());
			pre.setFloat(3, stu.getScore());
			pre.setDate(4, new java.sql.Date(stu.getSbirth().getTime()));// 把java.util.Date转化为java.sql.Date
			pre.setBoolean(5, stu.getSdy());
			hang = pre.executeUpdate();
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
		JdbcUtil.close(con, pre, null);
		return hang;
	}

	// 修改一个
	public int updateOne(Student stu) {
		Connection con = JdbcUtil.getCon();
		PreparedStatement pre = null;
		int hang = 0;
		try {
			pre = con.prepareStatement("update student set sname=?,sex=?,score=?,sbirth=?,sdy=? where sid=?");
			pre.setString(1, stu.getSname());
			pre.setString(2, stu.getSex());
			pre.setFloat(3, stu.getScore());
			pre.setDate(4, new java.sql.Date(stu.getSbirth().getTime()));// 把java.util.Date转化为java.sql.Date
			pre.setBoolean(5, stu.getSdy());
			pre.setInt(6, stu.getSid());
			hang = pre.executeUpdate();
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
		JdbcUtil.close(con, pre, null);
		return hang;
	}

	// 获取所有
	public List<Student> getAll() {
		Connection con = JdbcUtil.getCon();
		PreparedStatement pre = null;
		ResultSet set = null;
		List<Student> list = new ArrayList<Student>();
		try {
			pre = con.prepareStatement("select * from student");
			set = pre.executeQuery();
			while (set.next()) {
				list.add(new Student(set.getInt("sid"), set.getString("sname"), set.getString("sex"),
						set.getFloat("score"), set.getDate("sbirth"), set.getBoolean("sdy")));
			}
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
		JdbcUtil.close(con, pre, set);
		return list;
	}

}
package com.zhiyou100.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import com.zhiyou100.entity.Teacher;
import com.zhiyou100.util.JdbcUtil;

public class TeacherDao {
	public Teacher getOneByTname(String tname){
		Connection con=JdbcUtil.getCon();
		PreparedStatement pre=null;
		ResultSet set=null;
		Teacher t=null;
		try {
			 pre=con.prepareStatement("select * from teacher where tname=?");
			 pre.setString(1, tname);
			 set=pre.executeQuery();
			 if(set.next()){
				 t=new Teacher(set.getInt("tid"), set.getString("tname"), set.getString("tpwd"));
			 }
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
		JdbcUtil.close(con, pre, set);
		return t;
	}
}

1.7 登录

  • css:::app.css
table{
	border:1px solid blue;
	border-collapse: collapse;
	margin:50px auto;
}
td,th{
	text-align: center;
	padding:10px;
	border:1px solid blue;
}
#tab_login{
	width:800px;
	margin:200px auto;
}
  • 拼凑登录页面的servlet :/teacher/loginHtml.do
package com.zhiyou100.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class TeacherLoginHtml extends HttpServlet {
	/*
	     java43:天道酬勤 不忘初衷!
	               宝哥:2022年10月25日 下午3:51:21
	*/

	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		//拼凑一个老师登录页面
		resp.setCharacterEncoding("utf-8");
		resp.setContentType("text/html;charset=utf-8");
		PrintWriter out=resp.getWriter();
		StringBuffer stb=new StringBuffer();
		stb.append("<!DOCTYPE html><html><head><meta charset='UTF-8'><title>老师登录页面</title>");
		stb.append("<link type='text/css' rel='stylesheet' href='/java43_project_servlet_02/css/app.css'/>");
		stb.append("<body>");
		stb.append("<form action='/java43_project_servlet_02/teacher/login.do' method='post'>");
		stb.append("<table id='tab_login'>");
		stb.append("<tr>");
		stb.append("<th>老师名字:</th>");
		stb.append("<td><input type='text' name='tname'/></td>");
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th>老师密码:</th>");
		stb.append("<td><input type='password' name='tpwd'/></td>");
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th colspan='2'><input type='reset' value='重填'/> | <input type='submit' value='登录'/></th>");
		stb.append("</tr>");
		stb.append("</table>");
		stb.append("</form>");
		stb.append("</body>");
		stb.append("</html>");
		out.print(stb);
		
	}

	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doGet(req, resp);
	}
}
  • 处理登录业务的servlet: /teacher/login.do
package com.zhiyou100.servlet;
...
public class TeacherLogin extends HttpServlet {
	/*
	     java43:天道酬勤 不忘初衷!
	               宝哥:2022年10月26日 上午9:41:25
	*/
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		  //获取请求参数
		  req.setCharacterEncoding("UTF-8");
		  String tname=req.getParameter("tname");
		  String tpwd=req.getParameter("tpwd");
		  //访问数据库
		  TeacherDao teacherDao=new TeacherDao();
		  Teacher dbTeacher=teacherDao.getOneByTname(tname);
		  resp.setCharacterEncoding("utf-8");
		  resp.setContentType("text/html;charset=utf-8");
		  //判断登录是否成功
		  if(dbTeacher==null){
			  //账号错误:提示信息+回到登录页面
//			  String message="用户名("+tname+")错误!";
			  //message= URLDecoder.decode(message,"utf-8");
//			  message="tname  error!";
//			  resp.sendRedirect("/java43_project_servlet_02/teacher/loginHtml.do?message="+message);
		      
			  //拼凑页面 页面显示错误信息:等待3秒钟刷新到登录页面
			  resp.getWriter().print("<h1 style='color:red;text-align:center;'>用户名("+tname+")错误</h1>");
			  resp.setHeader("Refresh", "3;url=http://localhost:8080/java43_project_servlet_02/teacher/loginHtml.do");
			  
			  return;
		  }
		  if(!dbTeacher.getTpwd().equals(tpwd)){
//			  //密码错误:提示信息+回到登录页面
//			  String message="密码错误!";
//			  message="tpwd error!";
//			  resp.sendRedirect("/java43_project_servlet_02/teacher/loginHtml.do?message="+message);
			  
			  //拼凑页面 页面显示错误信息:等待3秒钟刷新到登录页面
			  resp.getWriter().print("<h1 style='color:red;text-align:center;'>密码错误</h1>");
			  resp.setHeader("Refresh", "3;url=http://localhost:8080/java43_project_servlet_02/teacher/loginHtml.do");
		      return;
		  }
		  //登录成功:跳转到学生管理页面
		  req.getRequestDispatcher("/student/managerHtml.do").forward(req, resp);
		  
	}

	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doGet(req, resp);
	}
}

1.8 学生管理

  • 拼凑学生管理页面的servlet /student/managerHtml.do
package com.zhiyou100.servlet;
...
public class StudentManagerHtml extends HttpServlet {
	/*
	 * java43:天道酬勤 不忘初衷! 宝哥:2022年10月26日 上午9:54:39
	 */

	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //获取所有学生的信息
		StudentDao studentDao=new StudentDao();
		List<Student> list=studentDao.getAll();
		// 拼凑一个学生管理页面
		resp.setCharacterEncoding("utf-8");
		resp.setContentType("text/html;charset=utf-8");
		PrintWriter out = resp.getWriter();
		StringBuffer stb = new StringBuffer();
		stb.append("<!DOCTYPE html><html><head><meta charset='UTF-8'><title>学生管理页面</title>");
		stb.append("<link type='text/css' rel='stylesheet' href='/java43_project_servlet_02/css/app.css'/>");
		stb.append("<body>");
		stb.append("<table id='tab_student'  style='width:1600px;'>");
		stb.append("<tr>");
		stb.append("<th>学号</th><th>名字</th><th>性别</th><th>分数</th><th>党员</th><th>生日</th><th>操作</th>");
		stb.append("</tr>");
		for(Student stu:list){
			stb.append("<tr>");
			stb.append("<td>"+stu.getSid()+"</td>");
			stb.append("<td>"+stu.getSname()+"</td>");
			stb.append("<td>"+stu.getSex()+"</td>");
			stb.append("<td>"+stu.getScore()+"</td>");
			stb.append("<td>"+(stu.getSdy()?"党员":"群众")+"</td>");
			stb.append("<td>"+DateStrUtil.date2Str(stu.getSbirth())+"</td>");
			stb.append("<td><a href='/java43_project_servlet_02/student/deleteOne.do?sid="+stu.getSid()+"'>删除</a> | "
					+ "<a href='/java43_project_servlet_02/student/updateHtml.do?sid="+stu.getSid()+"'>修改</a></td>");
			stb.append("</tr>");
		}
		stb.append("<tr>");
		stb.append("<th colspan='7'><a href='/java43_project_servlet_02/student/addHtml.do'>添加学生</a></th>");
		stb.append("</tr>");
		stb.append("</table>");
		stb.append("</form>");
		stb.append("</body>");
		stb.append("</html>");
		out.print(stb);

	}

	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doGet(req, resp);
	}
}

1.9 删除

  • 删除学生的servlet:/student/delete.do
package com.zhiyou100.servlet;
...
public class StudentDelete extends HttpServlet {
	/*
	     java43:天道酬勤 不忘初衷!
	               宝哥:2022年10月26日 上午10:45:13
	*/

	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		//获取请求参数
		int sid=Integer.parseInt(req.getParameter("sid"));
		//通过dao删除
		new StudentDao().deleteOne(sid);
		 //删除成功
		 //拼凑页面 页面显示信息:等待3秒钟刷新到学生管理页面
		  resp.setCharacterEncoding("utf-8");
		  resp.setContentType("text/html;charset=utf-8");
		  resp.getWriter().print("<h1 style='color:blue;text-align:center;'>删除成功!</h1>");
		  resp.setHeader("Refresh", "3;url=http://localhost:8080/java43_project_servlet_02/student/managerHtml.do");
	      return;
	}

	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doGet(req, resp);
	}
}

1.10 修改

  • 拼凑修改页面的servlet:/student/updateJHtml.do
package com.zhiyou100.servlet;
...
public class StudentUpdateHtml extends HttpServlet {
	/*
	 * java43:天道酬勤 不忘初衷! 宝哥:2022年10月26日 上午10:49:44
	 */

	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		// 获取请求参数
		int sid = Integer.parseInt(req.getParameter("sid"));
		// 拼凑页面 页面表单展示sid的原来信息
		Student stu = new StudentDao().getOneBySid(sid);

		// 拼凑一个修改学生的页面
		resp.setCharacterEncoding("utf-8");
		resp.setContentType("text/html;charset=utf-8");
		PrintWriter out = resp.getWriter();
		StringBuffer stb = new StringBuffer();
		stb.append("<!DOCTYPE html><html><head><meta charset='UTF-8'><title>学生修改页面</title>");
		stb.append("<link type='text/css' rel='stylesheet' href='/java43_project_servlet_02/css/app.css'/>");
		stb.append("<body>");
		stb.append("<form action='/java43_project_servlet_02/student/update.do' method='post'>");
		stb.append("<input type='hidden' name='sid' value='"+stu.getSid()+"'/>");
		stb.append("<table id='tab_student_update'>");
		stb.append("<tr>");
		stb.append("<th>学生名字:</th>");
		stb.append("<td><input type='text' name='sname' value='"+stu.getSname()+"'/></td>");
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th>学生性别:</th>");
		if(stu.getSex().equals("男")){
			stb.append("<td>男:<input type='radio' name='sex' value='男' checked='checked'/>  | 女:<input type='radio' name='sex' value='女'/></td>");
		}else{
			stb.append("<td>男:<input type='radio' name='sex' value='男'/> | 女:<input type='radio' name='sex' value='女' checked='checked'/></td>");
		}
		
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th>学生分数:</th>");
		stb.append("<td><input type='text' name='score' value='"+stu.getScore()+"'/></td>");
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th>是否党员:</th>");
		if(stu.getSdy()){
			stb.append("<td>党员:<input type='radio' name='sdy' value='true' checked='checked'/> | 群众:<input type='radio' name='sdy' value='false'/></td>");
		}else{
			stb.append("<td>党员:<input type='radio' name='sdy' value='true'/> | 群众:<input type='radio' name='sdy' value='false'  checked='checked'/></td>");

		}
		
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th>学生生日(格式必须是xxxx年xx月xx日):</th>");
		stb.append("<td><input type='text' name='sbirth' value='"+(DateStrUtil.date2Str(stu.getSbirth()))+"'/></td>");
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th colspan='2'><input type='reset' value='重填'/> | <input type='submit' value='修改'/></th>");
		stb.append("</tr>");
		stb.append("</table>");
		stb.append("</form>");
		stb.append("</body>");
		stb.append("</html>");
		out.print(stb);

	}

	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doGet(req, resp);
	}
}
  • 处理修改学生业务的servlet:/student/update.do
package com.zhiyou100.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.zhiyou100.dao.StudentDao;
import com.zhiyou100.entity.Student;
import com.zhiyou100.util.DateStrUtil;

public class StudentUpdate extends HttpServlet {
	/*
	     java43:天道酬勤 不忘初衷!
	               宝哥:2022年10月26日 上午11:03:45
	*/

	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		//获取请求参数
		req.setCharacterEncoding("UTF-8");
		Student student=new Student();
		student.setSid(Integer.parseInt(req.getParameter("sid")));
		student.setSname(req.getParameter("sname"));
		student.setScore(Float.parseFloat(req.getParameter("score")));
		student.setSex(req.getParameter("sex"));
		student.setSdy(Boolean.parseBoolean(req.getParameter("sdy")));
		student.setSbirth(DateStrUtil.str2Date(req.getParameter("sbirth")));
		//调用数据库
		new StudentDao().updateOne(student);
		 //拼凑页面 页面显示信息:等待3秒钟刷新到学生管理页面
		  resp.setCharacterEncoding("utf-8");
		  resp.setContentType("text/html;charset=utf-8");
		  resp.getWriter().print("<h1 style='color:blue;text-align:center;'>修改("+student.getSname()+")成功!</h1>");
		  resp.setHeader("Refresh", "3;url=http://localhost:8080/java43_project_servlet_02/student/managerHtml.do");
	      return;
	}

	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doGet(req, resp);
	}
}

1.11 添加

  • 拼凑学生添加页面的servlet:/student/addHtml.do
package com.zhiyou100.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class StudentAddHtml extends HttpServlet {
	/*
	 * java43:天道酬勤 不忘初衷! 宝哥:2022年10月26日 上午11:10:45
	 */

	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		// 拼凑一个添加学生的页面
		resp.setCharacterEncoding("utf-8");
		resp.setContentType("text/html;charset=utf-8");
		PrintWriter out = resp.getWriter();
		StringBuffer stb = new StringBuffer();
		stb.append("<!DOCTYPE html><html><head><meta charset='UTF-8'><title>学生添加页面</title>");
		stb.append("<link type='text/css' rel='stylesheet' href='/java43_project_servlet_02/css/app.css'/>");
		stb.append("<body>");
		stb.append("<form action='/java43_project_servlet_02/student/add.do' method='post'>");
		stb.append("<table id='tab_student_add'>");
		stb.append("<tr>");
		stb.append("<th>学生名字:</th>");
		stb.append("<td><input type='text' name='sname' /></td>");
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th>学生性别:</th>");
		stb.append("<td>男:<input type='radio' name='sex' value='男'/> | 女:<input type='radio' name='sex' value='女'/></td>");
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th>学生分数:</th>");
		stb.append("<td><input type='text' name='score'/></td>");
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th>是否党员:</th>");
		stb.append("<td>党员:<input type='radio' name='sdy' value='true'/> | 群众:<input type='radio' name='sdy' value='false'/></td>");
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th>学生生日(格式必须是xxxx年xx月xx日):</th>");
		stb.append("<td><input type='text' name='sbirth' /></td>");
		stb.append("</tr>");
		stb.append("<tr>");
		stb.append("<th colspan='2'><input type='reset' value='重填'/> | <input type='submit' value='添加'/></th>");
		stb.append("</tr>");
		stb.append("</table>");
		stb.append("</form>");
		stb.append("</body>");
		stb.append("</html>");
		out.print(stb);
	}

	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doGet(req, resp);
	}
}
  • 处理学生添加业务的servlet:/student/add.do
package com.zhiyou100.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.zhiyou100.dao.StudentDao;
import com.zhiyou100.entity.Student;
import com.zhiyou100.util.DateStrUtil;

public class StudentAdd extends HttpServlet {
	/*
	 * java43:天道酬勤 不忘初衷! 宝哥:2022年10月26日 上午11:15:10
	 */

	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		// 获取请求参数
		req.setCharacterEncoding("UTF-8");
		Student student = new Student();
		student.setSname(req.getParameter("sname"));
		student.setScore(Float.parseFloat(req.getParameter("score")));
		student.setSex(req.getParameter("sex"));
		student.setSdy(Boolean.parseBoolean(req.getParameter("sdy")));
		student.setSbirth(DateStrUtil.str2Date(req.getParameter("sbirth")));
		// 调用数据库
		new StudentDao().addOne(student);
		// 拼凑页面 页面显示信息:等待3秒钟刷新到学生管理页面
		resp.setCharacterEncoding("utf-8");
		resp.setContentType("text/html;charset=utf-8");
		resp.getWriter().print("<h1 style='color:blue;text-align:center;'>添加(" + student.getSname() + ")成功!</h1>");
		resp.setHeader("Refresh", "3;url=http://localhost:8080/java43_project_servlet_02/student/managerHtml.do");
		return;
	}

	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doGet(req, resp);
	}
}

效果

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值