本文目录一览:
- 1、IDEA如何连接mysql?
- 2、我一套java代码里既要连接mysql5数据库,又要连mysql8版本,驱动jar包不兼容怎么办?
- 3、java怎么连接mysql数据库
- 4、java怎么连接mysql
- 5、java是怎么连接mysql数据库的
IDEA如何连接mysql?
IDEA软件开发集成工具,常用于java软件项目开发,软件项目中使用到了mysql数据库存储数据的时候,需要使用客户端图形化工具连接数据查看或修改数据内容,使用IDEA就可以直接连接数据库查询或修改数据,不需要再单独下载数据库客户端软件了,下面我介绍下如何使用IDEA连接mysql数据库查询数据内容的方法:
1、
打开IDEA软件工具,正常打开一个项目工程之后,在工具类的右侧会看到Database图标,点击打开之后,如果之前没有连接过任何数据库,这个窗口页面都是空的点击如图所示的加号按钮,创建一个新的数据库连接
;
2、选择Data Source,然后再选择MySQL,这里可以看到支持很多种数据库类型,这里选择您自己对应使用的数据库类型,这里我们演示使用的是mysql数据库;
3、在这个页面需要填写连接的数据库host,数据库名称,用户名以及密码,端口如果是mysql默认是3306,如果没有修改保持默认即可;
4、连接mysql需要配置mysql连接的数据库驱动文件,如果没有配置的话,会提示没有可用的驱动,在页面点击加号按钮找到电脑的驱动文件位置、添加上即可
;
5、驱动文件和连接配置信息填写完成之后,点击Test Connection按钮测试连接是否可以正常连接,当出现Connection successful提示即表示测试连接成功,以上配置信息填写正确
;
6、直接点击确定按钮,即可正常打开连接进行mysql数据库内容的查询了,可以看到tables是数据库表,下面是函数对象
;
7、在某个表名称上,双击鼠标左键,即可打开表数据内容窗口,查询到了数据表中内容数据,可以针对数据进行增删改查等操作;
8、从以上操作可以看到,一般写代码一般调试数据的时候,可以都在IDEA工具中完成了,不需要再多次切换工具那么麻烦了。
我一套java代码里既要连接mysql5数据库,又要连mysql8版本,驱动jar包不兼容怎么办?
如果你使用springboot的话推荐使用多数据源,多数据源时可以分别配置driverClassName,具体网上搜一下就有,比如:这个和这个
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
还有很多方式可以实现,这里就简略的描述一番。
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数据库的
1,安装JDK
2,安装eclipse (IDE), java集成开发环境,当然也有其他,读者自行选择.
3,安装JDBC,数据库驱动,下载地址截至发博时最新驱动.
把下载好的文件解压到任意目录,这里我为了便于管理,放在和JDK一起的目录当中,如图:
之后把mysql-connetor-java-5.1.22文件夹下的mysql-connector-java-5.1.22-bin.jar 添加到CLASSPATH里面
找到CLASSPATH的方式为 “我的电脑”- “属性” - “高级” - “环境变量”
之后如图编辑:
一路确定即可.
4,我们来测试一下.
一,登录数据库,格式为 mysql -u(用户名) -p(密码); 我的是 mysql -uroot -pll;
从这里可以看出来我是以超级管理员登录数据库的,密码是ll. 使用命令show database; 则窗口列出了所有的当前的数据库,
其实,这里的test数据库是本人之前建的空数据库,里面什么都没有,通过use test;命令. 我们就进入了数据库test,然后用命令 show tables; 则列出当前数据库所有的表;
如果你的没有,那么用命令 create database test; 来建一个,以便于测试.
现在我要为我的数据库建表,并为其导入数据.我们这里建一个学生表,最易最后一行没有逗号.
1 CREATE TABLE student
2 (
3 StudentNo VARCHAR(20) PRIMARY KEY,
4 Name VARCHAR(10),
5 Phone VARCHAR(20),
6 Age int
7 );
这是用show tables;就可以看见student了.
好的为它导入数据.首先建一个txt文件,文件的内容如图,每一项内容,与表中的格式相对应,中间用tab键隔开.这里本人取名为student.txt, 且处在F盘根目录下.
1 11111111 东邪 11111001 19
2 22222222 西毒 22222002 20
3 33333333 南帝 33333003 30
4 44444444 被盖 44444404 40
5 55555555 中神通 55555505 50
使用命令如下命令将建好的txt文件导入表中
1 load data infile 'F:\student.txt' into table student;
使用命令查看表中的内容
1 select * from student;
成功建好表了!现在开始写我们的java文件.看看能不能喝数据库进行连接.
5,java连接数据库.
首先是我们的java源文件
1 import java.sql.*;
2 public class JavaMysql
3 {
4 public static void main(String[] args) throws Exception
5 {
6 String driver="com.mysql.jdbc.Driver";
7 String url="jdbc:mysql://127.0.0.1:3306/test";
8 Class.forName(driver);
9 Connection connecter=DriverManager.getConnection(url,"root","ll");
10 if(!connecter.isClosed()) System.out.println("success in getConnetion");
11 Statement statement=connecter.createStatement();
12 ResultSet rs=statement.executeQuery("select * from student");
13 System.out.println("编号"+"\t"+"名字"+"Phone"+"\t"+"Age");
14 String No=null,Name=null,Phone=null,Age=null;
15 while(rs.next())
16 {
17 No=rs.getString("studentNo");
18 Name=rs.getString("Name");
19 Phone=rs.getString("Phone");
20 Age=rs.getString("Age");
21 System.out.println(No+"\t"+Name+"\t"+Phone+"\t"+Age);
22 }
23 }
24
25 }
执行: