人性化的Java通用界面—基于数据库表CRUD操作的GUI模版

这个小程序的idea,是我在帮自己同学改Java课程设计的时候产生的。
首先是Java对数据库的简单操作,增删改查,然后拿到操作结果,最后把结果体现到Java的GUI组件上.。
当我在不断地做着这些烦琐重复的操作时,就在想可不可以提取出一个通用界面,在拿到对数据库操作的结果后,直接对界面进行填充。

我通过一系列的思考后,就开始行动了,不断地修改,调试后,成功了。内心得到了一点小小的成就感。

先看效果界面

在这里插入图片描述
操作主界面,右下角两个按钮分别是刷新table的数据和插入数据
在这里插入图片描述
单击主界面的id列的任一数字,进行详情界面,在该界面可修改(modify按钮)可删除(delete按钮)当前记录

在这里插入图片描述
对某项数据的模糊搜索(我这里是对name),你随意
在这里插入图片描述
添加数据界面,这个界面没有什么好讲的。


接下来才是重点
在这里插入图片描述
JTable上的列名已经变化了
在这里插入图片描述
这里是对recruit_position进行模糊搜索

在这里插入图片描述
详情界面的字段名标签变化了,文本框的数量以及文本框的Text也随之相应地变化了
在这里插入图片描述
添加数据界面亦然。


同一个界面,灵活对应着不同的数据库表的字段。这是怎么做的呢?
没错,就是用到我前两篇博客中所用到的反射技术。

待我娓娓道来

首先我定义了一个接口ShareService.java,并使用了泛型(传JavaBean)。ShareService在整个数据库中操作中起着承上启下的作用,上至操作界面,下到数据库表。
结构如下

在这里插入图片描述
在主界面DemonstrateFrame.java中用到了ShareService这个接口,并在DemonstrateFrame.java上使用了泛型(传JavaBean)。
具体使用看下图
在这里插入图片描述
其他界面的也是如出一辙
添加数据界面
在这里插入图片描述
详情页面
在这里插入图片描述

随便来一个类AddressBookService.java,实现ShareService.java这个接口
在这里插入图片描述
随便来个javaBean,AddressBook.java
在这里插入图片描述
运行主界面(主界面再调用其他界面)的操作如下
在这里插入图片描述
首先拿到一个AddressBookService(实现了ShareService接口),我这里用到了Spring框架,你随意。

  ApplicationContext applicationContext = ApplicationContextUtility.getApplicationContext();
 ShareService<AddressBook> addressBookShareService = applicationContext.getBean(AddressBookService.class);

之后创建DemonstrateFrame对象,对象中传入泛型参数AddressBook,构造方法中传入AddressBook.class

DemonstrateFrame<AddressBook> demonstrateFrame = new DemonstrateFrame<>(AddressBook.class);

其次给DemonstrateFrame设置一个ShareService接口实现类的实例化对象AddressBookService

demonstrateFrame.setShareService(addressBookShareService);

最后初始化界面

demonstrateFrame.initializeFrame();

主界面调用其他界面也是类似的三步走,
创建XXFrame对象,一定要加入泛型
给XXFrame设置实现ShareService接口的类的实例化对象
XXFrame界面初始化

在这里插入图片描述
概要的东西都讲完了
实现通用功能的点有
1.类上使用泛型,传入指定的JavaBean,以便于后面的类型转换
2.构造函数类传JavaBean.class或者传入的泛型类JavaBean的实例化对象(这个依据需求而定)
3.MyUtility.java中使用到的反射,
反射JavaBean,
为JavaBean中各个属性赋值,
取出JavaBean各个属性和属性值,
将装进了指定界面的各个文本框Text的map,变成JavaBean
在这里插入图片描述
写到这里,应该算是结束了。

有些初学者看着很懵,有些大牛看着有点意思。
在些急于交Java课程设计(基于数据库操作)的同学,看到这里,你很幸运。
直接在Csdn或者百度上搜索"人性化的Java通用界面—基于数据库表CRUD操作的GUI模版",应该能找到我上传的压缩包“zorro.rar”,或者Q我848360301,无条件发给你

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值