java--JDBC

JDBC

    JDBC, java DataBase Connectivity : java数据库连接,SUN公司推出的java访问数据库的标准规范(接口).

    1.JDBC是一种用于执行SQL语句的java API.

    2.JDBC可以为多种关系数据库提供统一访问入口.

    3.JDBC由一组java工具类和接口组成.

 

SUN提供的规范命名为JDBC,而各个厂商提供的,遵循了JDBC规范的,可以访问自己数据库的API被称之为驱动

 

 

JDBC是接口,而JDBC驱动才是接口的实现,没有驱动无法完成数据库连接!每个数据库厂商都有自己的驱动,用来连接自己公司的数据库。

 

 JDBC核心类(接口)介

JDBC中的核心类有:DriverManagerConnectionStatement,和ResultSet

DriverManger(驱动管理器)的作用有两个:

  • 注册驱动:这可以让JDBC知道要使用的是哪个驱动

    Class.forName(“com.mysql.jdbc.Driver”)

 

  • 获取链接:如果可以获取到Connection,那么说明已经与数据库连接上了。Connection对象表示连接,与数据库的通讯都是通过这个对象展开的:Connection最为重要的一个方法就是用来获取Statement对象

    DriverManager.getConnection(url,username,password)

 

下面是mysqlurl

jdbc:mysql://localhost:3306/mydb1(库名字)

 

mysql中字节集编码为UTF8编码(不是UTF-8)

    第三部分是由数据库厂商规定的,我们需要了解每个数据库厂商的要求,mysql的第三部分分别由数据库服务器的IP地址(localhost)、端口号(3306),以及DATABASE名称(mydb1)组成。

 

获得语句执行:

Statement对象 是用来向数据库发送SQL语句的,这样数据库就会执行发送过来的SQL语句

       在得到Connectoin之后,说明已经与数据库连接上了,下面是通过Connection获取Statement对象的代码:

                                                        Statement stmt = con.createStatement();

 

Statement是用来向数据库发送要执行的SQL语句的!

    1.int executeUpdate(String sql):执行更新操作insertupdatedelete等语句(DML语句)

    2.ResultSet executeQuery(String sql):执行select查询操作,方法返回的是ResultSetResultSet封装了查询结果,我们称之为结果集(DQL)                    

                                               ResultSet rs = stmt.executeQuery("select * from user") ;     //user为表名称,即查询所有.

    3.boolean execute(String sql);  执行select返回true 执行其他的语句则返回false.

            true,则需使用getResultSet() 获得查询结果

            false,则需使用getUpdateCount()获得影响行数

 

API详解:预处理对象

使用处理对象时,建议每条sql语句所有的实际参数都是用逗号分割.

      String sql = "insert into category(cid,cname) values( ? , ? )"

    PreparedStatement 预处理对象代码:

PreparedStatement psmt = conn.prepareStatement(sql) ;    //conn为获取连接时的对象

API详解:处理结果集

ResultSet实际上就是一张二维的表格,它内部有一个行光标,其默认在第一行上方,我们可以调用rs对象next( )方法把"行光标"向下移动一行,第一次调用即到第一行的位置.这个时候就可以用ResultSet的   getXXX(int col)来获取指定的数据了.  

     rs.next( );    //光标下移

     rs.getint(1); //获取第一行第一列的数据

在ResultSet类中提供了一系列的get XXX( )方法,比较常用的方法有    (col代表第几列)

    Object grtObject(int col) , 获得任何对象    (当不知道返回类型是什么的时候用)

    String getString(int col)  , 获得字符串

    int getlnt(int col)             , 获得整形

    double getDouble(int col) ,   获得双精度浮点型

 

例如: String cname = rs.getString(2) ;     //通过索引号获得值

         System.out.println(cname) ;   

释放资源:

关闭与IO流一样,使用后的东西都需要关闭!关闭的顺序是先得到的后关闭,后得到的先关闭。

          rs.close();

          stmt.close();

          con.close();

 

  

 

 

 

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页