zoukankan      html  css  js  c++  java
  • JAVA的JDBC连接与sql操作

    一、前言

    本文主要介绍怎样连接数据库。即JDBC的操作。以MySQL为例子。

    前提是首先要将驱动jar包放入对应路径中。

    二、过程说明

    1.加载jdbc驱动程序

    <span style="font-size:12px;">Class.forName("com.mysql.jdbc.Driver");</span>

    这里的驱动根据不同类型的数据库来改变。

    比如mysql数据库,就是com.mysql.jdbc.Driver

    Oracle数据库,oracle.jdbc.driver.OracleDriver

    ms_sql server数据库,com.microsoft.jdbc.sqlserver.SQLServerDriver

    等等。


    2、建立连接

    <span style="font-size:12px;">Connection connect = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","123456");</span>

    其中三个参数分别是:加载数据库的地址url,加载数据库的用户名user,加载数据库的用户相应的登陆密码password;


    3.创建Statement对象

    <span style="font-size:12px;">Statement stmt = connect.createStatement();</span>
    大部分数据库驱动程序允许在同一个连接中打开多个并行的Statement对象,创建好Statement对象之后,就可以使用它来进行数据库的操作了。Statement类中的常用方法,可以去帮助文档中查找。
    4.执行sql语句及结果集的处理

    <span style="font-size:12px;">ResultSet rs = stmt.executeQuery("select * from stu_table");
    			
    			while(rs.next()){
    				System.out.println(rs.getString("name"));
    			}</span>

    5.一些其他如insert插入操作

    <span style="font-size:12px;">int num = 100;
    			PreparedStatement pst = connect.prepareStatement("insert into stu_table values(?,?,?,?)");
    			int i;
    			for( i = 0; i < num ; i++){
    				pst.setString(1,i+"3");
    				
    				pst.setString(2,"Lilly" + (i+1));
    				pst.setString(3, "female");
    				pst.setString(4, "001");
    				pst.execute();
    			}
    			System.out.println("success inserting notes!");</span>



    6.关闭连接

    rs.close();
    stmt.close();
    connect.close();

    在关闭连接前先将相应的ResultSet对象及statement对象也关闭。


    三、程序完整实现

    <span style="font-size:12px;">package test;
    
    import java.sql.*;
    
    public class testJDBC {
    
    	public static void main(String[] args) {
    		try{
    			//first:load jdbc driver
    			Class.forName("com.mysql.jdbc.Driver");
    			
    			System.out.println("Success loading Mysql Driver!");
    		}
    		catch(Exception e){
    			System.out.println("Error loading mysql driver!");
    			e.printStackTrace();
    		}
    		try{
    			//second:connect sql server
    			Connection connect = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","123456");
    			System.out.println("success connecting mysql server!");
    			
    
    			//third:selct from the table of database using a sql query
    			Statement stmt = connect.createStatement();
    			ResultSet rs = stmt.executeQuery("select * from stu_table");
    			
    			while(rs.next()){
    				System.out.println(rs.getString("name"));
    			}
    			
    			//four:do some other operation such as insert notes
    			int num = 100;
    			PreparedStatement pst = connect.prepareStatement("insert into stu_table values(?,?,?,?)");
    			int i;
    //			for( i = 0; i < num ; i++){
    //				pst.setString(1,i+"3");
    //				
    //				pst.setString(2,"Lilly" + (i+1));
    //				pst.setString(3, "female");
    //				pst.setString(4, "001");
    //				pst.execute();
    //			}
    			System.out.println("success inserting notes!");</strong></span></span>
    <span style="font-size:12px;"><span style="font-size:18px;"><strong><span style="white-space:pre">			</span>rs.close();
    <span style="white-space:pre">			</span>stmt.close();
    <span style="white-space:pre">			</span>connect.close();
    		}
    		catch(SQLException e){
    			System.out.println("Error connecting mysql server!");
    			e.printStackTrace();
    		}
    
    	}
    
    }
    
    </span>


  • 相关阅读:
    工作笔记(2017/02/15)
    JQuery基本知识(3)
    C#基础之操作字符串的方法
    JQuery基础知识(2)
    JQuery基础知识(1)
    将前台input中的数据异步传到后台并存入数据库
    C#基本知识零散总结
    ASP.NET中的C#基础知识
    C#练习
    将JSON数组显示前台Table中
  • 原文地址:https://www.cnblogs.com/wenbaoli/p/5655749.html
Copyright © 2011-2022 走看看