java怎样连接mysql数据库

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

1、java连接MySQL数据库需要有一个驱动jar包

例如:mysql-connector-java-5126-binjar,

该驱动jar可以自行百度搜索最新包下载放在项目的lib目录下即可。

2、连接代码如下

package baidutestjsp;

import javasqlConnection;

import javasqlDriverManager;

import javasqlResultSet;

import javasqlSQLException;

import javasqlStatement;

import javaxnamingspiDirStateFactoryResult;

public class DbConnection {

private static Connection conn;

public DbConnection() {

 String drivername="commysqljdbcDriver";

 String username="root";

 String url="jdbc:mysql://localhost/jsptestuseUnicode=true&characterEncoding=UTF-8";

 String password="";

 //加载驱动

 try {

ClassforName(drivername);

} catch (ClassNotFoundException e) {

Systemoutprintln("驱动加载失败!");

eprintStackTrace();

}

 //建立连接

 try {

conn=DriverManagergetConnection(url,username,password);

} catch (SQLException e) {

Systemoutprintln("数据库连接失败!");

eprintStackTrace();

}

 

 

}

//getResultSet

public ResultSet GetResultSet(String sql)

{

ResultSet rs=null;

//statemanage

try {

Statement st=conncreateStatement();

rs=stexecuteQuery(sql);

} catch (SQLException e) {

Systemoutprintln("状态管理器创建失败");

eprintStackTrace();

}

return rs;

}

//DML

public int DML(String sql)

{

int count=-1;

try {

Statement statement=conncreateStatement();

count=statementexecuteUpdate(sql);

} catch (SQLException e) {

Systemoutprintln("状态管理器创建失败");

eprintStackTrace();

}

return count;

}

}

3、可以新建service类来调用连接类里面的getResultSet方法和DML,实现自己所需用的功能。

当然,首先要安装有JDK(一般是JDK15X)。然后安装MySQL,这些都比较简单,具体过程就不说了。配置好这两个环境后,下载JDBC驱动mysql-connector-java-505zip(这个是最新版的)。然后将其解压缩到任一目录。我是解压到D盘,然后将其目录下的mysql-connector-java-505-binjar加到classpath里,具体如下:“我的电脑”-> “属性” -> “高级” -> “环境变量”,在系统变量那里编辑classpath,将D:\mysql-connector-java-505\mysql-connector-java-505-binjar加到最后,在加这个字符串前要加“;”,以与前一个classpath区分开。然后确定。

环境配置好了,很简单。现在,先配置MySQL,设其用户名为“root”,密码为“root”。在命令行或用一个SQL的前端软件创建Database。

我是用SQLyog的前端软件来创建Database的。

先创建数据库:

CREATE DATABASE SCUTCS;

接着,创建表:

CREATE TABLE STUDENT

(

SNO CHAR(7) NOT NULL,

SNAME VARCHAR(8) NOT NULL,

SEX CHAR(2) NOT NULL,

BDATE DATE NOT NULL,

HEIGHT DEC(5,2) DEFAULT 00000,

PRIMARY KEY(SNO)

);

然后插入数据,可以用SQL语句insert into values (value1, value2, );

也可以用SQLyog来 *** 作

好了,创建好了。

下面,我们来编写java文件来演示一下如何访问MySQL数据库。

import javasql;

public class JDBCTest {

public static void main(String[] args){

// 驱动程序名

String driver = "commysqljdbcDriver";

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

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

// MySQL配置时的用户名

String user = "root";

// MySQL配置时的密码

String password = "root";

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 student";

// 结果集

ResultSet rs = statementexecuteQuery(sql);

Systemoutprintln("-----------------");

Systemoutprintln("执行结果如下所示:");

Systemoutprintln("-----------------");

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

Systemoutprintln("-----------------");

String name = null;

while(rsnext()) {

// 选择sname这列数据

name = rsgetString("sname");

/ 何问起 hovertreecom /

// 首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。

// 然后使用GB2312字符集解码指定的字节数组

name = new String(namegetBytes("ISO-8859-1"),"GB2312");

// 输出结果

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

}

rsclose();

connclose();

} catch(ClassNotFoundException e) {

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

eprintStackTrace();

} catch(SQLException e) {

eprintStackTrace();

} catch(Exception e) {

eprintStackTrace();

}

}

}

