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) ;
    
             }
    
    }
    
  • 相关阅读:
    寒假补习记录_4
    寒假补习记录_3
    寒假补习记录_2
    寒假补习记录_1
    公文流转系统编程
    Javaweb编程
    转:在静态方法中访问类的实例成员
    Java字段初始化规律
    原码,反码,补码浅谈
    java第二节课课后
  • 原文地址:https://www.cnblogs.com/loaderman/p/6415307.html
Copyright © 2011-2022 走看看