本文目录一览:
- 1、java连接mysql数据库
- 2、java是怎么连接mysql数据库的
- 3、java连接数据库mysql代码及简单访问数据库
- 4、java怎么连接mysql数据库
- 5、eclipsejee怎么连接mysql数据库
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数据库的
使用java连接MySQL数据库与其他的数据库连接核心是一样的,如果说区别,那就是所需的驱动不一样。
工具/原料
MySQL、JDK
方法/步骤
1、首先需要安装好JDK(配置环境变量),如图所示:
2、其次要安装好MySQL数据库,可以使用可视化Navicar For MySQL,如图所示:
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对象检验连接与否。
java连接数据库mysql代码及简单访问数据库
import java.sql.*;
public class DataBasePractice {
public static void main(String[] args) {
//声明Connection对象
Connection con;
//驱动程序名
String driver = "com.mysql.jdbc.Driver";
//URL指向要访问的数据库名mydata
String url = "jdbc:mysql://localhost:3306/mydata";
//MySQL配置时的用户名
String user = "root";
//MySQL配置时的密码
String password = "root";
//遍历查询结果集
try {
//加载驱动程序
Class.forName(driver);
//1.getConnection()方法,连接MySQL数据库!!
con = DriverManager.getConnection(url,user,password);
if(!con.isClosed())
System.out.println("Succeeded connecting to the Database!");
//2.创建statement类对象,用来执行SQL语句!!
Statement statement = con.createStatement();
//要执行的SQL语句
String sql = "select * from student";
//3.ResultSet类,用来存放获取的结果集!!
ResultSet rs = statement.executeQuery(sql);
System.out.println("-----------------");
System.out.println("执行结果如下所示:");
System.out.println("-----------------");
System.out.println(" 学号" + "\t" + " 姓名");
System.out.println("-----------------");
String name = null;
String id = null;
while(rs.next()){
//获取stuname这列数据
name = rs.getString("stuname");
//获取stuid这列数据
id = rs.getString("stuid");
//首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。
//然后使用GB2312字符集解码指定的字节数组。
name = new String(name.getBytes("ISO-8859-1"),"gb2312");
//输出结果
System.out.println(id + "\t" + name);
}
rs.close();
con.close();
} catch(ClassNotFoundException e) {
//数据库驱动类异常处理
System.out.println("Sorry,can`t find the Driver!");
e.printStackTrace();
} catch(SQLException e) {
//数据库连接失败异常处理
e.printStackTrace();
}catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}finally{
System.out.println("数据库数据成功获取!!");
}
}
}
在上面while代码段后面添加以下代码段:
String name = null;
String id = null;
while(rs.next()){
//获取stuname这列数据
name = rs.getString("stuname");
//获取stuid这列数据
id = rs.getString("stuid");
//首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。
//然后使用GB2312字符集解码指定的字节数组。
name = new String(name.getBytes("ISO-8859-1"),"gb2312");
//输出结果
System.out.println(id + "\t" + name);
}
PreparedStatement psql;
ResultSet res;
//预处理添加数据,其中有两个参数--“?”
psql = con.prepareStatement("insert into student values(?,?)");
psql.setInt(1, 8); //设置参数1,创建id为5的数据
psql.setString(2, "xiaogang"); //设置参数2,name 为小明
psql.executeUpdate(); //执行更新
//预处理更新(修改)数据
psql = con.prepareStatement("update student set stuname = ? where stuid = ?");
psql.setString(1,"xiaowang"); //设置参数1,将name改为王五
psql.setInt(2,10); //设置参数2,将id为2的数据做修改
psql.executeUpdate();
//预处理删除数据
psql = con.prepareStatement("delete from student where stuid = ?");
psql.setInt(1, 5);
psql.executeUpdate();
//查询修改数据后student表中的数据
psql = con.prepareStatement("select*from student");
res = psql.executeQuery(); //执行预处理sql语句
System.out.println("执行增加、修改、删除后的数据");
while(res.next()){
name = res.getString("stuname");
id = res.getString("stuid");
name = new String(name.getBytes("ISO-8859-1"),"gb2312");
System.out.println(id + "\t" + name);
}
res.close();
psql.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
还有很多方式可以实现,这里就简略的描述一番。
eclipsejee怎么连接mysql数据库
首先你得有一个jdbc的架包
然后
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class Util {
public static Connection getConnection(){
Connection con = null;
String user = "root";//数据库登陆用户名
String password = "root";//数据库登陆密码
String url = "jdbc:mysql://localhost:3306/password";//数据库库名
String driver = "com.mysql.jdbc.Driver";
try{
Class.forName(driver);
con = DriverManager.getConnection(url,user,password);
}catch(Exception e){
}
return con;
}
public static void main(String[] args) {
Connection con = getConnection();
String sql = "insert into stu values(null,\'hello\')";
PreparedStatement p = null;
try{
p = con.prepareStatement(sql);
p.executeUpdate();
}catch(SQLException e){
e.printStackTrace();
}finally{
try{
p.close();
con.close();
}catch(SQLException e){
e.printStackTrace();
}
}
}
}