简易版学生系统(增删改查)

 

开发工具:eclipse    数据库:SQLServer(数据与实体类一样)

所需jar包

项目结构:

 实体类(与数据库参数一样):

 班级表 Scl
班级id        cid     int
班级名字    cname   varchar(255)

教员表 Sther
教员id        tid   int
教员姓名     tname  varchar(255)

学生表 Stud
学生id        sid             int
学生名字     sname      varchar(255)
教员名字     tname      varchar(255)
所在班级     cname      varchar(255)
爱好            shabit       varchar(255)

 主界面:

主界面jsp代码:

<%@ 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>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style type="">
table,tr,td{

border-collapse: collapse;

}
td{
text-align: center;
}
</style>
</head>
<body>
<form action="a.do">
<p align="center">主界面 &nbsp;&nbsp;&nbsp;<a href="add.jsp">新增</a></p>
<table border align="center">
<tr>
<td colspan="6">

 <label> 教员:</label>
        <select name="ther">
<option >--请选择--</option>
        <c:forEach var="t" items="${tall }">
          <option value="${ t.tname }" ${t.tname==ther?"selected":"" } >${ t.tname }</option>
</c:forEach>
        </select>
         <label> 班级:</label>
        <select name="scl">
       <option>--请选择--</option>
        <c:forEach var="c" items="${call }">
          <option value="${ c.cname }" ${c.cname==scl?"selected":"" }>${ c.cname }</option>
</c:forEach>
        </select>
        
         <label value=""> 爱好:</label>
  <input type="checkbox" name="ah" value="篮球" <c:forEach var="h" items="${shabit }">
  <c:if test="${h=='篮球' }">checked</c:if>
  </c:forEach>>篮球
 <input type="checkbox" name="ah" value="足球" <c:forEach var="h" items="${shabit }">
  <c:if test="${h=='足球' }">checked</c:if>
  </c:forEach>>足球
<input type="checkbox" name="ah" value="唱歌" <c:forEach var="h" items="${shabit }">
  <c:if test="${h=='唱歌' }">checked</c:if>
  </c:forEach>>唱歌
<input type="checkbox" name="ah" value="跳舞"  <c:forEach var="h" items="${shabit }">
  <c:if test="${h=='跳舞' }">checked</c:if>
  </c:forEach>>跳舞
  <input type="checkbox" name="ah" value="摇花手"  <c:forEach var="h" items="${shabit }">
  <c:if test="${h=='摇花手' }">checked</c:if>
  </c:forEach>>摇花手
<button id="">查询</button>

</td>
</tr>
</form>
<tr>
<td>学生id</td>
<td>学生名字</td>
<td>学生教员</td>
<td>班级</td>
<td>学生爱好</td>
<td>操作</td>

</tr>
<c:forEach var="i" items="${all }">
<tr>
<td>${i.sid }</td>
<td>${i.sname }</td>
<td>${i.tname }</td>
<td>${i.cname }</td>
<td>${i.shabit }</td>
<td><a href="del.do?sid=${ i.sid }" onclick="return confirm('确定要删除嘛')">删除</a>&nbsp;<a href="one.do?sid=${ i.sid }">修改</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 javax.servlet.http.HttpSession;

import com.biz.IstudBiz;
import com.biz.impl.studBiz;
import com.entity.Scl;
import com.entity.Sther;
import com.entity.Stud;

@WebServlet("/index.do")
public class AllSuServlet extends HttpServlet {
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doPost(req, resp);
	}
	
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		 HttpSession session = req.getSession();
		IstudBiz is=new studBiz();
		List<Stud> all = is.getall();
		List<Scl> call = is.cgetall();
		List<Sther> tall = is.tgetall();
	
		req.setAttribute("all", all);
		session.setAttribute("call", call);
		session.setAttribute("tall", tall);
		req.getRequestDispatcher("index.jsp").forward(req, resp);
	}

}

 增加界面:

 jsp代码

<%@ 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>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style type="">
table,tr,td{

border-collapse: collapse;
}

</style>
</head>
<body>
<form action="add.do">
<p align="center">增加界面 &nbsp;&nbsp;<a href="index.do">返回主页</a></p>
<table border align="center">
<tr>
<td><label> 姓名:</label><input name="name"></td>
</tr>
<tr>
<td>
<label> 教员:</label>
        <select name="st">
        <c:forEach var="t" items="${tall }">
          <option  value="${ t.tname }" >${ t.tname }</option>
          </c:forEach>
        </select>