接下来我们运行一下看下效果:

D:\testjdbc>javac JDBCTestjava

D:\testjdbc>java JDBCTest

Succeeded connecting to the Database!

-----------------------

执行结果如下所示:

-----------------------

学号 姓名

-----------------------

0104421 周远行

0208123 王义平

0209120 何问起

0309119 李 维

0309203 欧阳美林

0309226 柯乐义

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

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

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

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

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

方式来加载添加到开发环境中的驱动程序,例如ClassforName(“commysqljdbcDriver”)。

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

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

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

"密码”)。

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

Connection connectMySQL =

DriverManagergeiConnection(“jdbc:mysql://localhost:3306/myuser","root"

,"root" );

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

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

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

connectioncreateStatement(); 具体示例创建Statement对象代码如下:Statement statamentMySQL =connectMySQLcreateStatement();

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

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

statementexcuteUpdate( "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 =

statementexecuteQuery( "select from staff" );

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

jdbc编程么,就是通过java代码来 *** 作数据库,数据库的图形用户界面,是mysql自带的一套管理程序。他和你用java写的程序是并行的,没有关系,只是都可以 *** 作同一份数据。所以,如果你想要在java程序中去 *** 作数据库的数据表,那么要在代码中写。如果你只是想看看数据库的内容,那么用自带的图形界面就更方便。

第一步:下载一个JDBC驱动包;

第二步:导入下载的JDBC驱动包,我用的是myeclipse,选中自己要导包的项目,右 击选中propertise,再选JavaBuild Path, 右边会出现libreries,点进去,再点Add External JARs 然后再找到你要导入的驱动包。完了之后再点Order andExport,下面再选中你导入的包;

第三步:加载驱动程序:ClassforName("commysqljdbcDriver");

第四步:连接数据库:Connection conn=DriverManagergetConnection ("jdbc:mysql://localhost/数据库名称","root","123456");

第五步:声明一个Statement 用来执行sql语句: Statement stmt=conncreateStatement();

第六步:声明一个结果集接住执行sql语句的数据: ResultSet rs=stmtexecuteQuery("select from 表名");

下面给出完整的代码:

代码如下:

try {

ClassforName("commysqljdbcDriver");

Systemoutprintln("测试通过");

Connection conn=DriverManagergetConnection("jdbc:mysql://localhost/myschool","root","123456");

Systemoutprintln("conn-------------"+conn);

Statement stmt=conncreateStatement();

ResultSet rs=stmtexecuteQuery("select from admin");

while(rsnext()){

String name=rsgetString("name");

String pwd=rsgetString("pwds");

Systemoutprintln("name------"+name+"--------pwd-"+pwd);

}

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

eprintStackTrace();

} catch (SQLException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

方法/步骤

1前边的事例是把数据库的驱动,连接,用户名和密码都写在了类中,耦合性太高,当我们数据库变更或者数据库类型更换后,需要去重新更改代码,很不方便。

解决的方法:把数据库的驱动,连接,用户名和密码写在配置文件中,通过读取配置文件的方式进行代码编写,而以后如果数据库变更直接修改配置文件即可!

2在工程中右键新建file,命名为jdbcproperties

3创建完毕如图:

4在jdbcproperties文件中输入如下信息,分别是数据库的驱动,连接,用户名和密码

5新建JdbcTest2java类

6输入如下代码:

7代码说明:

这段代码是读取配置文件,把配置文件中的各个项通过名称读取出来

8这段代码是通过反射来创建Driver对象,反射就是类的实例化

9在主函数中输入如下,测试方法

10运行之后的结果如下,表示连接成功!

mysql-connector-java-8031jar这个jar包没有commysqljdbcDriver。

所以报错的提示是找不到commysqljdbcDriver这个类。

mysql-connector-java-8031jar 的对应的mysql驱动类是commysqlcjjdbcDriver 

建议你使用mysql579对应的mysql驱动 mysql-connector-java-5149jar

这个是下载地址:网页链接

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存