项目主要有登录、增删改查、分页、修改回显、删除提示
1、项目结构
2、首先需要创建Student实体类
package Baen;
//学生信息实体类
public class Student {
private String id;
private String name;
private String age;
private String sex;
private String projectid;
private String phonenumber;
private String mailbox;
@Override
public String toString() {
return "Student{" +
"id='" + id + '\'' +
", name='" + name + '\'' +
", age='" + age + '\'' +
", sex='" + sex + '\'' +
", projectid='" + projectid + '\'' +
", phonenumber='" + phonenumber + '\'' +
", mailbox='" + mailbox + '\'' +
'}';
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getProjectid() {
return projectid;
}
public void setProjectid(String projectid) {
this.projectid = projectid;
}
public String getPhonenumber() {
return phonenumber;
}
public void setPhonenumber(String phonenumber) {
this.phonenumber = phonenumber;
}
public String getMailbox() {
return mailbox;
}
public void setMailbox(String mailbox) {
this.mailbox = mailbox;
}
public Student() {
}
public Student(String id, String name, String age, String sex, String projectid, String phonenumber, String mailbox) {
this.id = id;
this.name = name;
this.age = age;
this.sex = sex;
this.projectid = projectid;
this.phonenumber = phonenumber;
this.mailbox = mailbox;
}
}
3、分页实体类PageBean
package Baen;
import java.util.List;
//分页的实体类
public class PageBean<T>{
List<T>list_sbp;//分页查询当前显示
private int page_now;//当前页
private int page_size;//页容量
private int select_count;//总记录
private int page_count;//总页数 总记录% 页容量==0? 总记录/页容量:总记录/页容量+1 select_count%page_size==0?
private int begin_index;//初始下标 (当前页-1)*页容量 (page_now - 1)*page_size
public PageBean() {
}
public PageBean(List<T> list_sbp, int page_now, int page_size, int page_count, int select_count, int begin_index) {
this.list_sbp = list_sbp;
this.page_now = page_now;
this.page_size = page_size;
this.page_count = page_count;
this.select_count = select_count;
this.begin_index = begin_index;
}
public List<T> getList_sbp() {
return list_sbp;
}
public void setList_sbp(List<T> list_sbp) {
this.list_sbp = list_sbp;
}
public int getPage_now() {
return page_now;
}
public void setPage_now(int page_now) {
this.page_now = page_now;
}
public int getPage_size() {
return page_size;
}
public void setPage_size(int page_size) {
this.page_size = page_size;
}
public int getPage_count() {
return page_count;
}
public void setPage_count(int page_count) {
this.page_count = page_count;
}
public int getSelect_count() {
return select_count;
}
public void setSelect_count(int select_count) {
this.select_count = select_count;
}
public int getBegin_index() {
return begin_index;
}
public void setBegin_index(int begin_index) {
this.begin_index = begin_index;
}
}
4、开始写dao的接口 StudentDao
package dao;
import Baen.Deng;
import Baen.Student;
import java.sql.SQLException;
import java.util.List;
public interface StudentDao {
public int findCount();
List<Student> selectAllByPage(int begin, int size);
//查询所有
List<Student> findAll() throws SQLException;
//添加
void AddStudent(Student student);
//删除
void Delete(String id);
//查询
Student findStudentByid(String id);
//修改
void Update(Student student);
//模糊查询
List<Student> Search(String name, String phonenumber);
//分页
List<Student> findStudentPage();
//登录
List<Deng> deng(String name, String pssword);
}
5、StudentDao的接口实现类
package dao;
import Baen.Deng;
import Baen.Student;
import Db.DruidUtil;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanListHandler;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowCallbackHandler;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
//接口实现类
public class StudentDaoimp implements StudentDao {
JdbcTemplate template = new JdbcTemplate(DruidUtil.getDataSource());
@Override
public int findCount() {
String sql="select count(*)from user";
return template.queryForObject(sql,new Object[]{},Integer.class);
}
@Override
public List<Student> selectAllByPage(int begin, int size) {
String sql="select * from user limit ?,?";
return template.query(sql,new BeanPropertyRowMapper<Student>(Student.class),begin,size);
}
@Override
public List<Student> findAll() throws SQLException {
// QueryRunner runner = new QueryRunner();
String sql = "select * from user";
// return runner.query(sql,new BeanListHandler<Student>(Student.class));
return template.query(sql, new BeanPropertyRowMapper<Student>(Student.class));
}
@Override
public void AddStudent(Student student) {
String sql = "insert into user values(null,?,?,?,?,?,?)";
template.update(sql,
student.getName(),
student.getAge(),
student.getSex(),
student.getProjectid(),
student.getPhonenumber(),
student.getMailbox());
}
@Override
public void Delete(String id) {
String sql = "delete from user where id=?";
template.update(sql,id);
}
@Override
public Student findStudentByid(String id) {
String sql = "select * from user where id = ?";
Student student = template.queryForObject(sql, new BeanPropertyRowMapper<Student>(Student.class), id);
return student;
}
@Override
public void Update(Student student) {
String sql ="update user set name=?,age=? ,sex=?,projectid=?,phonenumber=?,mailbox=?where id=?";
template.update(sql,
student.getName(),
student.getAge(),
student.getSex(),
student.getProjectid(),
student.getPhonenumber(),
student.getMailbox(),
student.getId());
}
@Override
public List<Student> Search(String name, String phonenumber) {
// 模糊查询
String sql = "select * from user where 1=1 ";
List<String>list=new ArrayList<String>();
if(!TextUtil.isEmpty(name)){
sql = sql + " and name like ?";
list.add("%"+name+"%");
}
if(!TextUtil.isEmpty(phonenumber)){
sql = sql + " and phonenumber like ?";
list.add("%"+phonenumber+"%");
}
return template.query(sql,new BeanPropertyRowMapper<Student>(Student.class),list.toArray());
}
@Override
public List<Student> findStudentPage() {
return null;
}
@Override
public List<Deng> deng(String name,String password) {
String sql="select * from adminuser where name=? and password=?";
return template.query(sql,new BeanPropertyRowMapper<Deng>(Deng.class),name,password);
}
}
6、我用的是德鲁伊连接池 DruidUtil
package Db;
import com.alibaba.druid.pool.DruidDataSourceFactory;
import javax.sql.DataSource;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
//德鲁伊连接池
public class DruidUtil {
private static DataSource ds;
static {
Properties pr = new Properties();
InputStream rs = DruidUtil.class.getClassLoader().getResourceAsStream("Druid.properties");
try {
pr.load(rs);
ds=DruidDataSourceFactory.createDataSource(pr);
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
public static DataSource getDataSource() {
return ds;
}
public static Connection getConnection() throws SQLException {
return ds.getConnection();
}
public static void Cloce(Connection conn, Statement ps,ResultSet rs){
if (rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (ps!=null){
try {
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
if (conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
7、德鲁伊配置文件Druid.properties
driverClassName = com.mysql.jdbc.Driver
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/user
username=root
password=root
initialSize = 5
maxACtive = 10
maxWait = 3000
8、service层的接口
package service;
import Baen.Deng;
import Baen.PageBean;
import Baen.Student;
import java.sql.SQLException;
import java.util.List;
//service接口
public interface StudentService {
PageBean findStudentPage(String page_now, String page_size);
//查询所有
List<Student> findAll() throws SQLException;
//添加
void AddStudent(Student student) throws SQLException;
//删除
void Delete(String id);
//ID查询
Student findStudentByid(String id) throws SQLException;
//修改
void Update(Student student) throws SQLException;
//模糊查询
List<Student> Search(String name, String phonenumber) throws SQLException;
List<Deng> deng(String name,String password);
//分页
//Page findStudentByPage(int CurrentPage) throws SQLException ;
}
9、service接口实现类
package service;
import Baen.Deng;
import Baen.PageBean;
import Baen.Student;
import dao.StudentDao;
import dao.StudentDaoimp;
import java.sql.SQLException;
import java.util.List;
//service接口实现类
public class StudentServiceimp implements StudentService {
StudentDao dao = new StudentDaoimp();
@Override
public PageBean findStudentPage(String page_now, String page_size) {
int page_now1 = Integer.parseInt(page_now);//获取当前页
int page_size1 = Integer.parseInt(page_size);//页容量
PageBean<Student> pb = new PageBean<Student>();
int select_count = dao.findCount();//调用方法到总记录
pb.setSelect_count(select_count);//设置
int begin = (page_now1 - 1) * page_size1;//算出当前页面索引
List<Student> list = dao.selectAllByPage(begin, page_size1);//获取当前页面内容
pb.setList_sbp(list);//总页数
int page_count = select_count % page_size1 == 0 ? select_count / page_size1 : select_count / page_size1 + 1;
if (page_now1 <= 1) {
pb.setPage_now(1);
} else if (page_now1 >= page_count) {
pb.setPage_now(page_count);
} else {
pb.setPage_now(page_now1);
}
pb.setPage_count(page_count);
System.out.println(pb);
return pb;
}
@Override
public List<Student> findAll() throws SQLException {
return dao.findAll();
}
@Override
public void AddStudent(Student student) throws SQLException {
dao.AddStudent(student);
}
@Override
public void Delete(String id) {
dao.Delete(id);
}
@Override
public Student findStudentByid(String id) throws SQLException {
return dao.findStudentByid(id);
}
@Override
public void Update(Student student) throws SQLException {
dao.Update(student);
}
@Override
public List<Student> Search(String name, String phonenumber) throws SQLException {
return dao.Search(name, phonenumber);
}
@Override
public List<Deng> deng(String name,String password) {
return dao.deng(name,password);
}
}
10、下面就是我们的web 层来调用方法
查询所有
package weba;
import Baen.Student;
import service.StudentService;
import service.StudentServiceimp;
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;
import java.sql.SQLException;
import java.util.List;
//查询所有
@WebServlet("/Servlet")
public class Servlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
StudentService service=new StudentServiceimp();
try {
List<Student> list=service.findAll();
request.setAttribute("list",list);
request.getRequestDispatcher("/PageServlet?page_now=1&&page_size=9").forward(request,response);
} catch (SQLException e) {
e.printStackTrace();
}
}
}
添加
package weba;
import Baen.Student;
import service.StudentService;
import service.StudentServiceimp;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
//添加
@WebServlet("/AddServlet")
public class AddServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//获取要添加的信息
String name = request.getParameter("name");
String age = request.getParameter("age");
String sex = request.getParameter("sex");
String projectid = request.getParameter("projectid");
String phonenumber = request.getParameter("phonenumber");
String mailbox = request.getParameter("mailbox");
// 把获取到的信息放到Student实体类里
Student student = new Student(null,name,age,sex,projectid,phonenumber,mailbox);
StudentService service = new StudentServiceimp();
try {
// 调用service层方法
service.AddStudent(student);
} catch (SQLException e) {
e.printStackTrace();
}
// 跳转页面是我们用转发 注意 需要先跳转到查询所有的 页面 在调到展示页面
request.getRequestDispatcher("/Servlet").forward(request, response);
}
}
修改
package weba;
import Baen.Student;
import service.StudentService;
import service.StudentServiceimp;
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;
import java.sql.SQLException;
import java.util.List;
//修改获取id
//做回显
@WebServlet("/UpdateServlet")
public class UpdateServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String id = request.getParameter("id");
StudentService service = new StudentServiceimp();
Student student = null;
try {
student = service.findStudentByid(id);
} catch (SQLException e) {
e.printStackTrace();
}
request.setAttribute("student", student);
request.getRequestDispatcher("Update.jsp").forward(request, response);
}
}
package weba;
import Baen.Student;
import service.StudentService;
import service.StudentServiceimp;
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;
import java.sql.SQLException;
//修改
@WebServlet("/AUpdateServlet")
public class AUpdateServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
StudentService service=new StudentServiceimp();
// 获取到所有的信息
// 我是根据id修改的
String id = request.getParameter("id");
String name = request.getParameter("name");
String age = request.getParameter("age");
String sex = request.getParameter("sex");
String projectid = request.getParameter("projectid");
String phonenumber = request.getParameter("phonenumber");
String mailbox = request.getParameter("mailbox");
Student student = new Student(id,name,age,sex,projectid,phonenumber,mailbox);
try {
service.Update(student);
request.getRequestDispatcher("/Servlet").forward(request,response);
} catch (SQLException e) {
e.printStackTrace();
}
}
}
删除
package weba;
import service.StudentService;
import service.StudentServiceimp;
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;
import java.sql.SQLException;
//删除
@WebServlet("/delServlet")
public class delServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
StudentService ss = new StudentServiceimp();
// 获取id删除
String[] sids = request.getParameterValues("id");
if (sids != null) {
for (String id : sids) {
ss.Delete(id);
}
}
request.getRequestDispatcher("/Servlet").forward(request,response);
}
}
登录
package weba;
import Baen.Deng;
import Baen.Student;
import Db.DruidUtil;
import Db.Duil;
import com.alibaba.druid.pool.DruidDataSourceFactory;
import org.springframework.jdbc.core.JdbcTemplate;
import service.StudentService;
import service.StudentServiceimp;
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 javax.sql.DataSource;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.List;
import java.util.Properties;
//登录
@WebServlet("/dengServlet")
public class dengServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
JdbcTemplate template=new JdbcTemplate(DruidUtil.getDataSource());
StudentService service = new StudentServiceimp();
Properties pro = new Properties();
InputStream is= Duil.class.getClassLoader().getResourceAsStream("Druid.properties");
// pro.load(is);
Connection conn=null;
PreparedStatement ps=null;
ResultSet rs=null;
pro.load(is);
DataSource ds = null;
try {
ds = DruidDataSourceFactory.createDataSource(pro);
conn = ds.getConnection();
String name = request.getParameter("name");
String password = request.getParameter("password");
String sql="select * from adminuser where name='"+name+"'and password='"+password+"'";
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
if (rs.next()){
request.getRequestDispatcher("/Servlet").forward(request,response);
}else {
response.sendRedirect(request.getContextPath() + "login.jsp");
}
} catch (Exception e) {
e.printStackTrace();
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request,response);
}
}
分页
package weba;
import Baen.PageBean;
import Baen.Student;
import service.StudentService;
import service.StudentServiceimp;
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;
import java.sql.SQLException;
import java.util.List;
//分页
@WebServlet("/PageServlet")
public class PageServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String page_now = request.getParameter("page_now");
String page_size = request.getParameter("page_size");
StudentService sip= new StudentServiceimp();
PageBean<Student> pb=sip.findStudentPage(page_now, page_size);
try {
List<Student> list=sip.findAll();
} catch (SQLException e) {
e.printStackTrace();
}
request.setAttribute("pb",pb);
request.getRequestDispatcher("show.jsp").forward(request,response);
}
}
模糊查询
package weba;
import Baen.PageBean;
import Baen.Student;
import service.StudentService;
import service.StudentServiceimp;
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;
import java.sql.SQLException;
import java.util.List;
//分页
@WebServlet("/PageServlet")
public class PageServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String page_now = request.getParameter("page_now");
String page_size = request.getParameter("page_size");
StudentService sip= new StudentServiceimp();
PageBean<Student> pb=sip.findStudentPage(page_now, page_size);
try {
List<Student> list=sip.findAll();
} catch (SQLException e) {
e.printStackTrace();
}
request.setAttribute("pb",pb);
request.getRequestDispatcher("show.jsp").forward(request,response);
}
}
11、jsp页面
展示页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<title>用户信息管理系统</title>
<!-- 1. 导入CSS的全局样式 -->
<link href="css/bootstrap.min.css" rel="stylesheet">
<!-- 2. jQuery导入,建议使用1.9以上的版本 -->
<script src="/js/jquery-3.3.1.min.js"></script>
<!-- 3. 导入bootstrap的js文件 -->
<script src="/js/bootstrap.min.js"></script>
<style type="text/css">
td, th {
text-align: center;
}
</style>
<script src="${pageContext.request.contextPath}/js/jquery-3.3.1.min.js"></script>
<script type="text/javascript">
function confirmd() {
var a = "确定删除该条数据?";
if (confirm(a) == true) {
return true;
} else {
return false;
}
}
</script>
</head>
<body>
<div class="container">
<center><h3>欢迎管理员:<%=request.getParameter("name")%></h3></center>
<h3 style="text-align: center">用户信息列表</h3>
<center>
<form action="${pageContext.request.contextPath}/SearchServlet" method="get">
姓名:<input type="text" name="name">
手机号:<input type="text" name="phonenumber">
<input type="submit" value="查询">
</form>
</center>
<table border="1" class="table table-bordered table-hover">
<tr class="success">
<th>编号</th>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
<th>所属小组</th>
<th>手机号</th>
<th>邮箱</th>
<th>操作</th>
</tr>
<c:forEach var="a" items="${pb.list_sbp}" varStatus="s">
<tr>
<%--<td><input type="checkbox" name="uid"value="${a.id}"></td>--%>
<td>${s.count}</td>
<td>${a.name}</td>
<td>${a.age}</td>
<td>${a.sex}</td>
<td>${a.projectid}</td>
<td>${a.phonenumber}</td>
<td>${a.mailbox}</td>
<td>
<a class="btn btn-default btn-sm" href="${pageContext.request.contextPath}/UpdateServlet?id=${a.id}">修改</a>
<a class="btn btn-default btn-sm" href="${pageContext.request.contextPath}/delServlet?id=${a.id}" onclick="return confirmd()">删除</a>
</td>
</tr>
</c:forEach>
<td colspan="8" align="center"><a class="btn btn-primary" href="tianjia.jsp">添加联系人</a></td>
</table>
<center>
<a href="/PageServlet?page_now=1&&page_size=9">首页</a>
<a href="/PageServlet?page_now=${pb.page_now-1}&&page_size=9">上一页</a>
<c:forEach begin="1" end="${pb.page_count}" var="i">
<a href="${pageContext.request.contextPath}/PageServlet?page_now=${i}&&page_size=9">${i}</a>
</c:forEach>
<a href="/PageServlet?page_now=${pb.page_now+1}&&page_size=9">下一页</a>
<a href="/PageServlet?page_now=${pb.page_count}&&page_size=9">未页</a>
</center>
</div>
</body>
</html>
登录页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html lang="zh-CN">
<head>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>管理员登录</title>
<!-- 1. 导入CSS的全局样式 -->
<link href="css/bootstrap.min.css" rel="stylesheet">
<!-- 2. jQuery导入,建议使用1.9以上的版本 -->
<script src="/js/jquery-3.3.1.min.js"></script>
<!-- 3. 导入bootstrap的js文件 -->
<script src="/js/bootstrap.min.js"></script>
<script type="text/javascript">
</script>
</head>
<body>
<form action="${pageContext.request.contextPath}/dengServlet" method="get">
<div class="container" style="width: 400px;">
<h3 style="text-align: center;">管理员登录</h3>
<form action="${pageContext.request.contextPath}/dengServlet" method="get">
<div class="form-group">
<label for="user">用户名:</label>
<input type="text" name="name" class="form-control" id="user" placeholder="请输入用户名"/>
</div>
<div class="form-group">
<label for="password">密码:</label>
<input type="password" name="password" class="form-control" id="password" placeholder="请输入密码"/>
</div>
<hr/>
<div class="form-group" style="text-align: center;">
<input class="btn btn btn-primary" type="submit" value="登录">
</div>
</form>
</div>
</form>
</body>
</html>
添加页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>添加用户</title>
<!-- 1. 导入CSS的全局样式 -->
<link href="css/bootstrap.min.css" rel="stylesheet">
<!-- 2. jQuery导入,建议使用1.9以上的版本 -->
<script src="/js/jquery-3.3.1.min.js"></script>
<!-- 3. 导入bootstrap的js文件 -->
<script src="/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<center><h3>添加联系人页面</h3></center>
<form action="${pageContext.request.contextPath}/AddServlet" method="get">
<div class="form-group">
<label for="name">姓名:</label>
<input type="text" class="form-control" id="name" name="name" placeholder="请输入姓名">
</div>
<div class="form-group">
<label for="age">年龄:</label>
<input type="text" class="form-control" id="age" name="age" placeholder="请输入年龄">
</div>
<div class="form-group">
<label for="sex">性别:</label>
<input type="text"class="form-control" id="sex"name="sex"placeholder="请输入性别" >
</div>
<div class="form-group">
<label for="projectid">所属小组:</label>
<%--<input type="text" class="form-control" name="projectid" placeholder="请输入所在小组">--%>
<select name="projectid" class="form-control">
<option name="projectid" value="java1">java1</option>
<option name="projectid" value="java2">java2</option>
<option name="projectid" value="java3">java3</option>
</select>
</div>
<div class="form-group">
<label for="phonenumber">手机号:</label>
<input type="text"id="phone" class="form-control" name="phonenumber" placeholder="请输入手机号码"/><span id="a1">已存在</span>
</div>
<div class="form-group">
<label for="mailbox">Email:</label>
<input type="text" class="form-control" name="mailbox" placeholder="请输入邮箱地址"/>
</div>
<div class="form-group" style="text-align: center">
<input class="btn btn-primary" type="submit" value="提交" />
<input class="btn btn-default" type="reset" value="重置" />
<input class="btn btn-default" type="button" value="返回" />
</div>
</form>
</div>
</body>
<script type="text/javascript">
function fun() {
var xmlhttp;
if (window.XMLHttpRequest){
xmlhttp=new XMLHttpRequest();
}else{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","${pageContext.request.contextPath}/",true);
xmlhttp.send();
}
</script>
</html>
修改页面
<%--
Created by IntelliJ IDEA.
User: 王硕
Date: 2021/12/16
Time: 14:50
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>修改</title>
</head>
<body>
<form action="${pageContext.request.contextPath}/AUpdateServlet"method="get">
<input type="hidden" name="id" value="${student.id}">
姓名:<input type="text"name="name" value="${student.name}"><br/>
年龄:<input type="text"name="age" value="${student.age}"><br/>
性别:<input type="text"name="sex"value="${student.sex}"><br/>
<%--<input type="text"name="projectid"value="${student.projectid}">--%>
所属项目: <select name="projectid" class="form-control"value="${student.projectid}">
<option name="projectid" value="java1">java1</option>
<option name="projectid" value="java2">java2</option>
<option name="projectid" value="java3">java3</option>
</select><br/>
手机号:<input type="text"name="phonenumber"value="${student.phonenumber}"><br/>
邮箱:<input type="text"name="mailbox"value="${student.mailbox}"><br/>
<input type="submit">
</form>
</body>
</html>
这就是一个简单的学生信息管理系统
制作不易 点个赞呗