栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

javaweb之JDBC技术基础训练二图书管理系统:从数据库插入数据功能实现

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

javaweb之JDBC技术基础训练二图书管理系统:从数据库插入数据功能实现

现在我们以插入smbms_address表为例,演示插入表的过程,大家学会之后可以插入其他的表试一试,数据信息在上一期,还没看过的朋友:传送门

文章目录
  • 分析表结构
  • 过滤器
  • index.html
  • addBook.jsp
  • Book类
  • 测试一下
    • 到数据库去看看

分析表结构

用Navicat for mysql查看一下该表的结构:

过滤器

在写代码之前,我习惯先把过滤器写好,就是怕待会数据传输的时候遇到乱码的问题,也可以不写过滤器有一些其他的方法去解决数据乱码问题,比如搜素Java web后台插入数据库中文乱码问题解决,你可以看到一堆信息,有的说
要到tomcat6.x服务器编码设置
有的又说改web.xml文件
改来改去的,直接写一个过滤器,这样所有的数据进来和出去都解决了,不香,过滤器针对本来的主要用处之一就是过滤数据,所以我喜欢直接写个简单的过滤器去解决
记住,以下设置的时候变量名要和数据库的字段名要对应!!!不然插入会失败的!

package com.xmonster.filter;
import javax.servlet.*;
import java.io.IOException;
public class CharacterEncodingFilter implements Filter {
    public void init(FilterConfig filterConfig) throws ServletException {

    }
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
        request.setCharacterEncoding("utf-8");
        response.setCharacterEncoding("utf-8");
        chain.doFilter(request,response);
    }
    public void destroy() {
    }
}

在web.xml中配置一下:



    
        CharacterEncodingFilter
        com.xmonster.filter.CharacterEncodingFilter
    
    
        CharacterEncodingFilter
        /*
    

index.html
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.DriverManager" %>
<%@ page import="java.sql.SQLException" %><%--
  Created by IntelliJ IDEA.
  User: lenovo
  Date: 2021/10/31
  Time: 11:34
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

  
    Index
  
  
    
添加图书信息表
图书名称:
价格:
数量:
作者:
addBook.jsp
<%@ page import="java.sql.DriverManager" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.PreparedStatement" %><%--
  Created by IntelliJ IDEA.
  User: lenovo
  Date: 2021/10/31
  Time: 19:19
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


<%
    try{
    Class.forName("com.mysql.jdbc.Driver");
        String url = "jdbc:mysql://localhost:3306/jdbc?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC";
        String username="root";
        String password="123456";
        Connection connection = DriverManager.getConnection(url, username, password);
        String sql = "insert into tb_book(name, price, bookCount, author) VALUES (?,?,?,?);";
        PreparedStatement ps = connection.prepareStatement(sql);

        ps.setString(1, book.getName());
        ps.setDouble(2, book.getPrice());
        ps.setInt(3, book.getBookCount());
        ps.setString(4, book.getAuthor());
        int row = ps.executeUpdate();
        if(row>0){
            out.println("成功插入"+row+"条数据");
        }
        ps.close();
        connection.close();

    }catch (Exception e){
        out.println("插入失败");
        e.printStackTrace();
    }
    
%>

再插入一条数据吧~
Book类


记住,变量名要对应!!!不然插入会失败的!

测试一下


到数据库去看看


可以看到已经成功插入啦

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/362424.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号