PreparedStatement(预编译)

Posted 苏轼的红烧肉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PreparedStatement(预编译)相关的知识,希望对你有一定的参考价值。

package com.lianxi;

import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.util.Scanner;


public class AddBook {

    public static void main(String[] args) throws Exception {
        Class.forName("com.mysql.jdbc.Driver");
        Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/boooks","root","tiger");
        //创建预编译的PS
        PreparedStatement ps=conn.prepareStatement("insert into book(bookname,price,creatdate)values(?,?,?)");
        String bookname;
        int price;
        Scanner s=new Scanner(System.in);    
        System.out.println("请输入书名");
        bookname=s.next();
        System.out.println("价格");
        price=s.nextInt();
        //两行代码赋值
        ps.setString(1, bookname);
        ps.setInt(2, price);
        ps.setDate(3, new Date(116,6,7));
        //new Date方法不好
        ps.execute();
        conn.close();
        
    }

}

 

以上是关于PreparedStatement(预编译)的主要内容,如果未能解决你的问题,请参考以下文章

SQL攻击-预编译--缓存

PreparedStatement(预编译)

Statement和PreparedStatement有什么区别?哪个性能更好?预编译语句,防止sql注入问题

Mybatis 中的 PreparedStatement 预编译,不是你想的那么简单!

JDBC预编译statement(preparedstatement)和statement的比较execute与executeUpdate的区别

JDBC编程之预编译SQL与防注入式攻击以及PreparedStatement的使用教程