zoukankan      html  css  js  c++  java
  • JDBC操作数据库,第一:jsp插入mysql数据库,坎坷摸索分享

    JSP连接数据库,坎坷摸索了好久,现在终于做好了,分享一下,希望对更多热爱编程学习的人有所帮助!!!谢谢  

    第一:首先准备的就是已经安装好Mysql,这里不做多叙述,百度可以做到。

    然后在mysql数据库中做如下操作:

    需要注意的是自己创建的数据库的名字,和数据表的名字,这两个和后面写的程序息息相关,所以必须引起重视

    第二步:就可以开始写程序了。

    首先是Book类,这里最需要注意的是起的包名,真的很重要,真的很重要,真的很重要,重要的事情说三遍

     1 package com.ningmeng;
     2 
     3 /**
     4  * 1:book类用于封装图书对象信息
     5  * @author biexiansheng
     6  *
     7  */
     8 public class Book {
     9     
    10     private int id;//编号
    11     private String name;//图书名称
    12     private double price;//价格
    13     private int bookCount;//数量
    14     private String author;//作者
    15     public int getId() {
    16         return id;
    17     }
    18     public void setId(int id) {
    19         this.id = id;
    20     }
    21     public String getName() {
    22         return name;
    23     }
    24     public void setName(String name) {
    25         this.name = name;
    26     }
    27     public double getPrice() {
    28         return price;
    29     }
    30     public void setPrice(double price) {
    31         this.price = price;
    32     }
    33     public int getBookCount() {
    34         return bookCount;
    35     }
    36     public void setBookCount(int bookCount) {
    37         this.bookCount = bookCount;
    38     }
    39     public String getAuthor() {
    40         return author;
    41     }
    42     public void setAuthor(String author) {
    43         this.author = author;
    44     }
    45     
    46 }

    然后,就是index.jsp页面,这是主界面。这点没啥重点,都是基础的。

     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8"%>
     3 <html>
     4 <head>
     5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     6 <title>Insert title here</title>
     7 </head>
     8 <body>
     9     <form action="AddBook.jsp" method="post" onsubmit="return check(this);">
    10         <table align="center" width="450">
    11             <tr>
    12                 <td align="center" colspan="2">
    13                     <h2>添加图书信息</h2>
    14                     <hr>
    15                 </td>
    16             </tr>
    17             <tr>
    18                 <td align="right">图书名称:</td>
    19                 <td><input type="text" name="name"/></td>
    20             </tr>
    21             <tr>
    22                 <td align="right">价格:</td>
    23                 <td><input type="text" name="price"/></td>
    24             </tr>
    25             <tr>
    26                 <td align="right">数量:</td>
    27                 <td><input type="text" name="bookCount"/></td>
    28             </tr>
    29             <tr>
    30                 <td align="right">作者:</td>
    31                 <td><input type="text" name="author"/></td>
    32             </tr>
    33             <tr>
    34                 <td align="center" colspan="2">
    35                     <input type="submit" value="添加">
    36                 </td>
    37             </tr>
    38         </table>
    39     </form>
    40 </body>
    41 </html> 

    最后,就是逻辑代码的程序,注意的重点很多很多

    第一:一定要把包到对了,不然一直报错,真的很头疼的一件事情。

    第二:<jsp:useBean id="book" class="com.ningmeng.Book"></jsp:useBean>这点就是前面强调的,class="自己的包名和上面定义的类名";

    第三:String url="jdbc:mysql://localhost:3306/test";//数据库连接字符串,这点是这个test是自己创建的数据表的名字,一定要写对了。

    第四:int row=ps.executeUpdate();//执行更新操作,返回所影响的行数,不然数据不能写入到数据库

    然后就没啥然后了,一切大功告成。

     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8"%>
     3 <!-- 导入的三个包真的很重要,切记不要忘记 -->
     4 <%@page import="java.sql.DriverManager"%>
     5 <%@page import="java.sql.Connection"%>
     6 <%@page import="java.sql.PreparedStatement" %>
     7 
     8 <!-- 解决中文乱码的问题 -->
     9 <%request.setCharacterEncoding("UTF-8"); %>
    10 <!-- 实例化javabean对象的Book类 -->
    11 <jsp:useBean id="book" class="com.ningmeng.Book"></jsp:useBean>
    12 <!-- 自动匹配同名称属性的元素 -->
    13 <jsp:setProperty property="*" name="book"/>
    14 
    15 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    16 <html>
    17 <head>
    18 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    19 <title>Insert title here</title>
    20 </head>
    21 <body>
    22 <%
    23     try{
    24         Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动,注册到驱动管理器
    25         out.print("加载数据库驱动成功!!!"+"<br/>");
    26         String url="jdbc:mysql://localhost:3306/test";//数据库连接字符串
    27         String name="root";//
    28         String password="123456";
    29         Connection conn=DriverManager.getConnection(url,name,password);
    30         //创建connection连接,
    31         out.print("创建connection连接成功!!!"+"<br/>");
    32         String sql="insert into tb_books(name,price,bookCount,author) values(?,?,?,?)";
    33         //添加图书信息的sql语句
    34         PreparedStatement ps=conn.prepareStatement(sql);
    35         //获取PreparedStatement
    36         ps.setString(1,book.getName());//对sql语句中的第1个参数赋值
    37         ps.setDouble(2,book.getPrice());//对sql语句中的第2个参数赋值
    38         ps.setInt(3,book.getBookCount());//对sql语句中的第3个参数赋值
    39         ps.setString(4,book.getAuthor());//对sql语句中的第4个参数赋值
    40         int row=ps.executeUpdate();//执行更新操作,返回所影响的行数
    41         if(row>0){
    42             out.print("成功添加了 "+row+" 条数据!!!");
    43         }
    44         ps.close();
    45         conn.close();
    46     }catch(Exception e){
    47         out.print("图书信息添加失败!!!");
    48         e.printStackTrace();
    49     }
    50 %>    
    51 <br>
    52 <a href="index.jsp">返回</a>    
    53 
    54 </body>
    55 </html>
     最后验证效果即可,如下所示


    成功完成jsp插入到mysql数据库的数据,特此分享。

  • 相关阅读:
    WINFORM 設計時 未能加载文件或程序集問題解決
    Remove row from generic datatable in C#(The given DataRow is not in the current DataRowCollection)
    questa.sim in the linux
    the io_printf
    how to search new file in linux
    the rld control core
    window's chkdsk
    tq
    the init state machine
    brazen out
  • 原文地址:https://www.cnblogs.com/biehongli/p/5953947.html
Copyright © 2011-2022 走看看