AI智能
改变未来

IDEA与MySQL的连接

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。本篇文章的内容为在IDEA中操作数据库的基本方法。

在数据库中创建一个比较简单的测试数据库和表格,测试数据库的设置如上图所示,其中ID为主键。
而这个程序的关键就是mysql-connector的导入了,这里使用最简单的导入方法,直接把mysql-connector的jar包放到程序文档的lib文件夹中。

如果没有lib文件夹的话可以新建进行存放的仓库。下一步的操作是右键点击这个jar包,选择“Add to library\”,这个包才能真正起到作用。

import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;public class jdbc_test {public static void main(String[] args) throws ClassNotFoundException, SQLException {Class.forName(\"com.mysql.jdbc.Driver\");Connection conn = DriverManager.getConnection(\"jdbc:mysql://localhost:3306/data\", \"root\", \"root\");String sql = \"update db set user=\'tttt\' where id=1 \";Statement stmt = conn.createStatement();int count = stmt.executeUpdate(sql);System.out.println(count);stmt.close();conn.close();}}

新建类的代码内容,直接更改ID为1的user内容。


修改成功。

但是这样的修改局限非常大只能作为入门的初学者就行尝试。下面将属性存进一个属性文档中来进行优化。
1、新建一个jdbc属性文件,在new选项中可以找到这个对应的操作;

这些是基本的属性,和前面的属性一致。
2、新建一个JDBCUtil类,用以编写响应连接的操作;

import java.io.FileReader;import java.io.IOException;import java.sql.*;import java.util.Properties;import java.net.URL;public class JDBCUtils {private static String url;private static String user;private static String password;private static String driver;//读取配置文件,只读一次就可以获取全部信息static {try{//创建Properties集合类Properties pro=new Properties();ClassLoader classloader=JDBCUtils.class.getClassLoader();URL res=classloader.getResource(\"jdbc.properties\");String path=res.getPath();System.out.println(path);//加载文件pro.load(new FileReader(path));//获取数值url=pro.getProperty(\"url\");user=pro.getProperty(\"user\");password=pro.getProperty(\"password\");driver=pro.getProperty(\"driver\");Class.forName(driver);}catch (IOException e){e.printStackTrace();}catch (ClassNotFoundException e){e.printStackTrace();}}//获取连接public  static Connection getConnection() throws SQLException {return DriverManager.getConnection(url,user,password);}public static void close(ResultSet rs, Statement stmt,Connection conn){if (rs!=null){try {rs.close();}catch (SQLException e){e.printStackTrace();}}if (stmt!=null){try {rs.close();}catch (SQLException e){e.printStackTrace();}}if (conn!=null){try {rs.close();}catch (SQLException e){e.printStackTrace();}}}}

其中包括获取资源和释放资源。
3、获取数据以及验证操作;

import sun.awt.AWTAccessor;import java.sql.*;import java.util.Scanner;public class jdbc_test {public static void main(String[] args) throws ClassNotFoundException, SQLException {/*Class.forName(\"com.mysql.jdbc.Driver\");Connection conn = DriverManager.getConnection(\"jdbc:mysql://localhost:3306/data\", \"root\", \"root\");String sql = \"update db set user=\'tttt\' where id=1 \";Statement stmt = conn.createStatement();int count = stmt.executeUpdate(sql);System.out.println(count);System.out.println(\"Done!完成\");stmt.close();conn.close();*/Scanner sc=new Scanner(System.in);System.out.println(\"请输入用户名:\");String username=sc.nextLine();System.out.println(\"请输入密码:\");String password=sc.nextLine();boolean loginFlag=new jdbc_test().login(username,password);if (loginFlag){System.out.println(\"登陆成功!\");}else {System.out.println(\"登陆失败!\");}}//登陆方法public boolean login(String username,String password){if (username==null||password==null){return false;}Connection conn=null;Statement stmt=null;ResultSet rs=null;try {conn=JDBCUtils.getConnection();String sql=\"select * from db where user=\'\"+username+\"\'and password=\'\"+password+\"\'\";stmt=conn.createStatement();rs=stmt.executeQuery(sql);return rs.next();}catch (SQLException e){e.printStackTrace();}finally {JDBCUtils.close(rs,stmt,conn);}//登陆失败return false;}}

直接在原来的类中改写操作。
验证:

优化的结果已经成功,将获取资源连接的操作进行了封装。

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » IDEA与MySQL的连接