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数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)