</td>
</tr>
<tr>
<td>
 <label> 班级:</label>
        <select name="sc">
        <c:forEach var="c" items="${call }">
          <option  value="${ c.cname }" >${ c.cname }</option>
</c:forEach>
        </select>

</td>
</tr>
<tr>
<td>
 <label value=""> 爱好:</label>
 <input type="checkbox" name="ah" value="篮球" >篮球
<input type="checkbox" name="ah" value="足球" >足球
<input type="checkbox" name="ah" value="唱歌" >唱歌
<input type="checkbox" name="ah" value="跳舞" >跳舞
<input type="checkbox" name="ah" value="摇花手" >摇花手
</td>
</tr>
<tr>
<td>
<button >增加</button>&nbsp&nbsp&nbsp&nbsp<button type="reset" >重置</button>

</td>
</tr>



</table>
</form>
</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.biz.IstudBiz;
import com.biz.impl.studBiz;
import com.entity.Stud;

@WebServlet("/add.do")
public class AddServlet extends HttpServlet{
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doPost(req, resp);
	}
	
	
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		req.setCharacterEncoding("utf-8");
		resp.setContentType("text/html;charset=utf-8");
		PrintWriter out=resp.getWriter();
		String name = req.getParameter("name");
		String st = req.getParameter("st");
		String sc = req.getParameter("sc");
		String[] ah = req.getParameterValues("ah");	
		String shabit="";
		for (String s : ah) {
			shabit+=s+",";
		}
		IstudBiz is=new studBiz();
		int a = is.add(new Stud(0, name, st, sc, shabit));
		//System.out.println("hhh"+a);
		if(a>0) {
			out.print("<script>alert('增加成功');location.href='index.do'</script>");
		}else {
			out.print("<script>alert('增加失败');location.href='add.jsp'</script>");
		}
		
	}

}

删除:

删除会有询问是要删除,点击确定方可弹出删除成功。详情可看主界面jsp代码

 删除的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.biz.IstudBiz;
import com.biz.impl.studBiz;


@WebServlet("/del.do")
public class delServlet extends HttpServlet{
	
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doPost(req, resp);
	}
	
	
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		req.setCharacterEncoding("utf-8");
		resp.setContentType("text/html;charset=utf-8");
		PrintWriter out=resp.getWriter();
		
		int sid = Integer.parseInt(req.getParameter("sid"));
		IstudBiz is=new studBiz();
		int d = is.del(sid);
		if(d>0) {
			out.print("<script>alert('删除成功');location.href='index.do'</script>");
		}else {
			out.print("<script>alert('删除失败');location.href='index.do'</script>");
		}
		
	}

}

 修改

修改的jsp代码

<%@ 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>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style type="">
table,tr,td{

border-collapse: collapse;

}

</style>
</head>
<body>
<form action="upd.do">
<p align="center">修改界面&nbsp;&nbsp;<a href="index.do">返回主页</a></p>
<table border align="center">
<tr>
<td><input name="id" type="hidden" value="${o.sid }"></td>
</tr>
<tr>
<td><label> 姓名:</label><input name="name" value="${o.sname }"></td>
</tr>
<tr>
<td>
<label> 教员:</label>
        <select name="st">
         <option  value="${ o.tname }" >${ o.tname }</option>
         <c:forEach var="t" items="${tall }">
          <option  value="${ t.tname }" >${ t.tname }</option>
          </c:forEach>
         
   
        </select>
</td>
</tr>
<tr>
<td>
 <label> 班级:</label>
        <select name="sc">
        
          <option  value="${ o.cname }" >${ o.cname }</option>
<c:forEach var="c" items="${call }">
          <option  value="${ c.cname }" >${ c.cname }</option>
</c:forEach>
        </select>

</td>
</tr>
<tr>
<td>
 <label value=""> 爱好:</label>
  <input type="checkbox" name="ah" value="篮球" <c:forEach var="h" items="${shabit }">
  <c:if test="${h=='篮球' }">checked</c:if>
  </c:forEach>>篮球
 <input type="checkbox" name="ah" value="足球" <c:forEach var="h" items="${shabit }">
  <c:if test="${h=='足球' }">checked</c:if>
  </c:forEach>>足球
