当前位置:首页 » 编程语言 » java和mysql

java和mysql

发布时间: 2023-05-29 12:28:49

A. java怎么连接mysql数据库

连接数据库简单步骤:

  1. 导入驱动包(mysql官网有下),并添加该包为库(add as Library)

  2. 注册驱动:Class.forName("com.mysql.jdbc.Driver");

  3. 获取连接对象:Connection conn=DirverManager.getConnection("jdbc:mysql://连接IP/数据库名","数据库用户名","密码");

  4. 获取sql语句执行对象:Statement stmt=conn.createStatement();

  5. 使用对象运行sql语句:如 stmt.executeUpdate("Update A set a=b");

  6. 释放资源:stmt.close();conn.close();

也可以用数据库连接池,获得连接,但是要下载相关的jar包,如:Druid.jar

要想写更简单的代码,可以用spring框架,下载相应的jar包就可以了

B. 怎么样实现java与MYSQL的连接

package jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import org.apache.struts.util.MessageResources;

public class DBconnection {
private String driveName = null;

private String userName = null;

private String password = null;

private String url = null;

private Connection con =null;

private Statement sta=null ;

private PreparedStatement pre = null;

private ResultSet result = null;
/** 创岩粗建一个没有参数的数据库构造器
*
*
*/
public DBconnection() {
construts();
linkDataBase();
}

public DBconnection(Connection con){
this.con=con;
}
/** 实例化对象时调用的方法
*
*MessageResources
*/
private void construts() {
MessageResources message=MessageResources.getMessageResources("resources.application");

driveName = message.getMessage("driveName");
url = message.getMessage("url");
userName = message.getMessage("userName");
password = message.getMessage("password");
}
/** 加载数据库的驱动程ry {
Class.序
*
*
*/
private void linkDataBase() {
try {
Class.forName(driveName);
} catch (ClassNotFoundException e) {
System.out.println("Link DataBase Fail!");
}
}
/** 建立一个Connection对象
*
*
*/

public Connection createConnection() {
try {
con = DriverManager.getConnection(url, userName, password);
return con;
} catch (SQLException e) {
System.out.println("Connection Opened Fail!!");
e.printStackTrace();
}
return null;
}

/** 建立粗姿镇一个Statement对象
*
*
*/

public void createNormalStatement() {
try {
sta = con.createStatement();
} catch (SQLException e) {
e.printStackTrace();
System.out.println("NormalStatement Opened Fail!!");
}
}
/** 设册粗置一个预编译对象
*
* @param sql 初始化预编译的语句
*/

public void createPreparedStatement(String sql) {
try {
pre = con.prepareStatement(sql);
} catch (SQLException e) {
System.out.println("PreparedStatement Opened Fail!!");
}
}

/**建立一个指定sql语句的ResultSet对象
*
* @param sql 一条普通的查询Sql语句,
*/
public void setResultSet(String sql) {
try {
result = sta.executeQuery(sql);
} catch (SQLException e) {
e.printStackTrace();
System.out.println("Nomal resultset get failer!");
}
}

/**执行准备好的 SQL 查询并返回针对查询SQL漏洞
*
*
*/
public void setPreparedStatementResultSet() {

try {
result = pre.executeQuery();
} catch (SQLException e) {
e.printStackTrace();
System.out.println("PreparedStatement resultset get failer!");
}
}

/** 判断当前的Result对象中是否有结果集,有返回真,没有返回假
*
* @return 是否有下一条记录
*/
public boolean haveMoreResult() {

try {
return result.next();
} catch (SQLException e) {
System.out.println("block result next have errors");
return false;
}
}

/**关闭当前对象的Statement对象
*
*
*/
public void closeNormalStatement() {
try {
sta.close();
} catch (SQLException e) {
e.printStackTrace();
System.out.println("NormalStatement close fail!");
}
}
/** 关闭当前的Prepared对象
*
*
*/
public void closePreparedStatement() {
try {
pre.close();
} catch (SQLException e) {
e.printStackTrace();
System.out.println("PreparedStatement close fail!");
}
}
/**关闭当前的ResulrSet对象
*
*
*/
public void closeResultSet() {
try {
result.close();
} catch (SQLException e) {
e.printStackTrace();
System.out.println("Result close fail!");
}
}

/** 关闭Connection对象,检查ResultSet,Statement,PrepardStament是否为空,
* 不为空就关闭,最后关闭Connection
*
*
*/
public void closeConnection() {
try {
if (result != null) {
result.close();
}

if (sta != null) {
sta.close();
}

if (pre != null) {
pre.close();
}

con.close();
} catch (SQLException e) {
e.printStackTrace();
System.out.println("Connection close fail!");
}
}
/** 设置Connection对象事务的支持
*
* @param bool 开启变量
*/

public void setAutoCommit(Boolean bool) {
try {
con.setAutoCommit(bool);
} catch (SQLException e) {
e.printStackTrace();
}
}
/** 通过整数获取ResultSet中的字符串值
*
* @param number 指定ResultSet中的列索引
* @return 获得该值
*/

public String getResultSetValueByNumber(int number) {
try {
return result.getString(number);
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}

/** 通过名字来获得ResultSet指定列的字符串值
*
* @param columnName 指定的ResultSet列的名字
* @return 获得该值
*/
public String getResultSetValueByColumn(String columnName) {
try {
return result.getString(columnName);
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}

/** 通过整数获取ResultSet中的整数值
*
* @param number 指定ResultSet中的列索引
* @return 获得该值
*/
public int getResultSetIntValueByNumber(int number) {
try {
return result.getInt(number);
} catch (SQLException e) {
e.printStackTrace();
}
return -1;
}

/**通过名字来获得ResultSet指定列的整数值
*
* @param columnName 指定的ResultSet列的名字
* @return 获得该值
*/
public int getResultSetIntValueByColumn(String columnName) {
try {
return result.getInt(columnName);
} catch (SQLException e) {
e.printStackTrace();
}
return -1;
}
/** 设置预编译语句的指定的数值列的?String值
*
* @param number 预编译语句中?的索引
* @param value 相应的要传入的值
* @return 是否成功设置
*/
public boolean (int number, String value) {

try {
pre.setString(number, value);
return true;
} catch (SQLException e) {
e.printStackTrace();
System.out.println(" failer "
+ number);
}
return false;
}

/**设置预编译语句的指定的数值列的?int值
*
* @param number 预编译语句中?的索引
* @param value 相应的要传入的值
*/

public void setPreparedStatementIntValue(int number, int value) {
try {
pre.setInt(number, value);
} catch (SQLException e) {
e.printStackTrace();
System.out.println("setPreparedStatementIntValue failer " + number);
}
}
/** 提交preparedStatement(预编译)针对多表事物语句
*
* @return 是否成功提交该语句
*/

public boolean preExecuteUpdate() {
try {
pre.executeUpdate();
return true;
} catch (SQLException e) {
e.printStackTrace();
}
return false;
}
/**提交事物(多条SQL一起提交)
*
*
*/
public void conCommit() {
try {
con.commit();
} catch (SQLException e) {
e.printStackTrace();
System.out.println("Transfer has failer!");
}finally{
closeConnection();
}
}

/** 数据库事物不成功的时候回滚
*
*
*/
public void conRollback() {
try {
con.rollback();
System.out.println("database rollback");
} catch (SQLException e) {
e.printStackTrace();
}finally{
closeConnection();
}
}
/** 运行一条普通的Insert,Update,Delete语句
*
* @param sql 普通的INSERT,UPDATE,DELETE语句
* @return 是否成功操作
*/
public boolean insertUpdateDelete(String sql) {
try {
sta.executeUpdate(sql);
return true;
} catch (SQLException e) {
e.printStackTrace();
}
return false;
}

// 测试程序
// public static void main(String[] args) {
// DBconnection db = new DBconnection();
// db.createConnection();
// db.createNormalStatement();
// String sql = "select * from book_infor;";
// db.setResultSet(sql);
// if (db.haveMoreResult()) {
// System.out.println(db.getResultSetIntValueByNumber(1));
// System.out.println(db.getResultSetValueByNumber(2));
// System.out.println(db.getResultSetValueByNumber(3));
// System.out.println(db.getResultSetValueByNumber(4));
// System.out.println(db.getResultSetValueByNumber(5));
// System.out.println(db.getResultSetValueByNumber(6));
// }
// }
}这个是jdbc,海有个连接池。
MySQl安装个安装版的,有图形界面的。

C. java如何连接mysql

首先需要下载mysql数据库驱动程序,去mysql官网下载,文件名为mysql-connector-java-5.1.11-bin.jar,其中5.1.11是版本,可下载最新的。要把这个jar加到工程中。

java代码:
import java.sql.*;

public class TestInsert {

public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");/稿谈/加载MySQL驱动程序

//建立与键空碰数据库的连接
String url = "jdbc:mysql://localhost:3306/training"; //training是数据库名亏型,可替换
String user = "root"; //root是mysql用户名,可替换
String password = "root"; //替换为你的password
Connection cn = DriverManager.getConnection(url,user,password);

Statement stmt = cn.createStatement();//创建Statement对象

} catch (Exception e) {
e.printStackTrace();
}
}
}

