首页 > 数据库 >【Java】Java连接Mysql数据库的demo示例

【Java】Java连接Mysql数据库的demo示例

时间:2023-01-16 18:06:23浏览次数:49  
标签:java tem 示例 demo 数据库 rs mysql Java String


【Java】Java连接Mysql数据库的demo示例


1.安装mysql数据库

2.下载java-mysql-connector.jar包

3.完成java配置

4.写java代码运行测试


1.安装mysql数据库

这里不多重复,我主要讲解java连接mysql数据库并写代码运行,数据库请大家百度自己安装,网上教程也特别多。
最后Mysql完成到如下界面就ok。

【Java】Java连接Mysql数据库的demo示例_odbc


2.下载java-mysql-connector.jar包

下载地址:https://dev.mysql.com/downloads/connector/j/

下载下来大概长这样:

【Java】Java连接Mysql数据库的demo示例_odbc_02


3.3.完成java配置

重点来了!!!

在Eclipse中。
刚开始,你的项目目录是这样的:

【Java】Java连接Mysql数据库的demo示例_java连接mysql_03

此时右击项目名,创建一个新文件夹,名称为lib。

如图:

【Java】Java连接Mysql数据库的demo示例_java连接mysql_04


创建好lib文件夹之后,去C盘或者D盘即你项目的根目录里面找到这个文件夹,把jar包拖进lib文件夹中。如图:

【Java】Java连接Mysql数据库的demo示例_odbc_05

解释:如果在根目录直接创建lib文件夹是不可行的。

Eclipse里面的工程不会识别在根目录下自行创建的文件夹。

然后,点击Eclipse上方的工具栏Project–>Properties
点击左侧工具栏中的Java Bulid Path。点击Add JARs把刚才的jar包添加到工程。如图

【Java】Java连接Mysql数据库的demo示例_jdbc_06


添加之后的效果,多了红框内的内容:

【Java】Java连接Mysql数据库的demo示例_odbc_07


4.写java代码demo运行测试

【注】本demo代码复制到Eclipse即可使用。

使用前需要在本地Mysql数据库中创建相应的数据库、表、与信息

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


public class test{
private String host;
private Connection conn;//声明Connection引用
private Statement stmt;//声明Statement引用
private ResultSet rs;//声明结果集引用

//数据库连接的方法
public void initialConnection()
{
System.out.printf("连接数据库\n");
try
{
Class.forName("com.mysql.cj.jdbc.Driver"); //jdbc mysql连接驱动
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/java_chap02?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT","root","123");
stmt=conn.createStatement();
}
catch(SQLException e)
{
System.out.println("SQL语句出错--->");
e.printStackTrace();
}
catch(ClassNotFoundException e)
{
System.out.println("没有发现MySQL驱动--->");
e.printStackTrace();
}
}

public void closeConn()
{
try
{
if(rs!=null){rs.close();}
if(stmt!=null){stmt.close();}
if(conn!=null){conn.close();}
}
catch(SQLException e)
{
System.out.println("关闭连接出现异常--->");
e.printStackTrace();
}
}

public static void main(String args[]){
test tem=new test();
String[] message=new String[3];
String stu_id="103317012121";
try
{ //初始化数据库连接并更改密码
tem.initialConnection();
System.out.printf("*****数据库连接成功*****\n");
String sql="select stu_id,stu_name,stu_gender from student where stu_id='"+stu_id+"'";

tem.rs=tem.stmt.executeQuery(sql);
if(tem.rs.next()){
message[0]=tem.rs.getString(1);
message[1]=new String(tem.rs.getString(2).getBytes("gb2312"));
message[2]=new String(tem.rs.getString(3).getBytes("gb2312"));
}
tem.closeConn();//关闭数据库连接
}
catch(Exception ea)
{
ea.printStackTrace();
}

for(int i=0;i<3;i++)
System.out.printf(message[i]+"\n");
}
}

demo中:
数据库名称:java_chap02
表名:student


标签:java,tem,示例,demo,数据库,rs,mysql,Java,String
From: https://blog.51cto.com/u_15942590/6010660

相关文章

  • JavaScript 请求服务端接口
    JavaScript中请求服务端接口的代码实现可能会因为使用的方法而有所不同。1、使用XMLHttpRequest:varxhr=newXMLHttpRequest();xhr.open("GET","https://example.c......
  • Java面向对象程序设计基础知识
    Java面向对象程序设计Java基础语法类(class):类是一个模块,描述一类对象的行为和状态对象:类的一个实例,有状态和行为,例如:一条狗是一个对象,它的状态有:颜色、名字、品种;行......
  • java.3 Java数据类型1
    数据类型讲解Java属于强类型语言即要求变量的使用要严格符合规定,所有变量都必须严格定义以后才能使用优点:安全性高缺点:速度慢(相对而言)Java数据类型分为引用类......
  • 【学懂Java】(三)数组
    一.概述a.数组是相同类型数据的有序集合:相同类型的若干个数据,按照一定先后次序排列组合而成。其中,每一个数据称作一个数组元素每个数组元素可以通过一个下标来访问它们.b......
  • Java控制台摸鱼看书大法
    “本代码由摸鱼本鱼提供”老板:控制台虽然好看,也不能看一整天啊! (因为小说章节不准确,定位章节可能会有偏差,这个只能自己调整了)效果图:    废话不多说,直接上代......
  • JavaScript async/await 的用法以及它与 Promise 的区别
    async/await是JavaScript中的语法糖,用于简化异步代码的编写。它允许你在异步代码中使用同步风格的语法,使代码更易于阅读和维护。用法:使用关键字async声明一个异步......
  • 图片上传报错 java.lang.IllegalArgumentException: image == null!
    记录一次报错java.lang.IllegalArgumentException:image==null!jdk版本:openjdk1.8问题复现:使用  ImageIO.read(newFileInputStream(imgPath)) 进行图片读取时,......
  • 算法学习01—Java底层的正整数与负整数
    算法学习01—Java底层的正整数与负整数本节课学到的知识编写一个方法,打印出int类型数字的二进制长什么样为什么int类型的最大值是2^32-1,最小值是-2^32......
  • JavaBean
      ......
  • 2022网鼎杯ezjava分析
    文章首发于sec-inhttps://www.sec-in.com/article/2042拿到题目代码只有一个EvilController控制器,获取base参数值然后base64解码后带入readObject,很明显的一个反序列化......