MySQL数据库相关操作一 ------JDBC连接数据库

在开发中为了操作方便我们会使用代码的方式,而不是使用命令行。在使用JDBC操作数据库的时候我们首先要导入MySQL的jar包。
下面以登陆为例来简单介绍一下JDBC的使用方法:
package com.auicyh.test;

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

import org.junit.Test;
/**
 * 
 * @author yindj
 * @date   2018年4月29号 21:30:55
 *
 */
public class TestLogin {
	/*定义MySQL的数据库驱动程序*/
	public static final String DBDRIVER = "com.mysql.jdbc.Driver";
	/*定义MySQL数据库的链接地址*/
	public static final String DBURL = "jdbc:mysql://localhost:3306/aui_moto";
	/*定义MySQL数据库的用户名*/
	public static final String DBUSER = "root";
	/*定义MySQL数据库的密码*/
	public static final String DBPASS = "123456";
	@Test
	public void testLogin(){
		try {
			login("lisi","111");
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	public void login(String username,String password) throws ClassNotFoundException, SQLException{
		//1.注册驱动
		Class.forName(DBDRIVER);
		//2.获取连接
		Connection conn = DriverManager.getConnection(DBURL, DBUSER, DBPASS);
		//3.创建执行sql语句的对象
		Statement stmt = conn.createStatement();
		//4.书写sql语句
		String sql = "select * from moto where " +"uname = '"+ username +"' and upassword = '"+ password+"'";
		//5.执行sql语句
		ResultSet rs = stmt.executeQuery(sql);
		//6.查询结果处理
		if(rs.next()){
			System.out.println("恭喜你"+username+",登陆成功!");
			System.out.println(sql);
		}else{
			System.out.println("账号或密码错误!");
		}
		//7.关闭流
		if(rs != null) rs.close();
		if(stmt != null) stmt.close();
		if(conn != null) conn.close();
	}
	}


上面的代码会存在SQL注入的问题,一般我们使用Statement的子接口PreparedStatement来代替实现SQL语句的预加载。具体代码如下(只修改login方法)
public void loginto(String username,String password) throws ClassNotFoundException, SQLException{
		//1.注册驱动
		Class.forName(DBDRIVER);
		//2.获取连接
		Connection conn = DriverManager.getConnection(DBURL, DBUSER, DBPASS);
		//3.书写sql语句
		String sql = "select * from moto where uname =? and upassword =?";
		//4.创建预处理对象
		PreparedStatement pstmt = conn.prepareStatement(sql);
		//5.设置参数
		pstmt.setString(1, username);//设置第一个“?”的内容
		pstmt.setString(2, password);//设置第二个“?”的内容
		//6.执行sql语句
		ResultSet rs = pstmt.executeQuery();
		//7.查询结果处理
		if(rs.next()){
			System.out.println("恭喜你"+username+",登陆成功!");
			System.out.println(sql);
		}else{
			System.out.println("账号或密码错误!");
		}
		//7.关闭流
		if(rs != null) rs.close();
		if(pstmt != null) pstmt.close();
		if(conn != null) conn.close();
	}

下篇文章我会说说数据库连接池相关,敬请期待!!!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Java连接MySQL数据库,需要下载并安装MySQL Connector/J驱动程序。以下是安装步骤: 1. 访问MySQL官方网站,下载MySQL Connector/J驱动程序。当前最新版本为8.0.20,下载地址为:https://dev.mysql.com/downloads/connector/j/ 2. 下载后,将mysql-connector-java-8.0.20.jar文件复制到项目的classpath路径下。 3. 在Java代码中添加连接MySQL数据库的代码,示例代码如下: ``` import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class MySQLConnect { public static void main(String[] args) { Connection conn = null; try { // 加载MySQL驱动程序 Class.forName("com.mysql.cj.jdbc.Driver"); // 获取数据库连接 String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String password = "root"; conn = DriverManager.getConnection(url, user, password); System.out.println("数据库连接成功!"); } catch (SQLException e) { System.out.println("数据库连接失败:" + e.getMessage()); } catch (ClassNotFoundException e) { System.out.println("找不到MySQL驱动程序:" + e.getMessage()); } finally { try { if (conn != null) { conn.close(); } } catch (SQLException e) { System.out.println("关闭数据库连接失败:" + e.getMessage()); } } } } ``` 以上代码演示了如何连接本地MySQL数据库,如果需要连接远程MySQL数据库,只需要将url中的localhost改为远程MySQL服务器的IP地址即可。同时,需要确保远程MySQL服务器已经允许远程连接。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值