D. java如何访问数据库(java访问mysql数据库)

Java可以使用JDBC访问数据库,也可以使用各类ORM框架访问数据库,但这些框架最终还是通过JDBC访问数据库,它们只是封装了数据库操作,而使得开发者可以减少这部分消耗。因此,本文只讲解JDBC访问方式。

JDBC访问一般分为如下流程:

1、加载JDBC驱动程序:

在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机),这通过java.lang.Class类的静态方法forName(StringclassName)实现。

例如:

try{

//加载MySql的驱动类

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

}catch(e){

System.out.println("找不到驱动程序类,加载驱动失败!");

e.();

}

成功加载后,会将Driver类的实例注册到类中。

2、提供JDBC连接的URL

连接URL定义了连接数据库时的协议、子协议、数据源标识。

书写形式:协议:子协议:数据源标识

协议:在JDBC中总是以jdbc开始

子协议:是桥连接的驱动程序或是数据库管理系统名称。

数据源标识:标记找到数据库来源的地址与连接端口。

例如:(MySql的连接URL)

jdbc:mysql://localhost:3306/test?useUnicode=true&=gbk;

useUnicode=true:表示使用Unicode字符集。如果设置为

gb2312或GBK,本参数必须设置为true。=gbk:字符编码方式。

3、创建数据库的连接

