index.jsp

<%@ page language="java" import="java.sql.*" pageEncoding="utf-8"%>
<%@ page errorPage="error.jsp"%>
<html>
<head>
<title>学生信息管理系统</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<h1>学生信息管理系统</h1>
<a href="add.jsp">添加学生信息</a>
<br />
<br />
<table style="width: 50%;">
<tr>
<th>学号</th>
<th>姓名</th>
<th>性别</th>
<th>出生日期</th>
<th>地址</th>
<th>管理</th>
</tr>
<%
try {
Class.forName("com.mysql.cj.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/web_lab03?&useSSL=false&serverTimezone=UTC", "root", "");
//使用Statement对象
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select * from student"); /*
PreparedStatement stmt = con.prepareStatement("select * from bookinfo");
ResultSet rs = stmt.executeQuery();
*/
while (rs.next()) {
String uid = rs.getString(1);
out.println("<tr><td>" + rs.getString(1) + "</td><td>" + rs.getString(2) + "</td><td>" + rs.getString(3) + "</td><td>"
+ rs.getString(4) + "</td><td>" + rs.getString(5) + "</td><td><a href='edit.jsp?uid=" + uid
+ "'>修改</a>&nbsp;<a href='del.jsp?uid=" + uid + "'>删除</a></td></tr>");
}
rs.close();
stmt.close();
con.close();
} catch (Exception e) {
out.println("Exception:" + e.getMessage());
}
%>
</table>
</body>
</html>

add.jsp

<%@ page contentType="text/html; charset=utf-8" import="java.sql.*" errorPage="error.jsp"%>
<html>
<head>
<title>添加学生信息</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<form name="info" action="addsave.jsp" method="post" onsubmit="return check()">
<h2>添加学生信息</h2>
<table style="width: 50%">
<tr>
<th width="30%">学号:</th>
<td width="70%"><input name="uid" type="text"></td>
</tr>
<tr>
<th>姓名:</th>
<td><input name="name" type="text"></td>
</tr>
<tr>
<th>性别:</th>
<td>
<input type="radio" name="sex" value="男">男
<input type="radio" name="sex" value="女">女
</td>
</tr>
<tr>
<th>出生日期:</th>
<td><input type="date" name="birthday"></td>
</tr>
<tr>
<th>地址:</th>
<td><input name="address" type="text"></td>
</tr> <tr>
<td colspan="2">
<input type="submit" name="submit" value="提交">
<input type="reset" value="重置">
</td>
</tr>
</table>
</form> </body>
<script type="text/javascript">
function check(){
if(info.name.value==""||info.name.value==null){
alert("请输入姓名!");
return false;
}
if(info.sex.value==""||info.sex.value==null){
alert("请选择性别!");
return false;
}
if(info.birthday.value==""||info.birthday.value==null){
alert("请选择出生日期!");
return false;
}
if(info.address.value==""||info.address.value==null){
alert("请输入地址!");
return false;
}
}
</script>
</html>

addsave.jsp

<%@ page contentType="text/html; charset=utf-8" import="java.sql.*" errorPage="error.jsp"%>
<html>
<head>
<title>添加图书信息</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<%
request.setCharacterEncoding("utf-8"); String uid = request.getParameter("uid");
String name = request.getParameter("name");
String sex = request.getParameter("sex");
String birthday = request.getParameter("birthday");
String address = request.getParameter("address"); Class.forName("com.mysql.cj.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/web_lab03?&useSSL=false&serverTimezone=UTC", "root", "");
//使用Statement对象
//Statement stmt = con.createStatement();
//String sql = "insert into bookinfo(bookname,author,price) values('" + bookname + "','" + author + "'," + price + ")";
//int i = stmt.executeUpdate(sql); PreparedStatement stmt = con.prepareStatement("insert into student(uid,name,sex,birthday,address) values(?, ?, ?, ?, ?)");
stmt.setString(1, uid);
stmt.setString(2, name);
stmt.setString(3, sex);
stmt.setString(4, birthday);
stmt.setString(5, address);
int i = stmt.executeUpdate(); if (i == 1) {
out.println("<h2>添加成功!</h2><br/>");
out.println("<a href='index.jsp'>返回首页</a>");
} else {
out.println("<h2>添加失败!</h2><br/>");
out.println("<a href='add.jsp'>重新添加</a>");
}
stmt.close();
con.close(); %>
</body>
</html>

del.jsp

<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" pageEncoding="utf-8"%>
<html>
<head>
<title>删除学生信息</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<%
request.setCharacterEncoding("utf-8");
Class.forName("com.mysql.cj.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/web_lab03?&useSSL=false&serverTimezone=UTC", "root", "");
Statement stmt=con.createStatement();
String uid=request.getParameter("uid");
int i=stmt.executeUpdate("delete from student where uid="+uid);
if(i==1)
{
out.println("<h2>删除成功!</h2><br/>");
}
else
{
out.println("<h2>删除失败!</h2><br/>");
}
out.println("<a href='index.jsp'>返回首页</a>");
stmt.close();
con.close(); %>
</body>
</html>

edit.jsp

<%@ page import="java.sql.*" pageEncoding="utf-8" errorPage="error.jsp"%>
<html>
<head>
<title>修改学生信息</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<%
request.setCharacterEncoding("utf-8");
String uid = request.getParameter("uid");
Class.forName("com.mysql.cj.jdbc.Driver"); Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/web_lab03?&useSSL=false&serverTimezone=UTC", "root", "");
//Statement stmt = con.createStatement();
//ResultSet rs = stmt.executeQuery("select * from bookinfo where id=" + id); PreparedStatement stmt = con.prepareStatement("select * from student where uid=?");
stmt.setString(1, uid);
ResultSet rs = stmt.executeQuery(); rs.next();
%>
<form action="editsave.jsp" method="post">
<h2>修改学生信息</h2>
<table style="width:50%">
<tr>
<th width="30%">姓名:</th>
<td width="70%"><input name="name" type="text"
value="<%=rs.getString(2)%>"></td>
</tr>
<tr>
<th>出生日期:</th>
<td><input name="birthday" type="date"
value="<%=rs.getString(4)%>"></td>
</tr>
<tr>
<th>地址:</th>
<td><input name="address" type="text"
value="<%=rs.getString(5)%>"></td>
</tr>
<tr>
<td colspan="2">
<input type="hidden" name="uid" value="<%=uid%>">
<input type="submit" value="修改">
<input type="reset"value="重置">
</td>
</tr>
</table>
</form>
<%
rs.close();
stmt.close();
con.close();
%>
</body>
</html>

editsave.jsp

<%@ page import="java.sql.*" pageEncoding="utf-8" errorPage="error.jsp"%>
<html>
<head>
<title>修改完成</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<%
request.setCharacterEncoding("utf-8"); String uid = request.getParameter("uid");
String name = request.getParameter("name");
String birthday = request.getParameter("birthday");
String address = request.getParameter("address");
System.out.println(uid+name+birthday+address); Class.forName("com.mysql.cj.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/web_lab03?&useSSL=false&serverTimezone=UTC", "root", "");
Statement stmt = con.createStatement(); //String sql = "update student set name='" + name + "',birthday='" + birthday + "',address=" + address + " where uid=" + uid;
String sql="update student set name='"+ name +"',birthday='"+ birthday +"',address='"+ address +"'where uid='"+ uid +"'"; int i = stmt.executeUpdate(sql);
if (i == 1) {
out.println("<h2>修改成功!</h2><br/>");
out.println("<a href='index.jsp'>返回首页</a>");
} else {
out.println("<h2>修改失败!</h2><br/>");
out.println("<a href='edit.jsp?uid='" + uid + ">重新添加</a>");
}
stmt.close();
con.close();
%>
</body>
</html>

error.jsp

<%@ page language="java" isErrorPage="true" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>error page</title>
</head>
<body>
错误信息为:<br/>
<%=exception.getMessage()%><br>
<%=exception.toString()%>
</body>
</html>

css

body {
text-align: center;
} table {
width: 400px;
border: 1px solid #696969;
border-collapse: collapse;
margin:0 auto;
}
th {
border: 1px solid #696969;
background-color: #FFF8DC;
}
td {
text-align: center;
border: 1px solid #696969;
height: 50px;
background-color: #E0FFFF;
}
input {
font-size: 20px;
}

数据库结构截图

程序截图

