网络编程 
首页 > 网络编程 > 浏览文章

JSP学生信息管理系统

(编辑:jimmy 日期: 2024/12/28 浏览:3 次 )

本文实例为大家分享了JSP学生信息管理系统源码,JSP+Servlet+Javabean+JDBC+MySQL,供大家参考,具体内容如下

1.service层,进行数据库操作    

package com.service;
/** 
 * 负责学生信息的所有数据库操作,增删改查
 */
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
 
import com.model.stuInfo;
 
public class stuInfoService {
 private Connection conn;
 private PreparedStatement pstmt;//执行sql语句
 
 public stuInfoService() {
  conn = new com.conn.conn().getCon();
 }
 
 public boolean addStu(stuInfo stu) {//插入学生数据
  try {
   pstmt = conn.prepareStatement("insert into studentinfo"
     + "(Nickname,truename,sex,birthday,major,course,interest,remark) "
     + "values(");
   pstmt.setString(1, stu.getNickname());
   pstmt.setString(2, stu.getTruename());
   pstmt.setByte(3, stu.getSex());
   pstmt.setString(4, stu.getbirthday());
   pstmt.setString(5, stu.getmajor());
   pstmt.setString(6, stu.getcourses());
   pstmt.setString(7, stu.getinterests());
   pstmt.setString(8, stu.getremark());
 
   pstmt.executeUpdate();
   return true;
  } catch (SQLException e) {
   // TODO Auto-generated catch block
 
   e.printStackTrace();
   return false;
  }
 
 }
//查询所哟学生信息
 public List<stuInfo> queryAllStu() {//查询学生数据
  List<stuInfo> stus = new ArrayList<stuInfo>();//每一个学生的信息作为list集合的每一个元素存储在list集合中
  try {
   pstmt = conn.prepareStatement("select * from studentinfo");
   ResultSet rs = pstmt.executeQuery();
   while (rs.next()) {
    stuInfo stu = new stuInfo();
    stu.setId(rs.getInt(1));
    stu.setNickname(rs.getString(2));
    stu.setTruename(rs.getString(3));
    stu.setSex(rs.getByte(4));
    if (rs.getDate(5) != null)
     stu.setbirthday(rs.getDate(5).toString());
    stu.setmajor(rs.getString(6));
    if (rs.getString(7) != null)
     stu.setcourse(rs.getString(7).split("&"));
    if (rs.getString(8) != null)
     stu.setinterest(rs.getString(8).split("&"));
    stu.setremark(rs.getString(9));
    stus.add(stu);
 
   }
   return stus;
 
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
   return null;
  }
 
 }
//查询单个学生信息
 public stuInfo queryStubyID(int id) {
  // List stus = new ArrayList();
  try {
   pstmt = conn
     .prepareStatement("select * from studentinfo where id=");
   pstmt.setInt(1, id);
   ResultSet rs = pstmt.executeQuery();
   if (rs.next()) {
    stuInfo stu = new stuInfo();
    stu.setId(rs.getInt(1));
    stu.setNickname(rs.getString(2));
    stu.setTruename(rs.getString(3));
    stu.setSex(rs.getByte(4));
    if (rs.getDate(5) != null)
     stu.setbirthday(rs.getDate(5).toString());
    stu.setmajor(rs.getString(6));
    if (rs.getString(7) != null)
     stu.setcourse(rs.getString(7).split("&"));
    if (rs.getString(8) != null)
     stu.setinterest(rs.getString(8).split("&"));
    stu.setremark(rs.getString(9));
    // stus.add(stu);
    return stu;
 
   }
   return null;
 
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
   return null;
  }
 
 }
  //更新学生信息
 public boolean updateStu(stuInfo stu) {
 
  try {
   pstmt = conn
     .prepareStatement("update studentinfo set Nickname="
       + " major=");
   pstmt.setString(1, stu.getNickname());
   pstmt.setString(2, stu.getTruename());
   pstmt.setByte(3, stu.getSex());
   pstmt.setString(4, stu.getbirthday());
   pstmt.setString(5, stu.getmajor());
   pstmt.setString(6, stu.getcourses());
   pstmt.setString(7, stu.getinterests());
   pstmt.setString(8, stu.getremark());
   pstmt.setInt(9, stu.getId());
   pstmt.executeUpdate();
   return true;
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
   return false;
  }
 }
  //删除学生信息
 public Boolean deleteStu(int id) {
 
  try {
   pstmt = conn.prepareStatement("delete from studentinfo where id=");
   pstmt.setInt(1, id);
   pstmt.executeUpdate();
   return true;
  } catch (Exception e) {
   e.getStackTrace();
   return false;
  }
 
 }
}

2.InputStuInfoServlet,添加学生信息的Servlet    

package com.servlet;
 
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
 
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
import com.model.stuInfo;
import com.service.stuInfoService;
 
public class inputStuInfoServlet extends HttpServlet {
 
 /**
  * Constructor of the object.
  */
 public inputStuInfoServlet() {
  super();
 }
 
