目录
前言
一、环境搭建
二、功能实现
1.商品信息类的创建
2.商品信息的查询
3.商品信息的添加
4.商品信息的修改
5.商品信息的删除
三、主类的调用
1.加载配置文件并获取数据库连接
2.界面的搭建
3.功能的选择
总结
JAVA实现的MySQL数据库信息管理系统
包含数据库的增删改查功能
- 在MySQL数据库中创建一个商品信息表(tb_brand)
在idea创建一个工程文件,在工程文件下创建一个model模块,在model模块下载创建三个package包分别用来存放(Test)测试功能包、(function)功能包、(pojo)商品信息对象类,再在三个包中创建如下图所示文件
在src文件夹下添加数据库连接池的配置文件druid.properties
driverClassName=com.mysql.jdbc.Driver url=jdbc:mysql:///db1?useSSL=false&useServerPrepStmts=true #改为自己设置的用户名和密码 username=root password=root # 初始化连接数量 initialSize=5 # 最大连接数量 maxActive=10 # 最大等待时间 maxWait=3000
为了防止属性不能被外类随意访问,因此采用private对学生类中的属性进行修饰并且进行创建set、get方法以便于调用属性,再创建打印数据方法,方便数据打印,代码如下:
//品牌信息
public class Brand {
// id 主键
private Integer id;
// 品牌名称
private String brandName;
// 企业名称
private String companyName;
// 排序字段
private Integer ordered;
// 描述信息
private String description;
// 状态:0:禁用 1:启用
private Integer status;
public Brand() {
}
public Brand(Integer id, String brandName, String companyName, Integer ordered, String description, Integer status) {
this.id = id;
this.brandName = brandName;
this.companyName = companyName;
this.ordered = ordered;
this.description = description;
this.status = status;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getBrandName() {
return brandName;
}
public void setBrandName(String brandName) {
this.brandName = brandName;
}
public String getCompanyName() {
return companyName;
}
public void setCompanyName(String companyName) {
this.companyName = companyName;
}
public Integer getOrdered() {
return ordered;
}
public void setOrdered(Integer ordered) {
this.ordered = ordered;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
@Override
public String toString() {
return "Brand{" +
"id=" + id +
", brandName='" + brandName + '\'' +
", companyName='" + companyName + '\'' +
", ordered=" + ordered +
", description='" + description + '\'' +
", status=" + status +
'}';
}
}
在BrandView查询类中,定义sql语句、获取pstmt对象、执行sql,再创建Arraylist列表,while循环获取数据库的数据并封装对象添加至集合中,最后打印集合
public static void Commodity_View(Connection conn) throws SQLException {
//定义sql语句
String sql = "SELECT ID, BRAND_NAME, COMPANY_NAME, ORDERED, DESCRIPTION, STATUS FROM tb_brand";
//获取pStmt对象
PreparedStatement pStmt = conn.prepareStatement(sql);
//执行sql
ResultSet rs = pStmt.executeQuery();
//处理结果
Brand brand = null;
List brands = new ArrayList<>();
while (rs.next()) {
//获取数据
int id = rs.getInt("id");
String brandName = rs.getString("brand_name");
String companyName = rs.getString("company_name");
int ordered = rs.getInt("ordered");
String description = rs.getString("description");
int status = rs.getInt("status");
//封装对象
brand = new Brand();
brand.setId(id);
brand.setBrandName(brandName);
brand.setCompanyName(companyName);
brand.setOrdered(ordered);
brand.setDescription(description);
brand.setStatus(status);
//装载集合
brands.add(brand);
}
System.out.println(brands);
//释放资源
rs.close();
pStmt.close();
}
在BrandAdd添加类中,定义商品信息、定义sql语句、获取pstmt对象、再设置商品信息的对象,最后执行sql并处理返回结果
public static void Commodity_Add(Connection conn) throws SQLException {
//商品数据
String brandName = "香飘飘";
String companyName = "香飘飘";
int ordered = 1;
String description = "绕地球一圈";
int status = 1;
//定义sql
String sql = "insert into tb_brand(brand_name, company_name, ordered, description, status) VALUES (?,?,?,?,?)";
//获取pStmt对象
PreparedStatement pStmt = conn.prepareStatement(sql);
//设置对象
pStmt.setString(1, brandName);
pStmt.setString(2, companyName);
pStmt.setInt(3, ordered);
pStmt.setString(4, description);
pStmt.setInt(5, status);
//执行sql
int count = pStmt.executeUpdate();
//处理结果
System.out.println(count > 0);
pStmt.close();
}
在BrandModify修改类中,定义商品信息、定义sql语句、获取pstmt对象、再设置商品信息的对象,最后执行sql并处理返回结果
public static void Commodity_Modify(Connection conn) throws SQLException {
//商品数据
String brandName = "香飘飘";
String companyName = "香飘飘";
int ordered = 1000;
String description = "绕地球三圈";
int status = 1;
int id = 4;
//定义sql
String sql = "update tb_brand\n" +
"set brand_name = ?,\n" +
"company_name = ?,\n" +
"ordered = ?,\n" +
"description = ?,\n" +
"status = ?\n" +
"where id = ?";
//获取pStmt对象
PreparedStatement pStmt = conn.prepareStatement(sql);
//设置对象
pStmt.setString(1, brandName);
pStmt.setString(2, companyName);
pStmt.setInt(3, ordered);
pStmt.setString(4, description);
pStmt.setInt(5, status);
pStmt.setInt(6, id);
//执行sql
int count = pStmt.executeUpdate();
//处理结果
System.out.println(count > 0);
pStmt.close();
}
在BrandDelete删除类中,选择商品编号、定义sql语句、获取pstmt对象、再设置商品信息的对象,最后执行sql并处理返回结果
public static void Commodity_delete(Connection conn) throws SQLException {
//商品编号
int id = 4;
//定义sql
String sql = "delete from tb_brand where id = ?";
//获取pStmt对象
PreparedStatement pStmt = conn.prepareStatement(sql);
//设置对象
pStmt.setInt(1, id);
//执行sql
int count = pStmt.executeUpdate();
//处理结果
System.out.println(count > 0);
pStmt.close();
conn.close();
}
在主程序中加载durid.properties配置文件并获取数据库连接
//加载配置文件
Properties prop = new Properties();
prop.load(new FileInputStream("database/src/druid.properties"));
//获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
//获取数据库连接
Connection conn = dataSource.getConnection();
使用使用System.out.println()方法输出界面
System.out.println("功能选择:");
System.out.println("查询商品信息:1");
System.out.println("添加商品信息:2");
System.out.println("修改商品信息:3");
System.out.println("删除商品信息:4");
System.out.println("退出:0");
先使用Scanner()方法在控制台接收用户键盘录入的数据,再将输入的数据,通过switch(int flag) case :方法进行判断选择对应的系统或对应的功能,具体实现方法如下图:
//功能选择
int flag = 0;
Scanner sc = new Scanner(System.in);
while (true) {
flag = sc.nextInt();
switch (flag) {
case 1://数据库查看商品信息
Commodity_View(conn);
break;
case 2://数据库添加商品信息
Commodity_Add(conn);
break;
case 3://数据库修改信息
Commodity_Modify(conn);
break;
case 4://数据库删除信息
Commodity_delete(conn);
break;
case 0://退出
System.out.println("已退出");
conn.close();
System.exit(0);
break;
}
}
以上是该系统的设计思路,如有问题或者建议可以留言,感谢阅读。
需要所有源码的或需要私人定制的可以私聊