Java连接MySQLURL

本文目录一览:

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数据库url怎么写

连接代码如下:

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);

System.out.println("—————–");

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

System.out.println("—————–");

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

System.out.println("—————–");

String name = null;

while(rs.next()) {

// 选择sname这列数据

name = rs.getString("sname");

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

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

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

// 输出结果

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数据库的几种方式

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数据库

这里介绍两种方式:

一,jdbc链接MySQL数据库:

1,如果你用jdbc方式,则按照下列方式进行连接:

A,注册驱动

B,链接数据库

C,执行sql

D,返回结果集

如下为一个基本完整流程:

packagecom.hu.demo;

importjava.sql.Connection;

importjava.sql.DriverManager;

importjava.sql.PreparedStatement;

importjava.sql.SQLException;

publicclassDBHelper{

publicstaticfinalStringurl="jdbc:mysql://127.0.0.1/student";

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

publicstaticfinalStringuser="root";

publicstaticfinalStringpassword="root";

publicConnectionconn=null;

publicPreparedStatementpst=null;

publicDBHelper(Stringsql){

try{

Class.forName(name);//指定连接类型

conn=DriverManager.getConnection(url,user,password);//获取连接

pst=conn.prepareStatement(sql);//准备执行语句

}catch(Exceptione){

e.printStackTrace();

}

}

publicvoidclose(){

try{

this.conn.close();

this.pst.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

}

2,将注册,链接封装好,执行sql语句,返回结果集,代码如下:

packagecom.hu.demo;

importjava.sql.ResultSet;

importjava.sql.SQLException;

publicclassDemo{

staticStringsql=null;

staticDBHelperdb1=null;

staticResultSetret=null;

publicstaticvoidmain(String[]args){

sql="select*fromstuinfo";//SQL语句

db1=newDBHelper(sql);//创建DBHelper对象

try{

ret=db1.pst.executeQuery();//执行语句,得到结果集

while(ret.next()){

Stringuid=ret.getString(1);

Stringufname=ret.getString(2);

Stringulname=ret.getString(3);

Stringudate=ret.getString(4);

System.out.println(uid+"\t"+ufname+"\t"+ulname+"\t"+udate);

}//显示数据

ret.close();

db1.close();//关闭连接

}catch(SQLExceptione){

e.printStackTrace();

}

}

}

3,查询结果如下:

二,利用框架链接MySQL,这里是springMVC+Mybatis方式链接,主要是配置文件:

config.properties文件

validationQuery=SELECT1

#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文件,进行相关配置

?xmlversion="1.0"encoding="UTF-8"?

beansxmlns=""

xmlns:xsi=""xmlns:tx=""

xmlns:aop=""

xsi:schemaLocation="

"

!–配置数据源–

beanname="dataSource"class="com.alibaba.druid.pool.DruidDataSource"

init-method="init"destroy-method="close"

propertyname="url"value="${jdbc_url}"/

propertyname="username"value="${jdbc_username}"/

propertyname="password"value="${jdbc_password}"/

!–初始化连接大小–

propertyname="initialSize"value="0"/

!–连接池最大使用连接数量–

propertyname="maxActive"value="20"/

!–连接池最小空闲–

propertyname="minIdle"value="0"/

!–获取连接最大等待时间–

propertyname="maxWait"value="60000"/

!–propertyname="poolPreparedStatements"value="true"/property

name="maxPoolPreparedStatementPerConnectionSize"value="33"/–

propertyname="validationQuery"value="${validationQuery}"/

propertyname="testOnBorrow"value="false"/

propertyname="testOnReturn"value="false"/

propertyname="testWhileIdle"value="true"/

!–配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒–

propertyname="timeBetweenEvictionRunsMillis"value="60000"/

!–配置一个连接在池中最小生存的时间,单位是毫秒–

propertyname="minEvictableIdleTimeMillis"value="25200000"/

!–打开removeAbandoned功能–

propertyname="removeAbandoned"value="true"/

!–1800秒,也就是30分钟–

propertyname="removeAbandonedTimeout"value="1800"/

!–关闭abanded连接时输出错误日志–

propertyname="logAbandoned"value="true"/

!–监控数据库–

!–propertyname="filters"value="stat"/–

propertyname="filters"value="mergeStat"/

/bean

!–myBatis文件–

beanid="sqlSessionFactory"class="org.mybatis.spring.SqlSessionFactoryBean"

propertyname="dataSource"ref="dataSource"/

!–自动扫描entity目录,省掉Configuration.xml里的手工配置–

propertyname="mapperLocations"value="classpath:com/fourfaith/*/mapping/*.xml"/

/bean

beanclass="org.mybatis.spring.mapper.MapperScannerConfigurer"

propertyname="basePackage"value="com.fourfaith.**.dao"/

propertyname="sqlSessionFactoryBeanName"value="sqlSessionFactory"/

/bean

!–配置事务管理器–

beanid="transactionManager"

class="org.springframework.jdbc.datasource.DataSourceTransactionManager"

propertyname="dataSource"ref="dataSource"/

/bean

!–拦截器方式配置事物–

tx:adviceid="transactionAdvice"transaction-manager="transactionManager"

tx:attributes

tx:methodname="add*"propagation="REQUIRED"/

tx:methodname="append*"propagation="REQUIRED"/

tx:methodname="insert*"propagation="REQUIRED"/

tx:methodname="save*"propagation="REQUIRED"/

tx:methodname="update*"propagation="REQUIRED"/

tx:methodname="modify*"propagation="REQUIRED"/

tx:methodname="edit*"propagation="REQUIRED"/

tx:methodname="delete*"propagation="REQUIRED"/

tx:methodname="remove*"propagation="REQUIRED"/

tx:methodname="repair"propagation="REQUIRED"/

tx:methodname="delAndRepair"propagation="REQUIRED"/

tx:methodname="import*"propagation="REQUIRED"read-only="false"

rollback-for="java.lang.Exception"/

tx:methodname="get*"propagation="SUPPORTS"/

tx:methodname="find*"propagation="SUPPORTS"/

tx:methodname="load*"propagation="SUPPORTS"/

tx:methodname="search*"propagation="SUPPORTS"/

tx:methodname="datagrid*"propagation="SUPPORTS"/

tx:methodname="*"propagation="SUPPORTS"/

/tx:attributes

/tx:advice

aop:config

aop:pointcutid="transactionPointcut"

expression="execution(*com…*.service..*Impl.*(..))"/

aop:advisorpointcut-ref="transactionPointcut"

advice-ref="transactionAdvice"/

/aop:config

!–配置druid监控springjdbc–

beanid="druid-stat-interceptor"

class="com.alibaba.druid.support.spring.stat.DruidStatInterceptor"

/bean

beanid="druid-stat-pointcut"class="org.springframework.aop.support.JdkRegexpMethodPointcut"

scope="prototype"

propertyname="patterns"

list

valuecom…*.service.*/value

/list

/property

/bean

aop:config

aop:advisoradvice-ref="druid-stat-interceptor"

pointcut-ref="druid-stat-pointcut"/

/aop:config

/beans

还有很多方式可以实现,这里就简略的描述一番。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/300685.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-29 12:52
下一篇 2024-12-29 12:52

相关推荐

  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29
  • Java 8 Group By 会影响排序吗?

    是的,Java 8中的Group By会对排序产生影响。本文将从多个方面探讨Group By对排序的影响。 一、Group By的概述 Group By是SQL中的一种常见操作,它…

    编程 2025-04-29

发表回复

登录后才能评论