第一步创建一个表

 1 create database liyongzhendb default character set utf8 collate utf8_bin;
2
3 CREATE TABLE IF NOT EXISTS student (
4 id INT AUTO_INCREMENT,
5 name VARCHAR(255) NOT NULL,
6 password VARCHAR(255) NOT NULL,
7 date_of_birth DATE,
8 description TEXT,
9 PRIMARY KEY (id)
10 )ENGINE=InnoDB

第二步创建一个Web工程,工程名叫servlet-jsp-curd

第三步创建一个POJO

 1 package model;
2
3 import java.util.Date;
4
5 public class Student {
6
7 private int id;
8 private String name;
9 private String password;
10 private Date dateOfBirth;
11 private String description;
12
13 public Student() {
14 }
15
16 public int getId() {
17 return id;
18 }
19
20 public void setId(int id) {
21 this.id = id;
22 }
23
24 public String getName() {
25 return name;
26 }
27
28 public void setName(String name) {
29 this.name = name;
30 }
31
32 public String getPassword() {
33 return password;
34 }
35
36 public void setPassword(String password) {
37 this.password = password;
38 }
39
40 public Date getDateOfBirth() {
41 return dateOfBirth;
42 }
43
44 public void setDateOfBirth(Date dateOfBirth) {
45 this.dateOfBirth = dateOfBirth;
46 }
47
48 public String getDescription() {
49 return description;
50 }
51
52 public void setDescription(String description) {
53 this.description = description;
54 }
55
56 }

add.jsp类

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
2 pageEncoding="UTF-8"%>
3 <!DOCTYPE html>
4 <html>
5 <head>
6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7 <title>添加学生</title>
8 <link rel="stylesheet"
9 href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
10 <style type="text/css">
11 body {
12 padding-top: 50px;
13 }
14
15 form {
16 padding: 40px 15px;
17 width: 600px;
18 margin: 0 auto;
19 }
20
21 .group {
22 margin: 10px;
23 padding-bottom: 10px;
24 max-width: 600px;
25 }
26
27 input {
28 width: 400px;
29 }
30
31 .submit {
32 text-align: right;
33 }
34 </style>
35 </head>
36 <body>
37 <jsp:include page="nav.jsp"/>
38 <div class="container">
39 <form action="save.do" method="post">
40 <div class="group">
41 <label for="name" class="title">姓名:</label> <input type="text"
42 id="name" name="name" />
43 </div>
44 <div class="group">
45 <label for="password" class="title">密码:</label> <input
46 type="password" id="password" name="password" />
47 </div>
48 <div class="group">
49 <label for="description" class="description">说明:</label> <input
50 id="description" name="description" />
51 </div>
52 <div class="submit">
53 <button type="submit" value="提交" id="submit">保存</button>
54 </div>
55 </form>
56 </div>
57 </body>
58 </html>

nav.jsp类实现添加功能

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
2 pageEncoding="UTF-8"%>
3 <nav class="navbar navbar-inverse navbar-fixed-top">
4 <div class="container">
5 <div class="navbar-header">
6 <button type="button" class="navbar-toggle collapsed"
7 data-toggle="collapse" data-target="#navbar" aria-expanded="false"
8 aria-controls="navbar">
9 <span class="sr-only">Toggle navigation</span> <span
10 class="icon-bar"></span> <span class="icon-bar"></span> <span
11 class="icon-bar"></span>
12 </button>
13 <a class="navbar-brand" href="#">JSP增删改查示例</a>
14 </div>
15 <div id="navbar" class="collapse navbar-collapse">
16 <ul class="nav navbar-nav">
17 <li class="active"><a href="students.jsp">列表</a></li>
18 <li><a href="add.jsp">添加</a></li>
19 </ul>
20 </div>
21 </div>
22 </nav>

list.jsp类是查询所有的

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
2 pageEncoding="UTF-8"%><%@ taglib prefix="c"
3 uri="http://java.sun.com/jsp/jstl/core"%>
4 <!DOCTYPE html>
5 <html>
6 <head>
7 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
8 <title>学生列表</title>
9 <link rel="stylesheet"
10 href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
11 <style type="text/css">
12 table {
13 margin-top: 80px;
14 }
15 </style>
16 </head>
17 <body>
18 <jsp:include page="nav.jsp" />
19 <div class="container">
20 <table class="table">
21 <tr>
22 <th>ID</th>
23 <th>姓名</th>
24 <th>密码</th>
25 <th>说明</th>
26 <th>操作</th>
27 </tr>
28 <c:forEach var="student" items="${students}">
29 <tr>
30 <td>${student.id}</td>
31 <td>${student.name}</td>
32 <td>${student.password}</td>
33 <td>${student.description}</td>
34 <td><a href="edit.do?id=${student.id}">修改</a> | <a
35 href="delete.do?id=${student.id}">删除</a></td>
36 </tr>
37 </c:forEach>
38 </table>
39 </div>
40 </body>
41 </html>

