Java学习之连接数据库

这篇博客详细介绍了如何在Java中连接MySQL和SQLserver数据库,包括库的下载、导入方式以及基本的数据库连接代码示例。提供了连接数据库的jar文件链接,并分别展示了将jar添加到系统和项目中的步骤。同时,给出了Java连接数据库的代码模板,包括数据库驱动加载、连接、断开及执行查询和更新操作的方法。
摘要由CSDN通过智能技术生成

前言

在Java编程中,我们经常要用到数据库,常用的有MySQL,SQL server,因为代码非常的固定,专门写一篇博客整理一下。

本博客原创,转载请注明!!!
本文链接
个人博客:https://ronglin.fun/?p=146
PDF链接:见博客网站
CSDN: https://blog.csdn.net/RongLin02/article/details/118735611

准备工作

下载库

首先需要添加库文件
链接:https://pan.baidu.com/s/12cvWFUqc2YDDgl6d7X-mGg
提取码:Lin2
这边里边有两个jar文件
一个是用来连接MySQL的mysql-connector-java-5.1.8-bin.jar
还有一个是用来连接SQL server的mssql-jdbc-6.2.2.jre8.jar

导入库

导入库的方式有两个

添加到系统

第一个方法是将jar文件添加到系统安装的Java环境中,这样的好处是,以后所有用到这个Java环境的项目,都不需要再次导入
下载上边某度盘分享的文件,以连接MySQL为例:
先找到安装的Java路径,在桌面,右键我的电脑 – 属性 --找到高级系统设置 – 然后找到环境变量
在下方 系统变量中找到我们当时安装Java的路径.
我的就是 java_HomeE:\Java\jdk1.8.0_261
在这里插入图片描述
然后我们将下载好的jar文件放入Java路径下\jre\lib\ext文件夹中。
以我这系统为例,就是E:\Java\jdk1.8.0_261\jre\lib\ext这个目录
然后就导入好了

添加到项目

第二个方法是将jar文件添加到单独的项目中,需要注意的是,这个jar文件仅仅对于当前项目有效,其他项目没法用
以eclipse为例,点击要添加jar文件的项目,右键 – Build PathConfigure Build Path
在这里插入图片描述
在弹出的界面点击Add External JARs...,然后选择下载好的jar文件就行了
在这里插入图片描述

代码

代码相对而言就是比较套路了
需要自己修改的就是DateBaseNameuserMySqlpasswordMySql
下边这个代码是我按照api写的一个demo,如有错误请联系我
此代码仅用于学习,如有侵权请联系我

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

public class DataBase {
	
	Connection connection = null;
	ResultSet rs = null;

	//mysql数据库url
	private static String DateBaseName=null;
	private static String userMySql=null;
	private static String passwordMySql=null;
	private static String urlMySql = null;
	
	public DataBase() {
		
		try {
			//mysql数据库设置驱动程序类型
			//JDBC连接Mysql6要改成 com.mysql.cj.jdbc.Driver
			Class.forName("com.mysql.jdbc.Driver"); 
			System.out.println("mysql数据库驱动加载成功");
			
			//sqlserver数据库设置驱动程序类型
	    //Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
	    //System.out.println("sqlserver数据库驱动加载成功");

		}
		catch(java.lang.ClassNotFoundException e) {
			e.printStackTrace();
		}
	}
	
	public DataBase(String DataBaseName,String userName,String password)
	{
		this();
		DataBase.DateBaseName=DataBaseName;
		DataBase.userMySql=userName;
		DataBase.passwordMySql=password;
		
		urlMySql = "jdbc:mysql://localhost:3306/"+DateBaseName+"?user="
				+userMySql+"&password="+passwordMySql + "&useUnicode=true&characterEncoding=gbk";
	}
	
	public boolean connect()
	{
		if(urlMySql==null)
		{
			return false;
		}
		
		try{
			//mysql数据库
			connection = DriverManager.getConnection(urlMySql);  
			
			//sqlserver数据库
			//connection = DriverManager.getConnection(urlSqlServer);
			
			if(connection!=null){
	            System.out.println("数据库连接成功");
	            return true; 
	        }
			return false;
		}
		catch(Exception e){
			
			//e.printStackTrace();
			System.out.println("数据库连接失败");
			return false;
		}
	}
	
	public void disconnect(){
		try{
			if(connection != null){
				connection.close();
				connection = null;
			}
		}
		catch(Exception e){
			e.printStackTrace();
		}
	}
	
	public ResultSet executeQuery(String sql) {
		try {
			System.out.println("executeQuery(SQL) = " + sql);
			
			PreparedStatement pstm = connection.prepareStatement(sql);
			// 执行查询
			rs = pstm.executeQuery();
		} 
		catch(SQLException ex) { 
			ex.printStackTrace();
		}
		return rs;
	}
	
	//插入
		//executeUpdate 的返回值是一个整数,指示受影响的行数(即更新计数)。
		//executeUpdate用于执行 INSERT、UPDATE 或 DELETE 语句
		//以及 SQL DDL(数据定义语言)语句,例如 CREATE TABLE 和 DROP TABLE。
		
//		执行增、删、改语句的方法
	public int executeUpdate(String sql) {
		int count = 0;
		connect();
		try {
			Statement stmt = connection.createStatement();
			count = stmt.executeUpdate(sql);
			} 
		catch(SQLException ex) { 
			System.err.println(ex.getMessage());
			return -1;
		}
		disconnect();
		return count;
	}	
}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值