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. Socket通信-服务端

    WSADATA wsd; SOCKET sClient; SOCKET sServer; SOCKADDR_IN addrServ; char chRcvBuf[RECV_BUF_SIZE]; if ...

  2. Shellshock 破壳漏洞 Writeup

    破壳漏洞 CVE编号:CVE-2014-6271 题目URL:http://www.whalwl.site:8029/ 提示:flag在服务器根目录 ShellShock (CVE-2014-6271 ...

  3. Java调用阿里云短信接口发送手机验证码

    前五步可参考阿里云服务文档:https://help.aliyun.com/document_detail/59210.html?spm=a2c4g.11174283.4.1.2b152c42DoJ7 ...

  4. ☕【Java技术指南】「编译器专题」重塑认识Java编译器的执行过程(常量优化机制)!

    问题概括 静态常量可以再编译器确定字面量,但常量并不一定在编译期就确定了, 也可以在运行时确定,所以Java针对某些情况制定了常量优化机制. 常量优化机制 给一个变量赋值,如果等于号的右边是常量的表达 ...

  5. kvm虚拟化的qcow2磁盘格式的扩容方法

    第一种:增加一块磁盘而另磁盘空间增大 1).先进入kvm环境,创建一块硬盘:qemu-img create -f qcow2 /home/tianke/test.qcow2 40G 2).再给增加的硬 ...

  6. 高性能 C++ HTTP 客户端原理与实现

    一.什么是Http Client Http协议,是全互联网共同的语言,而Http Client,可以说是我们需要从互联网世界获取数据的最基本方法,它本质上是一个URL到一个网页的转换过程.而有了基本的 ...

  7. noip12

    T1 类似于昨天的t3,先用单调栈求出管控区间,然后暴力求解30pts 我没取模还没开longlong,然后就爆0了 正解: 仍然是用单调栈求一下区间,用线段树维护一下余数,对于i所对应的区间\([l ...

  8. mongodb中时间跟实际时间相差8小时----时区问题

    遇到的问题 参考:mongo中时间跟实际时间相差8小时 Mongo中一个Collection有一个字段用来存放数据的插入时间,但记录的时间比实际时间晚了8小时. 查询得知存储在mongodb中的时间是 ...

  9. C# 如何在编译时将 dll 复制到 bin\Release 目录下

    下面假设 Project 名为 Gamma4RTD,需要调用的 dll 文件为 rtddll.dll.IDE 是 Visual Studio 2015 打开 Visual Studio 2015 -& ...

  10. C++ CLI简介(什么是C++ CLI)

    要知道C++/CLI是什么,首先知道什么是CLI. 一.CLI简介 CLI:(Common Language Infrastructure,通用语言框架)提供了一套可执行代码和它所运行需要的虚拟执行环 ...