JDBC

守給你的承諾、 提交于 2020-03-04 15:35:18

jdbc

import java.sql.*;

/**
 * JDBC:
 *      JDBC是sun公司提出的一组规范,主要由接口组成 作用:访问数据库
 * Java有13种规范
 *      接触过有 JDBC servlet jsp xml javamail jms
 * Statement和PreparedStatement的联系与区别:
 *      PreparedStatement是Statement的子接口,作用于Statement的作用一样,都是用来发送sql语句
 *    特点:PreparedStatement可以发送参数化sql语句
 *    区别:PreparedStatement可以防止sql注入
 * SQL注入:
 *      一些非法分子或者黑客利用一些特殊的字符串拼接的方式,注入到系统原有的sql语句中,改变原有的Sql逻辑
 * JDBC能否执行DDL:
 *      可以执行
 * JDBC中的事务控制:
 *      JDBC中事务是执行完成后默认自动提交
 * ResultSet:
 *       ResultSet保存了查询到的结果逻辑上是一张二维表的结构保存,在ResultSet上有一个游标,游标的初始位置
 *       在第一行数据的前一行(表头),每次调用一次.next(),游标就会向下移动,移动的方法返回值是blooean类
 *       型,返回为true时,说明游标行有数据,返回为false时,说明当前游标的位置在最后一行数据的后一行(表尾)
 */
public class TestJDBC {

    //定义mysql的驱动程序
    private static final String DBDRIVER="com.mysql.jdbc.Driver";
    //定义mysql的用户
    private static final String DBUSERNAME="root";
    //定义mysql的登录密码
    private static final String DBPASSWORD="root";
    //定义mysql的连接地址
    private static final String DBURL="jdbc:mysql://localhost:3306/cmfz";
    //定义sql语句
    private static final String SQL="SELECT * FROM CMFZ_ADMIN WHERE NAME =?";

    public static void main(String[] args){
        Connection connection=null;
        PreparedStatement preparedStatement=null;
        ResultSet resultSet=null;
        try {
            //1.加载驱动
              Class.forName(DBDRIVER);
        } catch (Exception e) {
            e.printStackTrace();
        }
        try {
            //2.获取连接
            connection=DriverManager.getConnection(DBURL,DBUSERNAME,DBPASSWORD);
            //3.创建PreparedStatement
            preparedStatement = connection.prepareStatement(SQL);
            preparedStatement.setString(1,"zhangsan");
            //4.执行sql
             resultSet = preparedStatement.executeQuery();
             //5.处理结果集
            while (resultSet.next()){
                String id = resultSet.getString(1);
                String username = resultSet.getString(2);
                String password = resultSet.getString(3);
                System.out.println("id: "+id+" usename: "+username+" password: "+password);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        //6.关闭资源
        try {
            resultSet.close();
            preparedStatement.close();
            connection.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!