创建一个edit.jsp类实现编辑功能,编辑功能分两部分,一部分将数据查询出来,放到表单里。另一部分是将表单的数据更新到数据库。

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
2 pageEncoding="UTF-8"%>
3 <!DOCTYPE html>
4 <html>
5 <head>
6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7 <title>修改学生</title>
8 <link rel="stylesheet"
9 href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
10 <style type="text/css">
11 body {
12 padding-top: 50px;
13 }
14
15 form {
16 padding: 40px 15px;
17 width: 600px;
18 margin: 0 auto;
19 }
20
21 .group {
22 margin: 10px;
23 padding-bottom: 10px;
24 max-width: 600px;
25 }
26
27 input {
28 width: 400px;
29 }
30
31 .submit {
32 text-align: right;
33 }
34 </style>
35 </head>
36 <body>
37 <jsp:include page="nav.jsp"/>
38 <div class="container">
39 <form action="update.do" method="post">
40 <input type="hidden" name="id" value="${student.id}">
41
42 <div class="group">
43 <label for="name" class="title">姓名:</label> <input type="text"
44 id="name" name="name" value="${student.name}" />
45 </div>
46 <div class="group">
47 <label for="password" class="title">密码:</label> <input
48 type="password" id="password" name="password" value="${student.password}" />
49 </div>
50 <div class="group">
51 <label for="description" class="description">说明:</label> <input
52 id="description" name="description" value="${student.description}" />
53 </div>
54 <div class="submit">
55 <button type="submit" value="提交" id="submit">保存</button>
56 </div>
57 </form>
58 </div>
59 </body>
60 </html>

这样一个增删改查的工程就做好了

使用Servlet编写增删改查的更多相关文章

  1. 最简单的jsp+servlet的增删改查代码

    package ceet.ac.cn.dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.s ...

  2. 一个Servlet处理增删改查的方法

    处理的思路是在servlet中定义不同的增删改查方法,页面请求 的时候携带请求的参数,根据参数判断调用不同的方法. package cn.xm.small.Servlet; import java.i ...

  3. Servlet简单增删改查

    前台页面是别人给的. 例子: package cn.itcast.cus.dao; import java.sql.SQLException; import java.util.ArrayList; ...

  4. jsp+servlet+mysql增删改查

    用的IntelliJ IDEA开发的,jdk1.8 1 首先是项目结构,如下图所示 2看各层的代码 首先是web.xml <?xml version="1.0" encodi ...

  5. java中编写增删改查

    按照图书数据库来说 //查询 :查询的返回值有两种类型,如果返回的数据你不确定是一条还是多条就返回一个List集合.如果你确定数据返回的是一条,可以把返回值换成Book实体类型.public List ...

  6. JPA-day02 项目结构 编写增删改查测试类

  7. servlet增删改查

    Servlet 使用Servlet进行增删改查 步骤 1.  导入以下几个jar包到WEB-INF下的lib包里,必要时build path,其中jstl.jar和standard.jar是使用jst ...

  8. 12 Servlet_04 Servlet增删改查 静态页面与动态页面 EL表达式 table表格的一些样式

    今天学习了servlet的增删改查: 存储数据 setAttribute(String name,Object obj );获取数据 getAttribute(String name);删除数据 re ...

  9. SSM整合_年轻人的第一个增删改查_基础环境搭建

    写在前面 SSM整合_年轻人的第一个增删改查_基础环境搭建 SSM整合_年轻人的第一个增删改查_查找 SSM整合_年轻人的第一个增删改查_新增 SSM整合_年轻人的第一个增删改查_修改 SSM整合_年 ...

随机推荐

  1. 帆软思迈特软件Smartbi两家区别在哪里?

    简单介绍下,从前端展现市场来看,国内这几年帆软算是做的比较好的一家公司,整体市场营销,以及产品易用性也是不错.思迈特公司也是一家专门从事做数据分析平台的公司,也有接近20年的历史,早期从银行.金融证券 ...

  2. 解决overlay2存储驱动的磁盘配额问题

    为啥要用overlay2 docker centos(内核3.10)上默认存储驱动是devicemapper 的loop-lvm模式,这种模式是用文件模拟块设备,不推荐生产使用direct lvm又不 ...

  3. 开源绘画应用 Pinta 已移植到GTK 3和.NET 6

    Pinta 是一款开源绘画应用,适用于 Linux.Windows 和 macOS.你可以用它来进行自由手绘/素描.你也可以用它在现有的图片上添加箭头.方框.文字等. 年初发布了 Pinta 2.0. ...

  4. redis部署以及各种数据类型使用命令等详解

    参考:https://www.cnblogs.com/pyyu/p/9843950.html  redis博客地址 编译安装redis 开始部署 [root@mcw01 ~]$ ls anaconda ...

  5. Qt:QUrl构造时的qrc前缀

    参考(按对我帮助从大到小排列): Qt内的各种路径(让人迷惑) - 鬼谷子com - 博客园 qt webengineview 加载本地资源方式 - beautifulday - 博客园 (17条消息 ...

  6. LeetCode-005-最长回文子串

    最长回文子串 题目描述:给你一个字符串 s,找到 s 中最长的回文子串. 示例说明请见LeetCode官网. 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/pr ...

  7. 我的hacker标杆

    前言:我为什么用"标杆"而不是用偶像来做题目呢?因为在我的心中,值得我学习的黑客绝不是仅仅值得成为我个人的偶像,更应该成为业界的标杆. 国外篇: 丹尼斯·里奇 评价:克尼汉评价道: ...

  8. laravel 公共类json库封装

    封装常用的接口响应: 创建 response.php 在app下创建如下文件下(目录及文件名可以自己设置) app/common/response.php,在内部补充如下代码: <?php /* ...

  9. 微信小程序节流使用方法

    函数节流: 英文 throttle 有节流阀的意思.大致意思也是 节约触发的频率 那么,函数节流,真正的含义是:单位时间n秒内,第一次触发函数并执行,以后 n秒内不管触发多少次,都不执行.直到下一个单 ...

  10. Swagger整合Jwt授权配置

    Swagger整合Jwt授权配置 欢迎关注博主公众号「Java大师」, 专注于分享Java领域干货文章http://www.javaman.cn/sb2/swagger-jwt 一.Swagger入门 ...