<input type="checkbox" name="ah" value="唱歌" <c:forEach var="h" items="${shabit }">
  <c:if test="${h=='唱歌' }">checked</c:if>
  </c:forEach>>唱歌
<input type="checkbox" name="ah" value="跳舞"  <c:forEach var="h" items="${shabit }">
  <c:if test="${h=='跳舞' }">checked</c:if>
  </c:forEach>>跳舞
   <input type="checkbox" name="ah" value="摇花手"  <c:forEach var="h" items="${shabit }">
  <c:if test="${h=='摇花手' }">checked</c:if>
  </c:forEach>>摇花手
</td>
</tr>
<tr>
<td>
<button>修改</button>&nbsp&nbsp&nbsp&nbsp<button type="reset">重置</button>

</td>
</tr>



</table>
</form>
</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.biz.IstudBiz;
import com.biz.impl.studBiz;
import com.entity.Stud;
@WebServlet("/upd.do")
public class UpdServlet extends HttpServlet{
	
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
	doPost(req, resp);
}
@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
	req.setCharacterEncoding("utf-8");
	resp.setContentType("text/html;charset=utf-8");
	PrintWriter out=resp.getWriter();
	int sid =Integer.parseInt(req.getParameter("id"));
	String name = req.getParameter("name");
	String st = req.getParameter("st");
	String sc = req.getParameter("sc");
	String[] ah = req.getParameterValues("ah");	
	String shabit="";
	for (String s : ah) {
		shabit+=s+",";
	}
	IstudBiz is=new studBiz();
	int u = is.upd(new Stud(sid, name, st,sc, shabit));
	if(u>0) {
		out.print("<script>alert('修改成功');location.href='index.do'</script>");
	}else {
		out.print("<script>alert('修改失败');location.href='index.do'</script>");
	}
	}
}

 查询

 根据单个学生查询的servlet

package com.Servlet;

import java.io.IOException;

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.biz.IstudBiz;
import com.biz.impl.studBiz;
import com.entity.Stud;
@WebServlet("/one.do")
public class OneServlet extends HttpServlet{
	
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doPost(req, resp);
	}
	
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
	
		
		int sid = Integer.parseInt(req.getParameter("sid"));
		IstudBiz is=new studBiz();
		Stud one = is.byId(sid);
		String ah = one.getShabit();
		
		String[] shabit = ah.split(",");
		req.setAttribute("o", one);
		req.setAttribute("shabit", shabit );
		req.getRequestDispatcher("upd.jsp").forward(req, resp);
	}

}

 根据老师和班级查

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 javax.servlet.http.HttpSession;

import com.biz.IstudBiz;
import com.biz.impl.studBiz;
import com.entity.Scl;
import com.entity.Sther;
import com.entity.Stud;
@WebServlet("/a.do")
public class MoServlet extends HttpServlet{
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doPost(req, resp);
	}
	
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
	
		HttpSession session = req.getSession();
		String ther = req.getParameter("ther");
		String scl = req.getParameter("scl");
		String ah = req.getParameter("ah");
		
		IstudBiz is=new studBiz();
		if(ther==null&&scl==null) {
			List<Stud> all = is.getall();
			 req.setAttribute("all", all);
			 List<Scl> call = is.cgetall();
				List<Sther> tall = is.tgetall();
				session.setAttribute("call", call);
				session.setAttribute("tall", tall);
				req.getRequestDispatcher("index.jsp").forward(req, resp);
		}else {
			List<Stud> all = is.getKey(ther, scl, ah);
			req.setAttribute("all",all);
			List<Scl> call = is.cgetall();
			List<Sther> tall = is.tgetall();
			session.setAttribute("call", call);
			session.setAttribute("tall", tall);
			req.getRequestDispatcher("index.jsp").forward(req, resp);
		}
		
		
	}

}

项目所有Dao方法

package com.dao.impl;

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

import com.dao.IstudDao;
import com.entity.Scl;
import com.entity.Sther;
import com.entity.Stud;
import com.uitl.DBHelp;


