addBooks.jsp页面代码:↓

 <%--
Created by IntelliJ IDEA.
User: NFS
Date: 2019-7-12
Time: 14:30
To change this template use File | Settings | File Templates.
--%> <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>添加书籍</title> <style>
label {
display: flex;
margin-bottom: 5px;
}
label > span {
flex: 0 0 80px;
}
label > input {
flex: 0 0 200px;
}
</style>
</head>
<body> <h3>书籍信息</h3>
<div>
<form method="post" action="add">
<label>
<span>书名:</span>
<input name="book_name">
</label>
<label>
<span>作者:</span>
<input name="author">
</label>
<label>
<span>数量:</span>
<input name="number">
</label>
<label>
<span>价格:</span>
<input name="price">
</label>
<label>
<span>出版社:</span>
<input name="pub">
</label>
<input type="submit" value="添加书籍">
</form>
</div> <footer>
<a href="<%=request.getContextPath()%>/books/lst">返回首页</a>
</footer>
</body>
</html>

    addBooks.jsp  对应的servlet: addBooks.java↓

 package BookSystem.CRUD;
import BookSystem.Other.DButil; 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 java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException; @WebServlet("/books/add")
public class AddBooks extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// 获取添加的页面 req.getRequestDispatcher("/Book/addBooks.jsp").forward(req, resp);
} @Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// 提交保存数据
req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
//获取数据
String name=req.getParameter("book_name");
String author=req.getParameter("author");
int number =Integer.parseInt(req.getParameter("number"));
float price = Float.parseFloat(req.getParameter("price"));
String pub = req.getParameter("pub");
Connection connection= new DButil().getConnection();
PreparedStatement psmt=null;
try {
//插入数据
psmt=connection.prepareStatement("insert into BookInfo values (?,?,?,?,?)"); psmt.setString(1,name);
psmt.setString(2,author);
psmt.setInt(3,number);
psmt.setFloat(4,price);
psmt.setString(5,pub);
psmt.executeUpdate();
}catch (SQLException e){
e.printStackTrace();
}finally {
try {
connection.close();
psmt.close();
} catch (SQLException e) {
e.printStackTrace();
} }
resp.sendRedirect(req.getContextPath()+"/books/lst");
}
}

      注:该整个CRUD不展示效果图,整体CSS应当有属于自己的

————————————————————————————————————————————————————————————

JAVAWEB实现增删查改(图书信息管理)之添加功能实现的更多相关文章

  1. JAVAWEB实现增删查改(图书信息管理)之修改功能实现

    首先通过点击index.jsp页面的修改按钮,获取该行的id:↓ 其次,跳转到updateBooks.jsp页面进行修改信息,页面代码如下:↓ <%@ page import="Boo ...

  2. JavaWeb实现增删查改(图书信息管理)之删除功能实现

    —————————————————————————————————————————————————————————— 删除按钮对应的servlet -->DeleteBooks.java  ↓ ...

  3. JavaWeb实现增删查改(图书信息管理)——之查询

     关于此次CRUD所需要的jar包,本人把文件放在了百度网盘,需要的自行去下载: 链接:https://pan.baidu.com/s/1Pqe88u6aPaeVjjOq1YFQ-w  提取码:pim ...

  4. JDBC课程4--使用PreparedStatement进行增删查改--封装进JDBCTools的功能中;模拟SQL注入 ; sql的date()传入参数值格式!

    主要内容: /*SQL 的date()需要传入参数值: preparedStatement().setDate(new java.util.Date().getTime()); 熟悉了使用Prepar ...

  5. java实现简单的数据库的增删查改,并布局交互界面

        一.系统简介 1.1.简介  本系统提供了学生信息管理中常见的基本功能,主要包括管理员.管理员的主要功能有对学生信息进行增加.删除.修改.查找等操作,对信息进行管理,对信息进行修改.查找等操作 ...

  6. 在Eclipse上实现简单的JDBC增删查改操作

    在Javaweb的学习里,学到了如何完成简单的增删查改操作,在这里撰写一篇文章以便自己整理回忆. 首先要建立一些包和导入一些文件.建一些类.具体框架如图  编写Product类 public clas ...

  7. day08 外键字段的增删查改

    day08 外键字段的增删查改 今日内容概要 外键字段的增删查改 正反向查询的概念 基于对象的跨表查询(子查询) 基于双下划线的跨表查询(连表操作) 聚合查询与分组查询 F查询和Q查询 前提准备 cl ...

  8. 6.在MVC中使用泛型仓储模式和依赖注入实现增删查改

    原文链接:http://www.c-sharpcorner.com/UploadFile/3d39b4/crud-operations-using-the-generic-repository-pat ...

  9. 3.EF 6.0 Code-First实现增删查改

    原文链接:http://www.c-sharpcorner.com/UploadFile/3d39b4/crud-operations-using-entity-framework-5-0-code- ...

随机推荐

  1. Codeforces1114C Trailing Loves (or L'oeufs?)

    链接:http://codeforces.com/problemset/problem/1114/C 题意:给定数字$n$和$b$,问$n!$在$b$进制下有多少后导零. 寒假好像写过这道题当时好像完 ...

  2. Django rest_fram_work API View序列化

    APIview 单表的GET和POST: 视图 查询所有: class PublishView(APIView): # 查询数据 def get(self, request): # first inq ...

  3. CSP-J2019游记&解题报告

    考前一天晚上失眠.......(其实主要不是因为考试的原因) 很幸运,我们学校就是一个考点,本场作战,应该有一点加持吧. 上午在家复习,看到一篇关于PN532模拟小米手环加密卡的文章,于是,,,,,, ...

  4. 持续集成学习8 jenkins权限控制

    一.总体配置 1.系统管理---> Configure Global Security 2.配置基于角色授权 创建角色 ----> 分配角色 代表着所有以dev-开头的 job全部都分配给 ...

  5. Github搭建简单的博客

    1)安装pelcan和markdown pip install pelican markdown --upgrade 2)创建一个文件夹用来作为博客的目录 mkdir 博客目录 3)cd到该目录下运行 ...

  6. 完美兼容IE10以下所有版本

    IE一直是个恶心东西 各种不支持 现在发现了个好东西可以兼容ie10以下所有浏览器 <!--[if lte IE 9]><script>window.location.href ...

  7. Python 下载超大文件

    使用python下载超大文件, 直接全部下载, 文件过大, 可能会造成内存不足, 这时候要使用requests 的 stream模式, 主要代码如下 iter_content:一块一块的遍历要下载的内 ...

  8. [RN] React Native 幻灯片效果 Banner

    [RN] React Native 幻灯片效果 Banner 1.定义Banner import React, {Component} from 'react'; import {Image, Scr ...

  9. 2017.10.4 国庆清北 D4T2 正方形

    题目描述 在一个10000*10000的二维平面上,有n颗糖果. LYK喜欢吃糖果!并且它给自己立了规定,一定要吃其中的至少C颗糖果! 事与愿违,LYK只被允许圈出一个正方形,它只能吃在正方形里面的糖 ...

  10. Error:gradle-resources-test:thymeleaf-in-action.main: java.lang.NoClassDefFoundError: org/apache/tools/ant/util/ReaderInputStream

    目录 Error:gradle-resources-test:thymeleaf-in-action.main: java.lang.NoClassDefFoundError: org/apache/ ...