zoukankan      html  css  js  c++  java
  • PrepareStatement


    使用步骤

    1: 定义sql的时候参数值使用占位符 ? 替换

    2: 获取PrepareStatement对象传入sql

    3: 使用PrepareStatement的setXxx方法给占位符复制

    参数:

    * int类型: 就是占位符的编号 ,从1开始

    * Xxx类型: 要赋的具体的值

    4: 执行sql的时候不需要传递具体的sql


    优点

    1: 防止sql注入

    2: 提高效率

    import java.sql.Connection;
    
    import java.sql.PreparedStatement;
    
    import java.sql.ResultSet;
    
    import java.sql.SQLException;
    
    import com.loaderman.jdbc.utils.JdbcUtil;
    
    /**
    
     * 预编译的执行sql的对象
    
     */
    
    public class PreparedStatementDemo {
    
             public static void main(String[] args) throws Exception {
    
                       // 获取连接对象
    
                       Connection conn = JdbcUtil.getConnection() ;
    
                       // 定义sql
    
                       String sql = "select * from user where uid = ?" ;
    
                       // 获取PreparedStatement对象
    
                       PreparedStatement ps = conn.prepareStatement(sql) ;
    
                       // 给占位符设置值
    
                       // 第一个参数占位符所对应的角标(角标从1开始), 第二个参数表示具体的值 ;
    
                       ps.setInt(1, 1) ;
    
                       // 执行
    
                       ResultSet rs = ps.executeQuery() ;
    
                       while(rs.next()) {
    
                                int uid = rs.getInt(1) ;
    
                                String name = rs.getString(2) ;
    
                                String password = rs.getString(3) ;
    
                                System.out.println(uid + "---" + name + "---" + password);
    
                       }
    
                       //释放资源
    
                       JdbcUtil.close(conn, ps, rs) ;
    
             }
    
    }
    
  • 相关阅读:
    vue表单验证定位到错误的地方
    INSPINIA Version 2.5 Bootstrap3
    volatile 彻底搞懂
    solr6.4.2之webservice兼容升级
    快速排序
    Elasticsearch调优篇 10
    TCP 连接为什么需要 3 次握手和 4 次挥手
    搜索技术与方案的选型与思考
    Elasticsearch调优篇 09
    Elasticsearch调优篇 08
  • 原文地址:https://www.cnblogs.com/loaderman/p/6415307.html
Copyright © 2011-2022 走看看