要连接数据库,需要向java.sql.请求并获得Connection对象,该对象就代表一个数据库的连接。

使用的(Stringurl,Stringusername,Stringpassword)方法传入指定的欲连接的数据库的路径、数据库的用户名和密码来获得。

例如:

//连接MySql数据库,用户名和密码都是root

Stringurl="jdbc:mysql://localhost:3306/test";

Stringusername="root";

Stringpassword="root";

try{

Connectioncon=

.(url,username,password);

}catch(se){

System.out.println("数据库连接失败!");

se.();

}

4、创建一个Statement

要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3种类型:

1、执行静态SQL语句。通常通过Statement实例实现。

2、执行动态SQL语句。通常通过实例实现。

3、执行数据库存储过程。通常通过实例实现。

具体的实现方式:

Statementstmt=con.();

PreparedStatementpstmt=con.prepareStatement(sql);

CallableStatementcstmt=con.prepareCall("{CALLdemoSp(?,?)}");

5、执行慧轿SQL语句

Statement接口提供了三种执行SQL语句的方法:executeQuery、executeUpdate和execute

1、ResultSetexecuteQuery(StringsqlString):执行查询数据库的SQL语句,返回一个结果集(ResultSet)对象。

2、intexecuteUpdate(StringsqlString):用于执行INSERT、UPDATE或DELETE语句以及SQLDDL语句,如:CREATETABLE和DROPTABLE等

3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的语句。

具芹尺体实现的代码:

ResultSetrs=stmt.executeQuery("SELECT*FROM...");

introws=stmt.executeUpdate("INSERTINTO...");

booleanflag=stmt.execute(Stringsql);

6、处理结果

两种情况:

1、执行更新返回的是本次操作影响到的记录数。

2、执行查询返回的结果是一个ResultSet对象。

ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提嫌碧高供了对这些行中数据的访问。

使用结果集(ResultSet)对象的访问方法获取数据:

while(rs.next()){

Stringname=rs.getString("name");

Stringpass=rs.getString(1);//此方法比较高效(列是从左到右编号的,并且从列1开始)

}

7、关闭JDBC对象

操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声明顺序相反:

1、关闭记录集

2、关闭声明

3、关闭连接对象

if(rs!=null){//关闭记录集

try{

rs.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

if(stmt!=null){//关闭声明

try{

stmt.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

if(conn!=null){//关闭连接对象

try{

conn.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

E. 如何连接java和mysql数据库

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

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

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

先创建数据库:

CREATEDATABASESCUTCS;

接着,创建表:

CREATETABLESTUDENT

(

SNOCHAR(7)NOTNULL,SNAMEVARCHAR(8)NOTNULL,SEXCHAR(2)NOTNULL,BDATEDATENOTNULL,HEIGHTDEC(5,2)DEFAULT000.00,PRIMARYKEY(SNO)

);

然后插入数据,可以用SQL语句insertinto<表名>values(value1,value2,...);

也可以用SQLyog来操作

好了,创建好了。

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

importjava.sql.*;

publicclassJDBCTest{

publicstaticvoidmain(String[]args){

//驱动程序名

Stringdriver="com.mysql.jdbc.Driver";

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

Stringurl="jdbc:mysql://127.0.0.1:3306/scutcs";

//MySQL配置时的用户名

Stringuser="root";

//MySQL配置时的密码

Stringpassword="root";

try{

//加载驱动程序

Class.forName(driver);

//连续数据库

Connectionconn=.(url,user,password);

if(!conn.isClosed())

System.out.println("!");

//statement用来执行SQL语句

Statementstatement=conn.();

//要执行的SQL语句

Stringsql="select*fromstudent";

//结果集

ResultSetrs=statement.(sql);

System.out.println("-----------------");

System.out.println("执行结果如下所示:");

System.out.println("-----------------");

System.out.println("学号"" ""姓名");

System.out.println("-----------------");

Stringname=null;

while(rs.next()){

//选择sname这列数据

name=rs.getString("sname");

/*何问起hovertree*/

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

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

name=newString(name.getBytes("ISO-8859-1"),"GB2312");

//输出结果

System.out.println(rs.getString("sno")" "name);

}

rs.close();

F. mysql必须和java一起用吗

mysql必须陆伍和java一起用。答唤要在Java系统访问MySQL,得加个MySQL驱动依赖,才能和MySQL建立连接,然后执行CRUD:maven配置,这段清悉凯maven配置中就引入了一个MySQL驱动。

G. javaweb怎么连接mysql数据库(javaweb项目连接MySQL数据库)

安装好mysql之后,那么你现在应誉雀猛该安装JDK了(JDK1.6就可以)

安装好JDK之后,就是安装Eclipse了,要支持JDK版本,Eclipse安装的时候会自动去找JDK安装位置的,如果你庆桥是解压版的Eclipse,就要配置eclipse.ini文件了,将对应的JDK配置好,这些已经准备就绪的时候,就到mysql中创建数据库和表

先创建数据库:

CREATEDATABASESCUTCS;

接着,创建岁此表:

CREATETABLESTUDENT

(

SNOCHAR(7)NOTNULL,SNAMEVARCHAR(8)NOTNULL,SEXCHAR(2)NOTNULL,BDATEDATENOTNULL,HEIGHTDEC(5,2)DEFAULT000.00,PRIMARYKEY(SNO)

);

然后插入数据,可以用SQL语句insertinto<表名

H. java是怎么连接mysql数据库的

使用java连接MySQL数据库与其他的数据库连接核心是一样的,如果说区别,那就是所需的驱动不一样。


工具/原料

MySQL、JDK


方法/步骤

1、首先需要安装好JDK(配置环境变量),如图所示:

3、最后通过代码进行连接。

(1)确定连接路径URL:

String url="jdbc:mysql://localhost(可以是本机IP地址):3306(端口号)/mysqltest(数据库名称)?"+"user=用户账号&password=用户密码&useUnicode=字符编码";

(2)加载驱动:

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

(3)连接,获取Connection对象

Connection conn=DriverManager.getConnection(url)

(4)可以通过conn对象检验连接与否。

I. 大数据分析师面试必备:java与mysql解析

【导读】作为大数据工程师,其必须要掌握的基础知识就是java与mysql的关系、交互和连接,作为基础,也是面试考官经常会考的内容,为了帮助大家都能顺利通过考试,今天小编就来和大家唠一唠java与mysql的关系、交互和连接,好了,开始今天的内容大数据分析师面试必备:java与mysql解析。

1. SQL语言四大类:

DQL 数据查询语言 select

DML 数据操作语言 insert、update、delete

DDL 数据界说语言 create、alter

DCL 数据控制语言 grant权限

2. mysql数据库中的decimal类型(是数值型,不能存放字符串):

举例:decimal(18,0) 常用于身份证号码,但是带x的不可以。

举例:decimal(5,2)

状况一:假设小数点前面是3位,后边是2位,正常状况。

状况二:5指的是小数点前后不能超过5位,小数点后有必要是2位。

3. mysql中InnoDB和MyISAM引擎的差异:

innodb支撑:事务和主外键

myisam不支撑:事务和主外键

4. 【不需要背诵,选择题考点】向mysql中,a向表中添加数据的几种写法,题目:id int 主键自增,name varchar(11)
不为空。

5. 操作mysql数据库表有两种方式,第一种:点八点吧;第二种:写代码。【不需要背诵,只需要了解,考试选择题会出】

6. 在Java中,简述面向对象三大特征。

7. 在Java中,常用关键字:

1. 定义类的关键字是什么? class

2. 继承的关键字是什么? extends

3. 定义接口的关键字是什么? interface

4. 实现接口的关键字是什么? implements

5. 抽象类的关键字是什么? abstract

8. 在Java中,抽象类和接口的区别:

1. 抽象类中可以包含普通方法和抽象方法,接口中只能包含抽象方法

2. 抽象类中可以有构造方法,接口中没有构造方法

3. 抽象类只能单继承,可以实现多个接口

9. Java接口中有哪些成员?

1. 构造方法,没有

2. 常量,默认访问修饰符public static final,没有变量

3. 抽象方法,默认访问修饰符public abstract

10. 在Java中,抽象类和抽象方法的关系:

1. 抽象类中可以包含普通方法和抽象方法,抽象方法一定存在抽象类中。

2. 子类继承抽象父类,必须实现|重写抽象方法,除非子类也是抽象类。

3. 【判断题】抽象类中必须包含抽象方法?【错误×】

4. 【判断题】抽象方法一定存在抽象类中?【正确√】

11. Java重载的特点:

1. 在同一个类中

2. 方法名相同

3. 参数列表(个数、类型、顺序)不同

4. 与返回值类型和访问修饰符无关

12. Java重写的特点:

1. 在父子类中

2. 方法名相同

3. 参数列表相同

4. 返回值类型相同,或是其子类

5. 访问修饰符相同,或不能严于父类

13. 列举几种Java实现多态的形式:

1. 继承的存在

2. 父类引用指向子类对象 | 向上转型

3. 父类作为方法的返回值类型,父类作为方法的参数

14. Java接口的特性:单根性和传递性

15. 在Java中,throws和throw的区别:

1. throws 声明异常,用在定义方法小括号的后面

2. throw 抛出异常,写在方法体内

以上就是小编今天给大家整理发送的关于大数据分析师面试必备:java与mysql解析的相关内容,希望对各位考生有所帮助,想知道更多关于数据分析师的基本要求有哪些,关注小编持续更新数据分析师岗位解析。

J. java如何连接mySQL数据库

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

热点内容
内置存储卡可以拆吗 发布:2025-05-18 04:16:35 浏览:336
编译原理课时设置 发布:2025-05-18 04:13:28 浏览:378
linux中进入ip地址服务器 发布:2025-05-18 04:11:21 浏览:612
java用什么软件写 发布:2025-05-18 03:56:19 浏览:32
linux配置vim编译c 发布:2025-05-18 03:55:07 浏览:107
砸百鬼脚本 发布:2025-05-18 03:53:34 浏览:944
安卓手机如何拍视频和苹果一样 发布:2025-05-18 03:40:47 浏览:741
为什么安卓手机连不上苹果7热点 发布:2025-05-18 03:40:13 浏览:803
网卡访问 发布:2025-05-18 03:35:04 浏览:511
接收和发送服务器地址 发布:2025-05-18 03:33:48 浏览:372