JDBC中 mysql数据库的连接工具类 Java登录 及增删改查 整理 附带:Navicat Premium 11.0.12中文破解版.zip(下载)mysql数据库工具

先写一个工具类,有实现MySQL数据库连接的方法,和关闭数据库连接、关闭ResultSet  结果集、关闭PreparedStatement 的方法。代码如下:

package com.swift;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; public class DBUtil {
//连接MySQL数据库工具
public static Connection getConn() {
Connection conn=null;
try {
Class.forName("com.mysql.jdbc.Driver");
try {
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/sw_database?user=root&password=root");
} catch (SQLException e) {
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return conn;
}
//关闭数据库连接、sql连接、结果集
public static void closeAll(Connection conn,PreparedStatement ps,ResultSet rs) {
if(conn!=null)
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
if(ps!=null) {
try {
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(rs!=null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}

接下来实现登录,已有帐号在数据库中检验存在与否。代码如下:

package com.swift;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; public class JDBC_Login { public static void main(String[] args) {
User user=new User("swift","abc123");
if(login(user)) {
System.out.println("成功");
}else {
System.out.println("失败");
} } public static boolean login(User user) { Connection conn=DBUtil.getConn();
PreparedStatement ps=null;
ResultSet rs=null;
try {
ps=conn.prepareStatement("select * from sw_user where username=? and password=?");
ps.setString(1, user.getUsername());
ps.setString(2, user.getPassword());
rs=ps.executeQuery();
if(rs.next()) {
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
DBUtil.closeAll(conn, ps, rs);
return false;
}
}

实现在数据库增加数据,数据库表sw_user中插入新数据,代码如下:

package com.swift;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException; public class JDBC_Add { public static void main(String[] args) {
User user=new User("duoduo","abc123");
if(add(user)) {
System.out.println("帐号注册成功");
}else {
System.out.println("注册失败");
}
} private static boolean add(User user) { Connection conn=DBUtil.getConn();
PreparedStatement ps=null;
try {
ps=conn.prepareStatement("insert into sw_user(username,password) values(?,?)");
ps.setString(1, user.getUsername());
ps.setString(2, user.getPassword());
int count=ps.executeUpdate();
if(count==1) {
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
DBUtil.closeAll(conn, ps, null);
return false;
}
}

实现在数据库中删除数据,数据库表sw_user中删除已存在的数据,代码如下:

package com.swift;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException; public class JDBC_Delete { public static void main(String[] args) {
User user=new User("duoduo","abc123");
if(JDBC_Login.login(user)) {
if(delete(user)) {
System.out.println("帐号注销成功");
}else {
System.out.println("注销失败");
}
}else {
System.out.println("账户不存在");
}
} private static boolean delete(User user) { Connection conn=DBUtil.getConn();
PreparedStatement ps=null;
try {
ps=conn.prepareStatement("delete from sw_user where username=? and password=?");
ps.setString(1, user.getUsername());
ps.setString(2, user.getPassword());
int count=ps.executeUpdate();
if(count==1) {
return true;
}
} catch (SQLException e) {
e.printStackTrace();
}
DBUtil.closeAll(conn, ps, null);
return false;
}
}

实现在数据库中修改数据,数据库表sw_user中更新已存在的数据,代码如下:

package com.swift;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException; public class JDBC_Update { public static void main(String[] args) {
User user=new User("swift","abc123");
String setPassword="abc12345";
if(JDBC_Login.login(user)) {
if(update(user,setPassword)) {
System.out.println("密码修改成功");
}else {
System.out.println("修改失败");
}
}else {
System.out.println("账户不存在");
} } private static boolean update(User user,String setPassword) { Connection conn=DBUtil.getConn();
PreparedStatement ps=null;
try {
ps=conn.prepareStatement("update sw_user set password=? where username=?");
ps.setString(1, setPassword);
ps.setString(2, user.getUsername());
int count=ps.executeUpdate();
if(count==1) {
return true;
}
} catch (SQLException e) {
e.printStackTrace();
}
DBUtil.closeAll(conn, ps, null);
return false;
}
}

工具类的使用可以提高代码的复用性,提高代码阅读性便于修改。

附带:Navicat Premium 11.0.12中文破解版.zip(下载)mysql数据库工具

链接: https://pan.baidu.com/s/1jId5hHW 密码: aprj

sw_database数据库中表sw_user字段的设置如图:

JDBC中 mysql数据库的连接工具类 Java登录 及增删改查 整理 附带:Navicat Premium 11.0.12中文破解版.zip(下载)mysql数据库工具

上一篇:DG配置实验


下一篇:08day2