您的位置:首页 > 编程语言 > Java开发

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

2018-01-01 00:37 926 查看
先写一个工具类,有实现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 wher
c446
e 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字段的设置如图:



 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: