首页 > 编程知识 正文

在java程序中运用mysql,java程序的

时间:2023-12-28 11:56:47 阅读:327785 作者:ZEUN

本文目录一览:

mySQL在java中的应用

Java连接Mysql详解

Part I: 驱动/数据源类名, URL语法, Connector/J的属性配置.假设你应经安装好了mysql, 和mysql-connector-java-X.X.X-bin.jar

Mysql Connector/J通过com.mysql.jdbc.Driver来实现java.sql.Driver, 同时类名org.gjt.mm.mysql.Driver依旧可用, 以保持向前兼容MM.Mysql.

MySQL的JDBC URL格式如下:

如果没有明确指定host(主机名), 默认为127.0.0.1, 端口号默认是3306

如果不指定数据库名, 不会有默认的数据库, 这样的话, 你可以调用Connection的setCatalog()方法, 或者在SQL中明确指定所用的数据库. 这种情况只在为多个数据库建立工具时有用. 例如建立GUI数据库管理器.

JDBC应该永远不使用USE database来指定数据库, 应该用Connection.setCatalog()方法.

MySQL Connector/J支持fail-over模式, 使用fail-over模式, 必须将connection的autoCommit设置为true.

如果URL的autoReconnect设置为false: Failover会发生在连接初始化时, failback出现在驱动器使第一个主机在此可用时.

如果URL的autoReconnect属性时true, Failover发生在驱动决定connection失败时(在每次查询之前), falls back到第一个主机, 当它决定这个主机在此可用时.

在以上提到的两种情况中, 无论何时你连接到一个"failed-over"服务器, 这个连接将会是制度的, 因此, 修改数据的查询, 将会引发异常.

Configuration properties定义Connctor/J将怎样连接到MySQL服务器. 除了特别声明, 这些属性可以设置在DataSource或Connection object中.

Configuration properties可以按照下面的方式进行设置:

①使用MysqlDataSource或MysqlConnectionPoolDataSource的set*()方法.

②以java.util.Properties的key/value对的形式传递给DriverManager.getConnection() 或Driver.connect()

③作为JDBC URL的参数传给java.sql.DriverManger.getConnection()

java.sql.Driver.connect()或MySQL实现的javax.sql.DataSource setURL() 方法.

注意: 如果你用来确定JDBC URL的机制是XML-based, 你需要使用XML字符 来分隔参数.

java如何连接mySQL数据库?

1.下面代码是使用jdbc直接来链接mysql的操作,方式与SQL SERVER类似,区别在于加载的驱动不同,url的设置也有点区别。

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

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

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

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

在java中怎样连接mysql数据库

1. 在开发环境中加载指定数据库的驱动程序。

接下来的实验中,使用数据库MySQL,所以需要下载MySQL支持JDBC的驱动程序(mysql-connector-java-5.1.18-bin.jar)。

2. 开发环境是MyEclipse,将下载得到的驱动程序加载进开发环境中。

3. 在Java程序中加载驱动程序。

在Java程序中,通过 “Class.forName(“指定数据库的驱动程序”)” 

方式来加载添加到开发环境中的驱动程序,例如Class.forName(“com.mysql.jdbc.Driver”)。

4. 创建数据连接对象:通过DriverManager类创建数据库连接对象Connection。

DriverManager类作用于Java程序和JDBC驱动程序之间,用于检查所加载的驱动程序是否可以建立连接,然后通过它的getConnection方法,根据数据库的URL、用户名和密码,创建一个JDBC 

Connection 对象。代码如:Connection connection =  DriverManager.getConnection(“连接数据库的URL", "用户名", 

"密码”)。

    其中,URL=协议名+IP地址(域名)+端口+数据库名称;用户名和密码是指登录数据库时所使用的用户名和密码。具体示例创建MySQL的数据库连接代码如下:

              Connection connectMySQL  = 

 DriverManager.geiConnection(“jdbc:mysql://localhost:3306/myuser","root" 

,"root" );

5. 创建Statement对象:Statement 类的主要是用于执行静态 SQL 

语句并返回它所生成结果的对象。

通过Connection 对象的 createStatement()方法可以创建一个Statement对象。例如:Statement statament = 

connection.createStatement(); 具体示例创建Statement对象代码如下:Statement statamentMySQL =connectMySQL.createStatement(); 

6. 调用Statement对象的相关方法执行相对应的 SQL 

语句:通过execuUpdate()方法用来数据的更新,包括插入和删除等操作,例如向staff表中插入一条数据的代码:

statement.excuteUpdate( "INSERT INTO 

staff(name, age, sex,address, depart, worklen,wage)" + " VALUES ('Tom1', 321, 

'M', 'china','Personnel','3','3000' ) ") ; 

7. 通过调用Statement对象的executeQuery()方法进行数据的查询,而查询结果会得到 

ResulSet对象,ResulSet表示执行查询数据库后返回的数据的集合,ResulSet对象具有可以指向当前数据行的指针。通过该对象的next()方法,使得指针指向下一行,然后将数据以列号或者字段名取出。如果当next()方法返回null,则表示下一行中没有数据存在。使用示例代码如下:

ResultSet resultSel = 

statement.executeQuery( "select * from staff" );

8. 关闭数据库连接:使用完数据库或者不需要访问数据库时,通过Connection的close() 方法及时关闭数据连接。

如何在Java程序中访问mysql数据库中的数据并进行简单的操作

参考代码:

package 数据库编程;

import java.sql.*;

public class 数据库连接 {

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

//1.加载驱动程序

try {

Class.forName("com.mysql.jdbc.Driver");

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

//2.创建与DB数据库的连接

//连接字符串

String url="jdbc:mysql://192.168.1.101:3306/java数据库?user=rootpassword=humin";

Connection con=DriverManager.getConnection(url);

//进行读写

if(!con.isClosed()){

System.out.print("欢迎访问数据库!n想做什么啊………………n");

Statement st=con.createStatement();

ResultSet rs= st.executeQuery("select * from stu");

while(rs.next()){

System.out.print( rs.getString("stuid")+","+rs.getString("name")+","+rs.getString("sex")+","+rs.getString("age")+","+rs.getString("address")+","+rs.getString("tel")+"n");

}

}

//关闭数据库

con.close();

}

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。