 /**
  * Destruction of the servlet. <br>
  */
 public void destroy() {
  super.destroy(); // Just puts "destroy" string in log
  // Put your code here
 }
 
 /**
  * The doGet method of the servlet. <br>
  *
  * This method is called when a form has its tag value method equals to get.
  * 
  * @param request the request send by the client to the server
  * @param response the response send by the server to the client
  * @throws ServletException if an error occurred
  * @throws IOException if an error occurred
  */
 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
 
  doPost(request, response);
 }
 
 /**
  * The doPost method of the servlet. <br>
  *
  * This method is called when a form has its tag value method equals to post.
  * 
  * @param request the request send by the client to the server
  * @param response the response send by the server to the client
  * @throws ServletException if an error occurred
  * @throws IOException if an error occurred
  */
 public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  request.setCharacterEncoding("utf-8");//get到表单所有的控件的值
  String nickname=request.getParameter("nickname");
  String truename=request.getParameter("truename");
  byte sex=Byte.parseByte(request.getParameter("sex"));
  String birthday=request.getParameter("birthday");
  String major=request.getParameter("major");
  System.out.println(major);
  //String course=request.getParameter("course");
  String courses[]=request.getParameterValues("course");
  String interests[]=request.getParameterValues("interest");
  String remark=request.getParameter("remark");
  //放到Javabean中暂时保存
  stuInfo stu=new stuInfo();
  stu.setNickname(nickname);
  stu.setTruename(truename);
   
  stu.setbirthday(birthday);
  if(birthday.equals(""))
   stu.setbirthday(null);
  if(courses!=null)
  stu.setcourse(courses);
  if(interests!=null)
  stu.setinterest(interests);
  stu.setremark(remark);
  stu.setmajor(major);
  stu.setSex(sex);
  if(new stuInfoService().addStu(stu))//插入学生数据的方法
   response.sendRedirect("../inputStuInfo_success.jsp");
  else
   response.sendRedirect("../inputStuInfo.jsp");//插入数据库失败则返回初始输入页面
   
 }
 
 /**
  * Initialization of the servlet. <br>
  *
  * @throws ServletException if an error occurs
  */
 public void init() throws ServletException {
  // Put your code here
 }
 
}

3.stuInfo,保存学生信息的Javabean    

package com.model;
//Javabean相当于是一个中间件,用于类与类之间,各层之间的中转数据的一个中转站
public class stuInfo {
 private int id;
 private String nickname;
 private String truename;
 private byte sex;
 private String birthday;
 private String major;
 private String[] course = { "" };
 private String courses = "";
 private String[] interest = { "" };
 private String interests = "";
 private String remark;
 public int getId() {
  return id;
 }
 public void setId(int id) {
  this.id = id;
 }
 public String getNickname() {
  return nickname;
 }
 public void setNickname(String nickname) {
  this.nickname = nickname;
 }
 public String getTruename() {
  return truename;
 }
 public void setTruename(String truename) {
  this.truename = truename;
 }
 public byte getSex() {
  return sex;
 }
 public void setSex(byte sex) {
  this.sex = sex;
 }
 public String getbirthday() {
  return birthday;
 }
 public void setbirthday(String birthday) {
  this.birthday = birthday;
 }
 public String getmajor() {
  return major;
 }
 public void setmajor(String major) {
  this.major = major;
 }
 public String[] getcourse() {
  return course;
 }
 public void setcourse(String[] course) {
  this.course = course;
 }
 public String getcourses() { 
  if(course!=null)
  {courses="";
   for(int i=0;i<course.length;i++)
   courses+=course[i]+"&";
  }
  courses=courses.substring(0,courses.length()-1);
  return courses;
 }
 public void setcourses(String courses) {
  this.courses = courses;
 }
 public String[] getinterest() {
  return interest;
 }
 public void setinterest(String[] interest) {
  this.interest = interest;
 }
 public String getinterests() {
  if(interest!=null)
  {interests="";
   for(int i=0;i<interest.length;i++)
   interests+=interest[i]+"&";
  }
  interests=interests.substring(0,interests.length()-1);
  return interests;
 }
 public void setinterests(String interests) {
  this.interests = interests;
 }
 public String getremark() {
  return remark;
 }
 public void setremark(String remark) {
  this.remark = remark;
 }
}

4.DB connect 类    

package com.conn;
 
import java.sql.Connection;
import java.sql.DriverManager;
 
public class conn {
 
 public Connection getCon() {
  try {
   Class.forName("com.mysql.jdbc.Driver");
   String url = "jdbc:mysql://localhost/Stu_info_System";
   String user = "root";
   String password = "root";
   Connection conn = DriverManager.getConnection(url, user, password);
   System.out.println(conn.getMetaData().getURL());
 
   return conn;
  } catch (Exception e) {
   e.printStackTrace();
   return null;
  }
 
 }
 
}

源码下载:JSP学生信息管理系统

以上就是本文的全部内容,希望对大家学习JSP管理系统有所帮助。

上一篇:JSP实现用户登录、注册和退出功能
下一篇:JSP使用ajaxFileUpload.js实现跨域问题
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。