Java JDBC入门

  如今各大框架的使用(hibernate等),让我们程序对数据库的操作越来越简单,但是JDBC这种基础的学习也是必须的。

 


下面我们就按步骤运用JDBC链接Mysql数据库

(1).第一导入相应的依赖,Mavn可以直接搜索入mysql的依赖。如果没有maven,要下载相应的jar包导入。

(2).创建相应的类,加载驱动:Class.forName("com.mysql.jdbc.Driver");这是mysql所规定好的,其他数据库有自己相应的类名。(要处理异常)

(3).创建链接:String url = "jdbc:mysql://localhost:3306/数据库名";

                               String user = "用户名";

                               String pwd = "密码";

                              Connection conn = DriverManager.getConnection(url,user,psw);(要处理异常)

如下图:

当输出 类似下面的,表示链接成功


(4).此时我们已经的到了数据库的链接。然后就是创建对象,用来帮助我们执行sql语句。

                           Statement stmt = conn.createStatement();(处理异常)

(5). 拼接我们要执行的sql语句。

                   String sql = "                                    ";(根据你的需要来编写)                      

(6).执行。当我们上面的工作都完成时我们就可以操作数据库了。

         ^对于不需要返回值的操作:update,insert,delete;

            用 stmt.executeUpdate(sql);来执行sql语句,当然如果你想要知道自己的执行是否成功,也可以定义一个int类型来接收操作的返回值,这个操作会返回一个int类型的数据,代表操作数据库影响的行数。

         即:int result = stmt.executeUpate(sql);如果result大于0,则表示成功。

    ^对于需要得到返回值的操作,select

     我们有一个ResultSet来接收:

                  ResultSet rs = stmt.executeQuery(sql);

例如:



进一步完善:

为了能够写sql语句更加方便,也为了防止sql注入,我们可以采用预编译访问:

预编译的步骤与上面类似,改动的地方在sql语句上:

      这是我们之前创建的执行对象:Statement stmt = conn.createStatement();

现在我们需要预编译的执行对象:PreparedStatement pstmt = conn.PreparedStatement();

之后我们的sql语句不再需要拼接,只需要将里面的数据用问号代替:

   String sql="insert into ClassMate(name,telephone,university) VALUE (?,?,?)";

之后将数据用pstmt加入,数字代表第几个问号:

        pstmt.setString(1,naem);

        pstmt.setString(2,telephone);

        pstmt.setString(3,university);

然后执行:

result=pstmt.executeUpdate();






     

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • JDBC简介 SUN公司为了简化、统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC。JDBC...
    奋斗的老王阅读 1,550评论 0 51
  • 本人的环境为Myeclipse10、MySQL5.7.15 本文包括:简介JDBC编程步骤打通数据库程序详解—Dr...
    廖少少阅读 4,015评论 7 39
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,767评论 18 399
  • 预编译sql处理(防止sql注入) Statement : 执行SQL命令CallableStatement : ...
    奋斗的老王阅读 1,164评论 2 52
  • 今天偶然看到一个小说,就看下去了,整整的一个上午全在看小说。 文字确实是有吸引人的魔力,我怎么就能一直看着不放手呢...
    金明啊阅读 224评论 0 0