public class studDao implements IstudDao{
	Connection con;
	PreparedStatement ps;
	ResultSet rs;
	/**
	 * 查询学生所有
	 */
	public List<Stud> getall() {
		List<Stud> list=new ArrayList<Stud>();
		try {
			con=DBHelp.getCon();
			String sql="select * from Stud";
			ps=con.prepareStatement(sql);
			rs=ps.executeQuery();
			while(rs.next()) {
				Stud s=new Stud(rs.getInt(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5));
				list.add(s);
			
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			DBHelp.myClose(con, ps, rs);
		}
		return list;
	}
	/**
	 * 查询班级所有
	 */
	@Override
	public List<Scl> cgetall() {
		List<Scl> list=new ArrayList<Scl>();
		try {
			con=DBHelp.getCon();
			String sql="select * from scl";
			ps=con.prepareStatement(sql);
			rs=ps.executeQuery();
			while(rs.next()) {
				Scl c=new Scl(rs.getInt(1), rs.getString(2));
				list.add(c);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			DBHelp.myClose(con, ps, rs);
		}
		return list;
	}
	/**
	 * 查询教员所有
	 */
	@Override
	public List<Sther> tgetall() {
		List<Sther> list=new ArrayList<Sther>();
		try {
			con=DBHelp.getCon();
			String sql="select * from Sther";
			ps=con.prepareStatement(sql);
			rs=ps.executeQuery();
			while(rs.next()) {
				Sther t=new Sther(rs.getInt(1), rs.getString(2));
				list.add(t);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			DBHelp.myClose(con, ps, rs);
		}
		return list;
	}
	/**
	 * 增加学生
	 */
	@Override
	public int add(Stud n) {
		try {
			con=DBHelp.getCon();
			String sql="insert into stud values(?,?,?,?)";
			ps=con.prepareStatement(sql);
			ps.setString(1,n.getSname());
			ps.setString(2,n.getTname());
			ps.setString(3,n.getCname());
			ps.setString(4,n.getShabit());
			return ps.executeUpdate();
			
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			DBHelp.myClose(con, ps, rs);
		}
		return 0;
	}
/**
 * 根据id删除学生
 */
	@Override
	public int del(int sid) {
		try {
			con=DBHelp.getCon();
			String sql="delete stud where sid=?";
			ps=con.prepareStatement(sql);
			ps.setInt(1, sid);
			return ps.executeUpdate();
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			DBHelp.myClose(con, ps, rs);
		}
		return 0;
	}
	/**
	 * 模糊查询
	 */
	@Override
	public List<Stud> getKey(String tname, String cname, String shabit) {
		List<Stud> list=new ArrayList<Stud>();
		try {
			con=DBHelp.getCon();
			String sql="select * from stud where tname like ? and cname like ? and shabit like ?";
			ps=con.prepareStatement(sql);
			ps.setString(1, "%"+tname+"%");
			ps.setString(2, "%"+cname+"%");
			ps.setString(3, "%"+shabit+"%");
			rs=ps.executeQuery();
			while(rs.next()) {
				Stud p=new Stud(rs.getInt(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5));
			System.out.println(p+"哈哈哈哈哈哈");
				list.add(p);
			
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			DBHelp.myClose(con, ps, rs);
		}
		return list;
		
	}
	/**
	 * 根据id查询单个学生
	 */
	@Override
	public Stud byId(int sid) {
		try {
			con=DBHelp.getCon();
			String sql="select * from stud where sid=?";
			ps=con.prepareStatement(sql);
			ps.setInt(1, sid);
			rs=ps.executeQuery();
			if(rs.next()) {
				Stud st=new Stud(rs.getInt(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5));
			
				return st;
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			DBHelp.myClose(con, ps, rs);
		}
		return null;
	}
	
	/**
	 * 根据id修改学生
	 */
	@Override
	public int upd(Stud s) {
		try {
			con=DBHelp.getCon();
			String sql="update stud set sname=?,tname=?,cname=?,shabit=? where sid=?";
			ps=con.prepareStatement(sql);
			ps.setString(1,s.getSname());
			ps.setString(2,s.getTname());
			ps.setString(3,s.getCname());
			ps.setString(4,s.getShabit());
			ps.setInt(5, s.getSid());
			return ps.executeUpdate();
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			DBHelp.myClose(con, ps, rs);
		}
		return 0;
	}
	
	
}

see  you 更多精彩咱们下期见~~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值