三层结构设计模式
① 表现层功能:展示数据、人机交互、收集参数调用逻辑层。
② 逻辑层功能:进行数据的逻辑校验、进行逻辑判断、实现业务功能、处理相关功能、处理后续流程、组织数据返回给表现层。
③ 数据层功能:实现数据持久化、实现对象和持久化数据的双向映射。
认识MVC设计模式:
通过设计一个地址管理app来认识MVC模式,如有BUG,请多多包涵。
② 逻辑层功能:进行数据的逻辑校验、进行逻辑判断、实现业务功能、处理相关功能、处理后续流程、组织数据返回给表现层。
③ 数据层功能:实现数据持久化、实现对象和持久化数据的双向映射。
认识MVC设计模式:
通过设计一个地址管理app来认识MVC模式,如有BUG,请多多包涵。
这是项目的结构:
软件入口:AddressApp类
package cn.hncu.addr;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.Font;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import cn.hncu.addr.ui.ListPanl;
public class AddressApp {
private JFrame frmAddressapp;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
AddressApp window = new AddressApp();
window.frmAddressapp.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the application.
*/
public AddressApp() {
initialize();
JMenuBar menuBar = new JMenuBar();
frmAddressapp.setJMenuBar(menuBar);
JMenu mnEdit = new JMenu("Edit");
menuBar.add(mnEdit);
JMenu mnExit = new JMenu("Exit");
menuBar.add(mnExit);
frmAddressapp.setContentPane(new ListPanl(frmAddressapp));
frmAddressapp.validate();
}
/**
* Initialize the contents of the frame.
*/
private void initialize() {
frmAddressapp = new JFrame();
frmAddressapp.setMinimumSize(new Dimension(800, 600));
frmAddressapp.setTitle("AddressApp");
frmAddressapp.getContentPane().setFont(new Font("Microsoft YaHei UI", Font.BOLD, 16));
frmAddressapp.getContentPane().setBackground(new Color(153, 255, 255));
frmAddressapp.getContentPane().setLayout(null);
JMenuBar menuBar = new JMenuBar();
menuBar.setBounds(0, 0, 664, 32);
frmAddressapp.getContentPane().add(menuBar);
frmAddressapp.setBounds(100, 100, 680, 469);
frmAddressapp.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}