Java如何连接数据库

Posted 程序媛_小白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java如何连接数据库相关的知识,希望对你有一定的参考价值。

        Java连接mysql数据库的方法:首先下载解压得到jar库文件,并在对应的项目中导入该库文件;然后添加JDBC;接着在Mysql数据库中进行建表,和添加数据的操作;最后连接数据库并读取数据即可。

        Java 连接 MySQL数据库需要驱动包,解压后得到jar库文件,然后在对应的项目中导入该库文件。

        创建一个以JDBC连接数据库的程序,具体步骤:

1. 加载驱动:

导入数据库连接jar包,在工程目录中创建lib文件夹,将下载好的JDBC放到该文件夹下,如下图所示:

2. 添加JDBC:

右键工程名,在java build path中的Libraries分页中选择Add JARs...,选择刚才添加的JDBC,如下图:

3.在Mysql数据库中进行建表,和添加数据的操作。

CREATE TABLE emp(
   empno            INT(4)          PRIMARY KEY,
   ename            VARCHAR(10),
   job              VARCHAR(9),
   hiredate         DATE,
   sal              FLOAT(7,2)
) ;

4. 连接数据库并读取数据:

数据库名称:sqltestdb

数据包名称:emp

端口号:3306

用户名:root

密码:root

package sqldemo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; 
public class main 
    public static void main(String[] args) 
        //声明Connection对象
        Connection con;
        //驱动程序名
        String driver = "com.mysql.jdbc.Driver";
        //URL指向要访问的数据库名mydata
        String url = "jdbc:mysql://localhost:3306/sqltestdb";
        //MySQL配置时的用户名
        String user = "root";
        //MySQL配置时的密码
        String password = "123456";
        //遍历查询结果集
        try 
            //加载驱动程序
            Class.forName(driver);
            //1.getConnection()方法,连接MySQL数据库!!
            con = DriverManager.getConnection(url,user,password);
            if(!con.isClosed())
                System.out.println("Succeeded connecting to the Database!");
            //2.创建statement类对象,用来执行SQL语句!!
            Statement statement = con.createStatement();
            //要执行的SQL语句
            String sql = "select * from emp";
            //3.ResultSet类,用来存放获取的结果集!!
            ResultSet rs = statement.executeQuery(sql);
            System.out.println("-----------------");
            System.out.println("执行结果如下所示:");  
            System.out.println("-----------------");  
            System.out.println("姓名" + "\\t" + "职称");  
            System.out.println("-----------------");                
            String job = null;
            String id = null;
            while(rs.next())
                //获取stuname这列数据
                job = rs.getString("job");
                //获取stuid这列数据
                id = rs.getString("ename"); 
                //输出结果
                System.out.println(id + "\\t" + job);
            
            rs.close();
            con.close();
         catch(ClassNotFoundException e)    
            //数据库驱动类异常处理
            System.out.println("Sorry,can`t find the Driver!");   
            e.printStackTrace();   
             catch(SQLException e) 
            //数据库连接失败异常处理
            e.printStackTrace();  
            catch (Exception e) 
            // TODO: handle exception
            e.printStackTrace();
        finally
            System.out.println("数据库数据成功获取!!");
        
    

通过上述介绍,相信大家对Java数据库连接步骤已经有所了解,大家如果想了解更多相关知识可以点下关注哦~

Java学习视频

Java基础:

Java300集,Java必备优质视频_手把手图解学习Java,让学习成为一种享受

Java项目:

【Java游戏项目】1小时教你用Java语言做经典扫雷游戏_手把手教你开发游戏

【Java毕业设计】OA办公系统项目实战_OA员工管理系统项目_java开发

Java中如何实现与后台数据库的连接?

