1.首先要下载好并且导入MySQL连接ecplise的jar包
未完成的请看
下载Mysql连接java 的所需的jar包,并导入Ecplise使用_xiaoyao_zhy的博客-CSDN博客_mysql连接java的jar包
2.创建DBHelper类,此类用于专门调用数据库连接时使用
具体代码:
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 DBHelper {
private static final String DRIVER = "com.mysql.cj.jdbc.Driver";
private static final String URL = "jdbc:mysql://localhost:3306/bookjob?serverTimezone=GMT%2B8";
private static final String USERNAME = "root";
private static final String PASSWORD = "123321abc";
static
{
try {
Class.forName(DRIVER);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("注册驱动失败");
}
}
public static Connection getConnection()
{
Connection connection=null;
try {
connection =DriverManager.getConnection(URL, USERNAME, PASSWORD);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("注册驱动失败");
}
//创建连接
return connection;
}
public static void close(Statement statement,Connection connection)
{
close(null,statement,connection);
}
public static void close(ResultSet resultSet,Statement statement,Connection connection)
{
try {
if(resultSet!=null&&!resultSet.isClosed())
{
resultSet.close();
}
if(statement!=null&&!statement.isClosed())
{
statement.close();
}
if(connection!=null&&!connection.isClosed())
{
connection.close();
}
} catch (Exception e) {
// TODO Auto-generated catch block
System.out.println("关闭数据库连接失败");
}
}
}
注意:
定义的四个常量
DRIVER为数据库连接的驱动(大部分都一样不需要改变)
URL : jdbc:mysql://localhost:3306/bookjob?serverTimezone=GMT%2B8
红色部分为数据库名称(database name)根据你创建的数据库名称决定
USERNAME为数据库账户名
PASSWORD为数据库密码(本人懒得弄难的)
3.具体使用
数据库自己创建
bean类
get 与set方法自己写
无参构造一定要有
最好重写toString()方法
还有(为了简单请把类中的属性名与数据库属性名一致,原因请自己百度,不多介绍)
public class BookDao {
private Connection connection;
private Statement statement;
private PreparedStatement preparestatement;
private ResultSet rs;
// 删除操作
public boolean delete(String adminuser1) {
boolean flag = false;
try {
connection = DBHelper.getConnection();
String sql = "delete from bookadmin where adminuser=?";
preparestatement = connection.prepareStatement(sql);
preparestatement.setString(1, adminuser1);
int i = preparestatement.executeUpdate();
// statement.executeQuery(sql);
flag = i > 0;
} catch (SQLException e) {
e.printStackTrace();
} finally {
DBHelper.close(preparestatement, connection);
}
return flag;
}
// 插入操作
public boolean insertBook(bookadmin ba) {
boolean flag = false;
try {
connection = DBHelper.getConnection();
// System.out.println(connection);
// 编写要执行的sql指令
String sql = "insert into bookadmin(adminuser,adminpass)values(?,?)";
preparestatement = connection.prepareStatement(sql);
preparestatement.setString(1, ba.getAdminuser());
preparestatement.setString(2, ba.getAdminpass());
int i = preparestatement.executeUpdate();
flag = i > 0;
// statement.executeQuery(sql);
// System.out.println(i>0?"添加成功":"添加失败");
} catch (SQLException e) {
e.printStackTrace();
} finally {
DBHelper.close(preparestatement, connection);
}
return flag;
}
// 根据条件查询一条信息
public bookadmin select(String adminuser) {
bookadmin ba = null;
try {
connection = DBHelper.getConnection();
String sql = "select adminuser,adminpass from bookadmin where adminuser=?";
preparestatement = connection.prepareStatement(sql);
preparestatement.setString(1, adminuser);
rs = preparestatement.executeQuery();
if (rs.next()) {
String adminuser1 = rs.getString("adminuser");
String adminpass = rs.getString("adminpass");
ba = new bookadmin(adminuser1, adminpass);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
DBHelper.close(rs, preparestatement, connection);
}
return ba;
}
// 查询所有信息
public List<bookadmin> listbooks() {
List<bookadmin> booklist = new ArrayList<>();
try {
connection = DBHelper.getConnection();
String sql = "select adminuser,adminpass from bookadmin";
statement = connection.createStatement();
rs = statement.executeQuery(sql);
while (rs.next()) {
String adminuser = rs.getString("adminuser");
String adminpass = rs.getString("adminpass");
bookadmin ba = new bookadmin(adminuser, adminpass);
booklist.add(ba);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
DBHelper.close(rs, statement, connection);
}
return booklist;
}
// 修改信息
public boolean update(bookadmin ba) {
boolean flag = false;
try {
connection = DBHelper.getConnection();
String sql = "update bookadmin set adminpass=? where adminuser=?";
preparestatement= connection.prepareStatement(sql);
preparestatement.setString(1, ba.getAdminpass());
preparestatement.setString(2, ba.getAdminuser());
int i = preparestatement.executeUpdate();
flag = i > 0;
} catch (SQLException e) {
e.printStackTrace();
} finally {
DBHelper.close(preparestatement, connection);
}
return flag;
}
}
MySQL里的表单数据
用select查询的数据
import java.sql.SQLException;
import Dao.BookDao;
import dto.bookadmin;
public class textselect {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
// TODO Auto-generated method stub
String adminuser = "1011";
// bookadmin ba = new textselect().select(adminuser);
bookadmin ba=new BookDao().select(adminuser);
System.out.println(ba);
}
结果