java web利用jsp完成简单的学生管理系统的更多相关文章

  1. Java Web之JSP技术

    JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术.JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比htm ...

  2. Java Web(五) JSP详解(四大作用域九大内置对象等)

    前面讲解了Servlet,了解了Servlet的继承结构,生命周期等,并且在其中的ServletConfig和ServletContext对象有了一些比较详细的了解,但是我们会发现在Servlet中编 ...

  3. 初学Java Web(6)——JSP学习总结

    为什么要学习 JSP Servlet 的短板: Servlet 的出现,是为了解决动态输出网页的问题. 虽然这样做目的能达到,但是存在一些缺陷: 在 Servlet 输出网页片段非常恶心 (可读性差, ...

  4. Java Web之JSP

    什么是JSP? JSP就是一个可以写Java代码的HTML页面 JSP是什么? JSP是Servlet,JSP的本质就是Servlet Tomcat的web.xml文件下有这样几段代码: 看到下面的通 ...

  5. Java Web(六) JSP

    现在的Java Web开发已经很少使用JSP脚本了,业务逻辑都交给Servlet处理,JSP只负责显示视图,所以接下来的内容就对JSP脚本不做叙述了... JSP概述 JSP全名为Java Serve ...

  6. Java实现功能简单的学生管理系统(附带源代码)

    这几天Java学了点新的知识,打算要用这些知识做一个比较简单的管理系统,实战一下子,代码中的功能简洁,可能不多,但是作为一个练手来了解一个项目是怎么样一点一点思考的还是不错的 一.代码中要实现的功能 ...

  7. java攻城师之路--复习java web之jsp入门_El表达式_JSTL标签库

    JSP 技术掌握:JSP语法 + EL + JSTL 为什么sun推出 JSP技术 ? Servlet 生成网页比较复杂,本身不支持HTML语法,html代码需要通过response输出流输出,JSP ...

  8. 复习java web之jsp入门_El表达式_JSTL标签库

    JSP 技术掌握:JSP语法 + EL + JSTL 为什么sun推出 JSP技术 ? Servlet 生成网页比较复杂,本身不支持HTML语法,html代码需要通过response输出流输出,JSP ...

  9. java web中jsp常用标签

    在jsp页面开发过程中,经常需要使用JSTL(Java Server Pages Standard Tag Library)标签开开发页面,是看起来更加的规整舒服. JSTL主要提供了5大类标签库: ...

随机推荐

  1. 记录一次mysql的安装之旅

    mysql作为日常开发中常用到的数据库,对每个程序员来说至关重要,今天就跟着我来进行一次mysql的安装之旅吧. 一.安装 1.安装包的方式 1.1.获取安装包 对mysql有过接触的人来说,都知道m ...

  2. JAVA基础语法:常用功能符以及循环结构和分支结构(转载)

    3.JAVA基础语法:常用功能符以及循环结构和分支结构 1.常用功能符 注释 ("文字"是被注释的部分) //文字 单行注释 /文字/ 多行注释 算术运算符 + - * / / 整 ...

  3. xml editing in vi

    Auto complete tags xmledit installation: git clone https://github.com/sukima/xmledit.git, then make ...

  4. ARM的九种寻址方式

    文章目录 1.立即数寻址 2.寄存器寻址 3.寄存器间接寻址 4.寄存器偏移寻址 5.寄存器基址变址寻址 6.批量寄存器寻址 7.相对寻址 8.堆栈寻址 9.块拷贝寻址 寻址方式就是CPU根据指令中的 ...

  5. ubuntu与主机ping不通的解决办法(主机检测不到虚拟网卡)

    文章目录 一.问题的出现与思路的转变 二.Ubuntu的网络适配器的俩种模式 1.桥接模式( Bridged) 2.NAT模式 三.桥接模式下的网卡配置出现问题 四.解决问题的步骤(一次通过) 集线器 ...

  6. linux ftp ubuntu18.04 实测有效 完整方法 vsftpd

    https://linuxize.com/post/how-to-setup-ftp-server-with-vsftpd-on-ubuntu-18-04/ 除了此链接完整有效,其他网友 大都残缺不全 ...

  7. protocol buffer的高效编码方式

    目录 简介 定义一个简单的message Base 128 Varints 消息体的结构 符号整数 字符串 嵌套的消息 总结 简介 protocol buffer这种优秀的编码方式,究竟底层是怎么工作 ...

  8. NOIP 模拟 9 斐波那契

    题解 这是一道推规律的题. 首先,这道题送分不少,先考虑 \(70pts\),直接暴力 \(\mathcal O(n)\) 建边,\(\mathcal O(logn)\) 求 \(lca\) 其次对于 ...

  9. DOS创建/删除/描述 windows服务

    1.以管理员运行cmd ,输入 sc create test binPath= 程序路径\xxx.exe,主要 "="后面必须要空格 在服务里面查看结果 2.设置服务格式: sc ...

  10. JSOUP教程目录

    入门: 1.解析和遍历一个HTML文档 输入: 2.解析一个HTML字符串 3.解析一个body片断 4.从一个URL加载一个Document 5.从一个文件加载一个文档 数据抽取: 6.使用DOM方 ...