参考技术A 用JAVA连接数据库主要有两种方式,一是用JDBC-ODBC桥来连接,二是用相关厂商提供的相应驱动程序来连接,首先谈谈第一种连接。 \\x0d\\x0a\\x0d\\x0aJDBC-ODBC桥接器是用JdbcOdbc.Class和一个用于访问ODBC驱动程序的本地库实现的。对于WINDOWS平台,该本地库是一个动态连接库DLL(JDBCODBC.DLL)。 \\x0d\\x0a\\x0d\\x0a由于JDBC在设计上与ODBC很接近。在内部,这个驱动程序把JDBC的方法映射到ODBC调用上,这样,JDBC就可以和任何可用的ODBC驱动程序进行交互了。这种桥接器的优点是,它使JDBC目前有能力访问几乎所有的数据库。通行方式如图所示: \\x0d\\x0a\\x0d\\x0a应用程序---JDBC API---JDBC-ODBC---ODBC API---ODBC层---数据源 \\x0d\\x0a\\x0d\\x0a具体操作方法为: \\x0d\\x0a\\x0d\\x0a首先打开控制面板的管理工具,打开数据源(ODBC),在用户DSN里面添加数据源(即你要连接的数据库的名字),在这里假定连接SQL SERVER 2000的GoodsSupply数据库。名称填写你要连接的数据库的名称(GoodsSupply),然后逐步设置,如果选用了使用SQL-SERVER密码认证的话,就要输入相应的用户名及密码连接到数据库。一路下一步设置完成。 \\x0d\\x0a\\x0d\\x0a在JAVA里面编写程序进行测试,在这里我的程序是让用户输入任意的表名与与列名,把该列的所有数据输出。源代码如下: \\x0d\\x0a\\x0d\\x0aimport java.io.BufferedReader; \\x0d\\x0aimport java.io.InputStreamReader; \\x0d\\x0aimport java.sql.*; \\x0d\\x0a\\x0d\\x0apublic class ODBCBridge \\x0d\\x0a\\x0d\\x0apublic static void main(String[] args) \\x0d\\x0aString url="jdbc:odbc:GoodsSupply"; \\x0d\\x0aStatement sm=null; \\x0d\\x0aString command=null; \\x0d\\x0aResultSet rs=null; \\x0d\\x0aString tableName=null; \\x0d\\x0aString cName=null; \\x0d\\x0aString result=null; \\x0d\\x0aBufferedReader input=new BufferedReader(new InputStreamReader(System.in)); \\x0d\\x0atry \\x0d\\x0atry \\x0d\\x0aClass.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //加载驱动 \\x0d\\x0acatch(ClassNotFoundException e) \\x0d\\x0aSystem.out.println("Can not load Jdbc-Odbc Bridge Driver"); \\x0d\\x0aSystem.err.print("ClassNotFoundException:"); \\x0d\\x0aSystem.err.println(e.getMessage()); \\x0d\\x0a \\x0d\\x0aConnection con=DriverManager.getConnection(url,"USER","PASSWORD"); //使用SQL-SERVER2000认证 \\x0d\\x0aDatabaseMetaData dmd=con.getMetaData(); //DMD为连接的相应情况 \\x0d\\x0aSystem.out.println("连接的数据库:"+dmd.getURL()); \\x0d\\x0aSystem.out.println("驱动程序:"+dmd.getDriverName()); \\x0d\\x0asm=con.createStatement(); \\x0d\\x0aSystem.out.println("输入表名"); \\x0d\\x0atableName=input.readLine(); \\x0d\\x0awhile(true) \\x0d\\x0aSystem.out.println("输入列名(为空时程序结束):"); \\x0d\\x0acName=input.readLine(); \\x0d\\x0aif(cName.equalsIgnoreCase("")) \\x0d\\x0abreak; \\x0d\\x0acommand="select "+cName+" from "+tableName; \\x0d\\x0ars=sm.executeQuery(command); //执行查询 \\x0d\\x0aif(!rs.next()) \\x0d\\x0aSystem.out.println("表名或列名输入有误"); \\x0d\\x0aelse \\x0d\\x0aSystem.out.println("查询结果为:"); \\x0d\\x0ado \\x0d\\x0a \\x0d\\x0aresult=rs.getString(cName); \\x0d\\x0a//数据库语言设置为中文,不用转换编码 \\x0d\\x0a//result=new String(result.getBytes("ISO-8859-1"),"GB2312"); \\x0d\\x0aSystem.out.println(result); \\x0d\\x0awhile(rs.next()); \\x0d\\x0a \\x0d\\x0a \\x0d\\x0acatch(SQLException ex) \\x0d\\x0aSystem.out.println("SQLException:"); \\x0d\\x0awhile(ex!=null) \\x0d\\x0aSystem.out.println("Message:"+ex.getMessage()); \\x0d\\x0aex=ex.getNextException(); \\x0d\\x0a \\x0d\\x0acatch(Exception e) \\x0d\\x0aSystem.out.println("IOException"); \\x0d\\x0a \\x0d\\x0a \\x0d\\x0a

以上是关于Java如何连接数据库的主要内容,如果未能解决你的问题,请参考以下文章

java 里面 如何 获取 sql 运行数据库报错的信息

java 连接mysql数据库怎么连接

java mysql 插入不了中文显示为空

java怎么从mysql查询出来的结果转化为二维数组,举个例子

java如何实现sql连接和查询的代码?

java如何连接SQLserver数据库?