黑马程序员技术交流社区

标题: 日常 [打印本页]

作者: @@@@@@@@@    时间: 2019-8-14 15:32
标题: 日常
JDBC
获取数据库连接:
                    * 方法:static Connection getConnection(String url, String user, String password)
                    * 参数:
                        * url:指定连接的路径
                            * 语法:jdbc:mysql://ip地址(域名):端口号/数据库名称
* 例子:jdbc:mysql://localhost:3306/db3
                            * 细节:如果连接的是本机mysql服务器,并且mysql服务默认端口是3306,则url可以简写为:jdbc:mysql:///数据库名称
                        * user:用户名
                        * password:密码


Connection:数据库连接对象
            1. 功能:
                1. 获取执行sql 的对象
                    * Statement createStatement()
                    * PreparedStatement prepareStatement(String sql)  
                2. 管理事务:
                    * 开启事务:setAutoCommit(boolean autoCommit) :调用该方法设置参数为false,即开启事务
                    * 提交事务:commit()
                    * 回滚事务:rollback()


JDBC练习insert语句

Statement stmt = null;
                    Connection conn = null;
                    try {
                        //1. 注册驱动
                        Class.forName("com.mysql.jdbc.Driver");
                        //2. 定义sql
                        String sql = "insert into account values(null,'王五',3000)";
                        //3.获取Connection对象
                        conn = DriverManager.getConnection("jdbc:mysql:///db3", "root", "root");
                        //4.获取执行sql的对象 Statement
                        stmt = conn.createStatement();
                        //5.执行sql
                        int count = stmt.executeUpdate(sql);//影响的行数
                        //6.处理结果
                        System.out.println(count);
                        if(count > 0){
                            System.out.println("添加成功!");
                        }else{
                            System.out.println("添加失败!");
                        }
            
                    } catch (ClassNotFoundException e) {
                        e.printStackTrace();
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }finally {
                        //stmt.close();
                        //7. 释放资源
                        //避免空指针异常
                        if(stmt != null){
                            try {
                                stmt.close();
                            } catch (SQLException e) {
                                e.printStackTrace();
                            }
                        }
            
                        if(conn != null){
                            try {
                                conn.close();
                            } catch (SQLException e) {
                                e.printStackTrace();
                            }
                        }
                    }


JDBC各个类详解_ResultSet_基本使用

ResultSet:结果集对象,封装查询结果
            * boolean next(): 游标向下移动一行,判断当前行是否是最后一行末尾(是否有数据),如果是,则返回false,如果不是则返回true
            * getXxx(参数):获取数据
                * Xxx:代表数据类型   如: int getInt() ,    String getString()
                * 参数:
                    1. int:代表列的编号,从1开始   如: getString(1)
                    2. String:代表列名称。 如: getDouble("balance")
            
            * 注意:
                * 使用步骤:
                    1. 游标向下移动一行
                    2. 判断是否有数据
                    3. 获取数据




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2