将Java Swing应用系统的代码分成三层架构:
- 表现层(Presentation layer):
- 也叫展示层。用于接收用户输入的数据和显示处理后用户需要的数据。一般表现为界面,用户通过界面输入查询数据和得到需要的数据。
- 包名:ui
- 该包下存放若干JPanel类型的java文件,用于展示系统需实现的各种不同功能的界面效果。如:ListPanel.java(功能列表界面)、AddPanel.java(增加操作界面)等。
- 业务逻辑层(Business Logic Layer) :
- 业务逻辑层是处于表现层和数据访问层之间,主要是从数据库中得到数据然后对数据进行逻辑处理,相当于一个“控制器”。
- 包名:eb
- 该包下存放若干普通的java类,类名应与该类要做的事情贴切。如:名为controller.java的类,它将起到控制的作用(控制界面的切换);这个类里的方法可以有toList()——切换到选择操作的界面、toAdd()——切换到增加学生记录的界面、toDelete()——切换到删除学生记录的界面…
- 数据访问层(Data access layer)
- 据访问层是直接和数据库打交道的,对数据进行“增、删、改、查”等基本的操作。一般访问的就是数据库里的数据了。
- 包名:dao(Data access object)
- 如:创建studentDAO.java文件,并创建connectDB()——连接数据库closeDB()——关闭数据库等用来与数据库打交道的一系列成员方法。
{ PS:
- MyAPP.java是application window类型的文件,用来控制整个程序的Swing组件。
- vo包表示value object,用来创建对象并对对象设置相应的属性和方法,以此来方便以后数据的使用。如:创建studentVO.java,里面有stuid、stuname等属性,以及成员方法。
- 程序运行时的流程:
- 先读取MyAPP.java文件里的代码,由于这是一个操作界面,所以选择相应的操作即可。
- 然后程序转到eb包中的controller.java文件,进行页面的切换。
- 页面切换后,转到ui包,看到操作界面,然后按照界面上的提示进行操作即可。
- 最后,访问dao层,使得增/删/改/查后的数据进入到数据库或实现对数据库的数据的访问。
}
参考 知乎 @刘耀