怎样用jdbc连接mysql数据库

怎样用jdbc连接mysql数据库,第1张

import javasql;  

public class MysqlTest {  

    public static void main(String[] args){  

               // 驱动程序名        

        String driver = "commysqljdbcDriver";  

               // URL指向要访问的数据库名world        

        String url = "jdbc:mysql://127001:3306/world";  

               // MySQL配置时的用户名           

        String user = "root";           

        // MySQL配置时的密码          

        String password = "123456";  

        String name;  

                try {               

                 // 加载驱动程序        

                ClassforName(driver);  

                    // 连续数据库       

               Connection conn = DriverManagergetConnection(url, user, password);  

                   if(!connisClosed())          

                  Systemoutprintln("Succeeded connecting to the Database!");  

                  // statement用来执行SQL语句             

                     Statement statement = conncreateStatement();  

                 // 要执行的SQL语句           

                   String sql = "select  from city";  

                // 结果集       

                  ResultSet rs = statementexecuteQuery(sql);  

                while(rsnext())  {         

               // 选择Name这列数据     

               name = rsgetString("Name");  

                  // 输出结果              

                  Systemoutprintln(rsgetString("CountryCode") + "\t" + name);           

             }  

         rsclose();       connclose();  }   

        catch(ClassNotFoundException e) {  

         Systemoutprintln("Sorry,can`t find the Driver!");              

         eprintStackTrace();  

        } catch(SQLException e) {  

         eprintStackTrace();  

        } catch(Exception e) {  

         eprintStackTrace();  

        }   

        }  

}

import javasqlDriverManager;

import javasqlResultSet;

import javasqlSQLException;

import javasqlConnection;

import javasqlStatement;

public class MysqlDemo {

public static void main(String[] args) throws Exception {

Connection conn = null;

String sql;

// MySQL的JDBC URL编写方式:jdbc:mysql://主机名称:连接端口/数据库的名称参数=值

// 避免中文乱码要指定useUnicode和characterEncoding

// 执行数据库 *** 作之前要在数据库管理系统上创建一个数据库,名字自己定,

// 下面语句之前就要先创建javademo数据库

String url = "jdbc:mysql://localhost:3306/javademo"

+ "user=root&password=root&useUnicode=true&characterEncoding=UTF8";

try {

// 之所以要使用下面这条语句,是因为要使用MySQL的驱动,所以我们要把它驱动起来,

// 可以通过ClassforName把它加载进去,也可以通过初始化来驱动起来,下面三种形式都可以

ClassforName("commysqljdbcDriver");// 动态加载mysql驱动

// or:

// commysqljdbcDriver driver = new commysqljdbcDriver();

// or:

// new commysqljdbcDriver();

Systemoutprintln("成功加载MySQL驱动程序");

// 一个Connection代表一个数据库连接

conn = DriverManagergetConnection(url);

// Statement里面带有很多方法,比如executeUpdate可以实现插入,更新和删除等

Statement stmt = conncreateStatement();

sql = "create table student(NO char(20),name varchar(20),primary key(NO))";

int result = stmtexecuteUpdate(sql);// executeUpdate语句会返回一个受影响的行数,如果返回-1就没有成功

if (result != -1) {

Systemoutprintln("创建数据表成功");

sql = "insert into student(NO,name) values('2012001','陶伟基')";

result = stmtexecuteUpdate(sql);

sql = "insert into student(NO,name) values('2012002','周小俊')";

result = stmtexecuteUpdate(sql);

sql = "select from student";

ResultSet rs = stmtexecuteQuery(sql);// executeQuery会返回结果的集合,否则返回空值

Systemoutprintln("学号\t姓名");

while (rsnext()) {

Systemout

println(rsgetString(1) + "\t" + rsgetString(2));// 入如果返回的是int类型可以用getInt()

}

}

} catch (SQLException e) {

Systemoutprintln("MySQL *** 作错误");

eprintStackTrace();

} catch (Exception e) {

eprintStackTrace();

} finally {

connclose();

}

}

}

下面代码是使用jdbc直接链接mysql的 *** 作,链接方式与SQL SERVER类似,区别在于加载的驱动不同,url的设置也有点区别,用户名、密码、端口号这些设置都类似

执行脚本返回的结果,可以看出java成功链接上mysql并获取到返回值

mysql-connector-java-5126-binjar是java链接mysql使用的jar包,与SQL SERVER链接也有专门的jar包,jar包中包含了java链接mysql所用到的函数驱动等等,所有的jar包都是放到web工程lib目录下

如果工程是整合在ssh下,一般情况下都会有一个properties文件,该文件配置了数据库链接常用的命令,下图是mysql中的配置

使用spring框架下进行的测试,结果可以成功执行,其实无论是sql server还是mysql还是其他的数据库,基本功能都一样,只是语法结构有所区别,java在调用的过程中大部分功能只要切换了数据库链接命令就可以公用,如果系统架构设计的足够好,当我们切换数据库的时候,应用程序是不用调整就能兼容的

可以使用jdbc预编译+批量更新,这样的执行效率最高。

具体是这样使用的:

循环2000条数据例如数据被装到了一个名叫dataList的List<Map<String,String>>中,那么批量更新就是这样执行的

Map map = null;

String data1= "";

String data2 = "";

String sql = insert into biao values(,);

PreparedStatement preStmt = connprepareStatement(sql);

for(i = 0;i<dataListsize();i++){

map = dataListget(i);

data1=mapget("data1");

data2 = mapget("data2");

preStmtsetString(1,data1);

preStmtsetString(2, data2);

preStmtaddBatch();

}

preStmtexecuteBatch();

preStmtclearBatch();

一般的话,一个数据库连接用完之后是要关闭的。

如果是一个项目的话一般使用数据库连接池,如果有多个数据库的话最好是建立多个连接池,这样的话,在系统启动时,一次加载一定数量的连接对象,用完之后放回去。

如果你仅仅需要两个数据库连接对象的话,不如分别创建两个静态全局变量来保存两个数据库的连接对象。

以上就是关于怎样用jdbc连接mysql数据库全部的内容,包括:怎样用jdbc连接mysql数据库、mysql数据库可以使用jdbc连接吗、java 连接mysql数据库怎么连接等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9622196.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存