使用Java和mysql写一个管理系统
时间: 2024-03-24 13:41:18 浏览: 63
好的,这是一个比较大的需求,需要分多个步骤来完成。下面是一个简单的管理系统的框架和思路,你可以根据实际情况进行修改和调整。
1. 设计数据库
首先需要设计数据库,包括表的结构和关系。可以使用MySQL Workbench等工具进行设计,也可以手动编写SQL语句进行创建和修改。以下是一个简单的例子:
用户表(user):
| 字段名 | 类型 | 主键 | 外键 | 描述 |
|--------|------|------|------|------|
| id | int | 是 | | 用户ID |
| username | varchar(50) | | | 用户名 |
| password | varchar(50) | | | 密码 |
| email | varchar(50) | | | 邮箱 |
| phone | varchar(20) | | | 手机号 |
| create_time | datetime | | | 创建时间 |
| update_time | datetime | | | 更新时间 |
文章表(article):
| 字段名 | 类型 | 主键 | 外键 | 描述 |
|--------|------|------|------|------|
| id | int | 是 | | 文章ID |
| title | varchar(100) | | | 标题 |
| content | text | | | 内容 |
| author_id | int | | 是 | 作者ID |
| create_time | datetime | | | 创建时间 |
| update_time | datetime | | | 更新时间 |
2. 编写Java代码
在Java中使用JDBC连接MySQL数据库,并实现对用户和文章数据的增删改查操作。以下是一个简单的例子:
```java
import java.sql.*;
public class MySQLManager {
private static final String URL = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC";
private static final String USERNAME = "root";
private static final String PASSWORD = "123456";
public static void main(String[] args) throws SQLException {
Connection conn = null;
try {
// 加载数据库驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 建立数据库连接
conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
// 执行SQL语句
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM user");
// 处理查询结果
while (rs.next()) {
int id = rs.getInt("id");
String username = rs.getString("username");
String password = rs.getString("password");
String email = rs.getString("email");
String phone = rs.getString("phone");
Date create_time = rs.getDate("create_time");
Date update_time = rs.getDate("update_time");
System.out.println(id + "\t" + username + "\t" + password + "\t" + email + "\t" + phone + "\t" + create_time + "\t" + update_time);
}
// 关闭资源
rs.close();
stmt.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭数据库连接
if (conn != null) {
conn.close();
}
}
}
}
```
3. 实现管理功能
根据需求实现管理功能,包括用户和文章的增删改查操作。以下是一个简单的例子:
```java
import java.sql.*;
public class MySQLManager {
private static final String URL = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC";
private static final String USERNAME = "root";
private static final String PASSWORD = "123456";
public static void main(String[] args) throws SQLException {
Connection conn = null;
try {
// 加载数据库驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 建立数据库连接
conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
// 查询用户列表
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM user");
// 处理查询结果
while (rs.next()) {
int id = rs.getInt("id");
String username = rs.getString("username");
String password = rs.getString("password");
String email = rs.getString("email");
String phone = rs.getString("phone");
Date create_time = rs.getDate("create_time");
Date update_time = rs.getDate("update_time");
System.out.println(id + "\t" + username + "\t" + password + "\t" + email + "\t" + phone + "\t" + create_time + "\t" + update_time);
}
// 关闭资源
rs.close();
stmt.close();
// 添加用户
PreparedStatement pstmt = conn.prepareStatement("INSERT INTO user (username, password, email, phone) VALUES (?, ?, ?, ?)");
pstmt.setString(1, "admin");
pstmt.setString(2, "admin123");
pstmt.setString(3, "admin@example.com");
pstmt.setString(4, "12345678901");
pstmt.executeUpdate();
// 更新用户
pstmt = conn.prepareStatement("UPDATE user SET email = ?, phone = ? WHERE id = ?");
pstmt.setString(1, "admin@example.org");
pstmt.setString(2, "12345678900");
pstmt.setInt(3, 1);
pstmt.executeUpdate();
// 删除用户
pstmt = conn.prepareStatement("DELETE FROM user WHERE id = ?");
pstmt.setInt(1, 1);
pstmt.executeUpdate();
// 查询文章列表
stmt = conn.createStatement();
rs = stmt.executeQuery("SELECT * FROM article");
// 处理查询结果
while (rs.next()) {
int id = rs.getInt("id");
String title = rs.getString("title");
String content = rs.getString("content");
int author_id = rs.getInt("author_id");
Date create_time = rs.getDate("create_time");
Date update_time = rs.getDate("update_time");
System.out.println(id + "\t" + title + "\t" + content + "\t" + author_id + "\t" + create_time + "\t" + update_time);
}
// 关闭资源
rs.close();
stmt.close();
// 添加文章
pstmt = conn.prepareStatement("INSERT INTO article (title, content, author_id) VALUES (?, ?, ?)");
pstmt.setString(1, "Java入门教程");
pstmt.setString(2, "Java是一种面向对象的编程语言,具有跨平台、安全、简单易学等优点。");
pstmt.setInt(3, 2);
pstmt.executeUpdate();
// 更新文章
pstmt = conn.prepareStatement("UPDATE article SET content = ? WHERE id = ?");
pstmt.setString(1, "Java是一种面向对象的编程语言,具有跨平台、安全、简单易学等优点。Java是由Sun Microsystems公司于1995年5月推出的。");
pstmt.setInt(2, 1);
pstmt.executeUpdate();
// 删除文章
pstmt = conn.prepareStatement("DELETE FROM article WHERE id = ?");
pstmt.setInt(1, 1);
pstmt.executeUpdate();
// 关闭资源
pstmt.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭数据库连接
if (conn != null) {
conn.close();
}
}
}
}
```
以上是一个简单的Java和MySQL结合的管理系统的实现思路,你可以根据实际情况进行修改和调整。
阅读全文