本文目錄一覽:
- 1、java怎麼連接mysql
- 2、java中連接MySQL數據庫的幾種方式
- 3、如何使用Java訪問MySQL數據庫
- 4、java是怎麼連接mysql數據庫的
- 5、java連接數據庫的代碼
- 6、java怎麼連接mysql數據庫
java怎麼連接mysql
下面代碼是使用jdbc直接鏈接mysql的操作,鏈接方式與SQL SERVER類似,區別在於加載的驅動不同,url的設置也有點區別,用戶名、密碼、端口號這些設置都類似
執行腳本返回的結果,可以看出java成功鏈接上mysql並獲取到返回值
mysql-connector-java-5.1.26-bin.jar是java鏈接mysql使用的jar包,與SQL SERVER鏈接也有專門的jar包,jar包中包含了java鏈接mysql所用到的函數驅動等等,所有的jar包都是放到web工程lib目錄下
4
如果工程是整合在ssh下,一般情況下都會有一個properties文件,該文件配置了數據庫鏈接常用的命令,下圖是mysql中的配置
使用spring框架下進行的測試,結果可以成功執行,其實無論是sql server還是mysql還是其他的數據庫,基本功能都一樣,只是語法結構有所區別,java在調用的過程中大部分功能只要切換了數據庫鏈接命令就可以公用,如果系統架構設計的足夠好,當我們切換數據庫的時候,應用程序是不用調整就能兼容的
java中連接MySQL數據庫的幾種方式
Java要連接數據庫,那麼首先你必須安裝mysql數據庫。
安裝好mysql之後,安裝JDK了。
安裝好JDK之後,就是安裝Eclipse了,要支持JDK版本,Eclipse安裝的時候會自動去找JDK安裝位置的,解壓版的Eclipse,就要配置eclipse.ini文件了,將對應的JDK配置好,這些已經準備就緒的時候,就到mysql中創建數據庫和表。
先創建數據庫:
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 000.00,
PRIMARY KEY(SNO)
);
然後插入數據,可以用SQL語句insert into 表名 values (value1, value2, …);
編寫.java文件來演示一下如何訪問MySQL數據庫。
import java.sql.*;
public class JDBCTest {
public static void main(String[] args){
// 驅動程序名 String driver = “com.mysql.jdbc.Driver”;
// URL指向要訪問的數據庫名scutcs String url = “jdbc:mysql://127.0.0.1:3306/scutcs”;
// MySQL配置時的用戶名 String user = “root”; // MySQL配置時的密碼 String password = “root”;
try { // 加載驅動程序 Class.forName(driver);
// 連續數據庫 Connection conn = DriverManager.getConnection(url, user, password);
if(!conn.isClosed()) System.out.println(“Succeeded connecting to the Database!”);
// statement用來執行SQL語句 Statement statement = conn.createStatement();
// 要執行的SQL語句 String sql = “select * from student”;
// 結果集 ResultSet rs = statement.executeQuery(sql);
while(rs.next()) // 選擇sname這列數據 name = rs.getString(“sname
// 輸出結果 System.out.println(rs.getString(“sno”) + “\t” + name); }
rs.close(); conn.close();
} catch(ClassNotFoundException e) {
System.out.println(“Sorry,can`t find the Driver!”); e.printStackTrace();
} catch(SQLException e) {
e.printStackTrace();
} catch(Exception e) {
e.printStackTrace();
} } }
如何使用Java訪問MySQL數據庫
第1步 獲取Java與MySQL的連接器
第2步 將下載的包存放在自己機器上jdk安裝目錄下面的jre目錄下面的lib目錄下面的ext目錄中,在程序中導入與數據庫操作相關的對象
import java.sql.Connection; //導入數據庫連接對象
import java.sql.DriverManager; //導入數據庫驅動管理對象
import java.sql.ResultSet; //導入數據記錄集對象
import java.sql.SQLException; //導入數據SQL操作異常對象
import java.sql.Statement; //導入SQL操作接口對象
第3步:在程序中寫入如下內容
String url; //連接數據庫的字符串
String sql; //執行數據sql查詢操作的字符串
Connection conn; //數據庫連接變量
Statement st; //數據庫操作對象
ResultSet rs; //數據記錄集對象
url = “jdbc:mysql://localhost:3306/test?user=rootpassword=”; //在程序中只要修改這句,就可以實現數據庫連接
try {
conn = DriverManager.getConnection(url);
st = conn.createStatement();
sql = “select * from test”; //只要修改這句,就可以實現各種查詢操作
rs=st.executeQuery(sql); //執行數據查詢
while(rs.next())
{
System.out.println(rs.getString(1)); //獲得數據表test中第1個字段的數據,該字段為字符串類型
System.out.println(rs.getString(2)); //獲得數據表test中第2個字段的數據,該字段為字符串類型
}
rs.close(); //關閉數據記錄集
conn.close(); //關閉數據庫連接
} catch (SQLException e) {
System.out.println(“Error:”+e.toString()+e.getMessage());
}
java是怎麼連接mysql數據庫的
java連接mysql數據庫的步驟如下:
首先要下載mysql-connection-java-5.0.16-bin.jar這個jar包(版本不一致沒關係),然後在工程中導入該庫文件。
然後寫一個類(DBHelper)用來打開或關閉數據庫:
package com.hu.demo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class DBHelper {
public static final String url = “jdbc:mysql://127.0.0.1/student”;
public static final String name = “com.mysql.jdbc.Driver”;
public static final String user = “root”;
public static final String password = “root”;
public Connection conn = null;
public PreparedStatement pst = null;
public DBHelper(String sql) {
try {
Class.forName(name);//指定連接類型
conn = DriverManager.getConnection(url, user, password);//獲取連接
pst = conn.prepareStatement(sql);//準備執行語句
} catch (Exception e) {
e.printStackTrace();
}
}
public void close() {
try {
this.conn.close();
this.pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
最後再寫一個Demo類來執行相關查詢操作:
package com.hu.demo;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Demo {
static String sql = null;
static DBHelper db1 = null;
static ResultSet ret = null;
public static void main(String[] args) {
sql = “select *from stuinfo”;//SQL語句
db1 = new DBHelper(sql);//創建DBHelper對象
try {
ret = db1.pst.executeQuery();//執行語句,得到結果集
while (ret.next()) {
String uid = ret.getString(1);
String ufname = ret.getString(2);
String ulname = ret.getString(3);
String udate = ret.getString(4);
System.out.println(uid + “\t” + ufname + “\t” + ulname + “\t” + udate );
}//顯示數據
ret.close();
db1.close();//關閉連接
} catch (SQLException e) {
e.printStackTrace();
}
}
}
這樣就完成了mysql數據庫的連接了。
java連接數據庫的代碼
package mysql;
import java.sql.*;
/**
* @author xys
*/
public class ConnectMysql {
public static Connection getConnection() throws ClassNotFoundException, SQLException {
String url = “jdbc:mysql://localhost:3306/databaseName”;
String user = “mysqluser”;
String password = “password”;
String driverClass = “com.mysql.cj.jdbc.Driver”;
Connection connection = null;
Class.forName(driverClass);
try {
connection = DriverManager.getConnection(url, user, password);
} catch (SQLException e) {
e.printStackTrace();
}
if (connection != null) {
System.out.println(“數據庫連接成功”);
} else {
System.out.println(“數據庫連接失敗”);
connection.close();
}
return connection;
}
public void getResult() throws ClassNotFoundException, SQLException {
// 實例化 Statement 對象
Statement statement = getConnection().createStatement();
// 要執行的 Mysql 數據庫操作語句(增、刪、改、查)
String sql = “”;
// 展開結果集數據庫
ResultSet resultSet = statement.executeQuery(sql);
while (resultSet.next()) {
// 通過字段檢索
int id = resultSet.getInt(“id”);
String name = resultSet.getString(“name”);
// 輸出數據
System.out.println(“ID : ” +id);
System.out.println(“name :” + name);
}
// 完成後需要依次關閉
resultSet.close();
statement.close();
getConnection().close();
}
}
java怎麼連接mysql數據庫
這裡介紹兩種方式:
一,jdbc鏈接MySQL數據庫:
1,如果你用jdbc方式,則按照下列方式進行連接:
A,註冊驅動
B,鏈接數據庫
C,執行sql
D,返回結果集
如下為一個基本完整流程:
package com.hu.demo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class DBHelper {
public static final String url = “jdbc:mysql://127.0.0.1/student”;
public static final String name = “com.mysql.jdbc.Driver”;
public static final String user = “root”;
public static final String password = “root”;
public Connection conn = null;
public PreparedStatement pst = null;
public DBHelper(String sql) {
try {
Class.forName(name);//指定連接類型
conn = DriverManager.getConnection(url, user, password);//獲取連接
pst = conn.prepareStatement(sql);//準備執行語句
} catch (Exception e) {
e.printStackTrace();
}
}
public void close() {
try {
this.conn.close();
this.pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
2,將註冊,鏈接封裝好,執行sql語句,返回結果集,代碼如下:
package com.hu.demo;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Demo {
static String sql = null;
static DBHelper db1 = null;
static ResultSet ret = null;
public static void main(String[] args) {
sql = “select *from stuinfo”;//SQL語句
db1 = new DBHelper(sql);//創建DBHelper對象
try {
ret = db1.pst.executeQuery();//執行語句,得到結果集
while (ret.next()) {
String uid = ret.getString(1);
String ufname = ret.getString(2);
String ulname = ret.getString(3);
String udate = ret.getString(4);
System.out.println(uid + “\t” + ufname + “\t” + ulname + “\t” + udate );
}//顯示數據
ret.close();
db1.close();//關閉連接
} catch (SQLException e) {
e.printStackTrace();
}
}
}
3,查詢結果如下:
二,利用框架鏈接MySQL,這裡是springMVC+Mybatis方式鏈接,主要是配置文件:
config.properties文件
validationQuery=SELECT 1
#jdbc_url=jdbc\:mysql\://110.80.10.198\:3306/irrigation?useUnicode\=truecharacterEncoding\=UTF-8zeroDateTimeBehavior\=convertToNull
#jdbc_username=root
#jdbc_password=2025900
jdbc_url=jdbc:mysql://localhost:3306/test?useUnicode=truecharacterEncoding=UTF-8zeroDateTimeBehaviorsss=convertToNull
jdbc_username=root
jdbc_password=123456
spring-mabatis.xml文件,進行相關配置
?xml version=”1.0″ encoding=”UTF-8″?
beans xmlns=””
xmlns:xsi=”” xmlns:tx=””
xmlns:aop=””
xsi:schemaLocation=”
“
!– 配置數據源 —
bean name=”dataSource” class=”com.alibaba.druid.pool.DruidDataSource”
init-method=”init” destroy-method=”close”
property name=”url” value=”${jdbc_url}” /
property name=”username” value=”${jdbc_username}” /
property name=”password” value=”${jdbc_password}” /
!– 初始化連接大小 —
property name=”initialSize” value=”0″ /
!– 連接池最大使用連接數量 —
property name=”maxActive” value=”20″ /
!– 連接池最小空閑 —
property name=”minIdle” value=”0″ /
!– 獲取連接最大等待時間 —
property name=”maxWait” value=”60000″ /
!– property name=”poolPreparedStatements” value=”true” / property
name=”maxPoolPreparedStatementPerConnectionSize” value=”33″ / —
property name=”validationQuery” value=”${validationQuery}” /
property name=”testOnBorrow” value=”false” /
property name=”testOnReturn” value=”false” /
property name=”testWhileIdle” value=”true” /
!– 配置間隔多久才進行一次檢測,檢測需要關閉的空閑連接,單位是毫秒 —
property name=”timeBetweenEvictionRunsMillis” value=”60000″ /
!– 配置一個連接在池中最小生存的時間,單位是毫秒 —
property name=”minEvictableIdleTimeMillis” value=”25200000″ /
!– 打開removeAbandoned功能 —
property name=”removeAbandoned” value=”true” /
!– 1800秒,也就是30分鐘 —
property name=”removeAbandonedTimeout” value=”1800″ /
!– 關閉abanded連接時輸出錯誤日誌 —
property name=”logAbandoned” value=”true” /
!– 監控數據庫 —
!– property name=”filters” value=”stat” / —
property name=”filters” value=”mergeStat” /
/bean
!– myBatis文件 —
bean id=”sqlSessionFactory” class=”org.mybatis.spring.SqlSessionFactoryBean”
property name=”dataSource” ref=”dataSource” /
!– 自動掃描entity目錄, 省掉Configuration.xml里的手工配置 —
property name=”mapperLocations” value=”classpath:com/fourfaith/*/mapping/*.xml” /
/bean
bean class=”org.mybatis.spring.mapper.MapperScannerConfigurer”
property name=”basePackage” value=”com.fourfaith.**.dao” /
property name=”sqlSessionFactoryBeanName” value=”sqlSessionFactory” /
/bean
!– 配置事務管理器 —
bean id=”transactionManager”
class=”org.springframework.jdbc.datasource.DataSourceTransactionManager”
property name=”dataSource” ref=”dataSource” /
/bean
!– 攔截器方式配置事物 —
tx:advice id=”transactionAdvice” transaction-manager=”transactionManager”
tx:attributes
tx:method name=”add*” propagation=”REQUIRED” /
tx:method name=”append*” propagation=”REQUIRED” /
tx:method name=”insert*” propagation=”REQUIRED” /
tx:method name=”save*” propagation=”REQUIRED” /
tx:method name=”update*” propagation=”REQUIRED” /
tx:method name=”modify*” propagation=”REQUIRED” /
tx:method name=”edit*” propagation=”REQUIRED” /
tx:method name=”delete*” propagation=”REQUIRED” /
tx:method name=”remove*” propagation=”REQUIRED” /
tx:method name=”repair” propagation=”REQUIRED” /
tx:method name=”delAndRepair” propagation=”REQUIRED” /
tx:method name=”import*” propagation=”REQUIRED” read-only=”false”
rollback-for=”java.lang.Exception” /
tx:method name=”get*” propagation=”SUPPORTS” /
tx:method name=”find*” propagation=”SUPPORTS” /
tx:method name=”load*” propagation=”SUPPORTS” /
tx:method name=”search*” propagation=”SUPPORTS” /
tx:method name=”datagrid*” propagation=”SUPPORTS” /
tx:method name=”*” propagation=”SUPPORTS” /
/tx:attributes
/tx:advice
aop:config
aop:pointcut id=”transactionPointcut”
expression=”execution(* com…*.service..*Impl.*(..))” /
aop:advisor pointcut-ref=”transactionPointcut”
advice-ref=”transactionAdvice” /
/aop:config
!– 配置druid監控spring jdbc —
bean id=”druid-stat-interceptor”
class=”com.alibaba.druid.support.spring.stat.DruidStatInterceptor”
/bean
bean id=”druid-stat-pointcut” class=”org.springframework.aop.support.JdkRegexpMethodPointcut”
scope=”prototype”
property name=”patterns”
list
valuecom…*.service.*/value
/list
/property
/bean
aop:config
aop:advisor advice-ref=”druid-stat-interceptor”
pointcut-ref=”druid-stat-pointcut” /
/aop:config
/beans
還有很多方式可以實現,這裡就簡略的描述一番。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/249230.html