2016-06-13-课程设计日志
2016-06-13 23:35
211 查看
今天起是大二下半学期的课程设计,我们小组做的课程是——超市管理系统。环境是eclipse下的java和mysql数据库。
我们这个超市管理系统分为商品销售功能和后台管理功能。具体的模块已经和组员们分析讨论分工完成了,我负责的是仓库管理模块,功能是:商品入库,修改商品信息,商品出库(删除),修改商品信息。基本上就是增删改查四个功能。
今天是第一天,因为这次的课程设计老师是让按着给的模版来的,要层次分明。所以在看明白了模版之后,自己动手把层次先设计出来了。
DAO层是关于数据的操作,UI是界面的设计,Srv层是连接界面和数据过渡层等。DBUtil是链接mysql的java程序代码,使用jdbc。
private String dbDriver; //定义驱动
private String dbURL; //定义URL
private String userName; //定义用户名
private String password; //定义密码然后我的仓库管理的界面进行了规划,比较简单,才是第一天,之后会优化的,而且可能之后不会是这样jf显示出来,这主要看我们后台管理的主界面。
public class StorehouseMainUI extends JPanel{
GridBagLayout layout=new GridBagLayout();
GridBagConstraints gbc=new GridBagConstraints();
JMenuBar menubar1 = new JMenuBar();
JButton add=new JButton("添加");
JButton delete=new JButton("删除");
JButton change=new JButton("修改");
JButton search=new JButton("查找");
JFrame jf=new JFrame("仓库管理系统");
JPanel jp=new JPanel();
Toolkit kit=Toolkit.getDefaultToolkit();
Dimension screeSize=kit.getScreenSize();
JScrollPane js=new JScrollPane();
private static StoreHouse sh=new StoreHouse();
public StorehouseMainUI(){
add.setFont(new Font("宋体", Font.BOLD, 26));
delete.setFont(new Font("宋体", Font.BOLD, 26));
change.setFont(new Font("宋体", Font.BOLD, 26));
search.setFont(new Font("宋体", Font.BOLD, 26));
menubar1.add(add);
menubar1.add(delete);
menubar1.add(change);
menubar1.add(search);
jp.add(showBiao());
//添加
add.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jf.dispose();
addClick();
}
});
//删除
delete.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
deleteClick();
}
});
//修改
change.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jf.dispose();
changeClick();
}
});
//查询
search.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
searchClick();
}
});
jf.setJMenuBar(menubar1);
jf.add(jp);
jf.setSize(screeSize.width-600, screeSize.height-400);
jf.setVisible(true);
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private void searchClick(){
StorehouseSearchUI sea=new StorehouseSearchUI();
sea.toFront();
sea.setSize(250, 150);
sea.setLocationRelativeTo(null);
sea.setVisible(true);
}
private void addClick(){
StorehouseAddUI as=new StorehouseAddUI();
as.toFront();
as.setSize(500, 400);
as.setLocationRelativeTo(null);
as.setVisible(true);
}
private void deleteClick(){
int confirm = JOptionPane.showConfirmDialog(null, "确认删除所选?", "删除", JOptionPane.YES_NO_OPTION);
if (confirm == JOptionPane.YES_OPTION) {
StoreHouseSrv shSrv = new StoreHouseSrv();
shSrv.delete(sh.getGoods_ID());
//showBiao();
}
jp.removeAll();
jp.add(showBiao());
jp.updateUI();
}
private void changeClick(){
StorehouseChangeUI shc=new StorehouseChangeUI(sh);
shc.toFront();
shc.setSize(500, 400);
shc.setLocationRelativeTo(null);
shc.setVisible(true);
}
public JScrollPane showBiao() {
StoreHouseTable sht =new StoreHouseTable(sh);
Object[] in = { "id", "name", "price", "butdate"};
List<StoreHouse> stuList = new StoreHouseSrv().FetchAll();
js=sht.createTable(js, in, stuList);
return js;
}
public static void main(String[] args) {
StorehouseMainUI zyy = new StorehouseMainUI();
zyy.setVisible(true);
}
}其中的具体增删改查点击事件后的反应,将会继续完成。
我们这个超市管理系统分为商品销售功能和后台管理功能。具体的模块已经和组员们分析讨论分工完成了,我负责的是仓库管理模块,功能是:商品入库,修改商品信息,商品出库(删除),修改商品信息。基本上就是增删改查四个功能。
今天是第一天,因为这次的课程设计老师是让按着给的模版来的,要层次分明。所以在看明白了模版之后,自己动手把层次先设计出来了。
DAO层是关于数据的操作,UI是界面的设计,Srv层是连接界面和数据过渡层等。DBUtil是链接mysql的java程序代码,使用jdbc。
private String dbDriver; //定义驱动
private String dbURL; //定义URL
private String userName; //定义用户名
private String password; //定义密码然后我的仓库管理的界面进行了规划,比较简单,才是第一天,之后会优化的,而且可能之后不会是这样jf显示出来,这主要看我们后台管理的主界面。
public class StorehouseMainUI extends JPanel{
GridBagLayout layout=new GridBagLayout();
GridBagConstraints gbc=new GridBagConstraints();
JMenuBar menubar1 = new JMenuBar();
JButton add=new JButton("添加");
JButton delete=new JButton("删除");
JButton change=new JButton("修改");
JButton search=new JButton("查找");
JFrame jf=new JFrame("仓库管理系统");
JPanel jp=new JPanel();
Toolkit kit=Toolkit.getDefaultToolkit();
Dimension screeSize=kit.getScreenSize();
JScrollPane js=new JScrollPane();
private static StoreHouse sh=new StoreHouse();
public StorehouseMainUI(){
add.setFont(new Font("宋体", Font.BOLD, 26));
delete.setFont(new Font("宋体", Font.BOLD, 26));
change.setFont(new Font("宋体", Font.BOLD, 26));
search.setFont(new Font("宋体", Font.BOLD, 26));
menubar1.add(add);
menubar1.add(delete);
menubar1.add(change);
menubar1.add(search);
jp.add(showBiao());
//添加
add.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jf.dispose();
addClick();
}
});
//删除
delete.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
deleteClick();
}
});
//修改
change.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jf.dispose();
changeClick();
}
});
//查询
search.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
searchClick();
}
});
jf.setJMenuBar(menubar1);
jf.add(jp);
jf.setSize(screeSize.width-600, screeSize.height-400);
jf.setVisible(true);
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private void searchClick(){
StorehouseSearchUI sea=new StorehouseSearchUI();
sea.toFront();
sea.setSize(250, 150);
sea.setLocationRelativeTo(null);
sea.setVisible(true);
}
private void addClick(){
StorehouseAddUI as=new StorehouseAddUI();
as.toFront();
as.setSize(500, 400);
as.setLocationRelativeTo(null);
as.setVisible(true);
}
private void deleteClick(){
int confirm = JOptionPane.showConfirmDialog(null, "确认删除所选?", "删除", JOptionPane.YES_NO_OPTION);
if (confirm == JOptionPane.YES_OPTION) {
StoreHouseSrv shSrv = new StoreHouseSrv();
shSrv.delete(sh.getGoods_ID());
//showBiao();
}
jp.removeAll();
jp.add(showBiao());
jp.updateUI();
}
private void changeClick(){
StorehouseChangeUI shc=new StorehouseChangeUI(sh);
shc.toFront();
shc.setSize(500, 400);
shc.setLocationRelativeTo(null);
shc.setVisible(true);
}
public JScrollPane showBiao() {
StoreHouseTable sht =new StoreHouseTable(sh);
Object[] in = { "id", "name", "price", "butdate"};
List<StoreHouse> stuList = new StoreHouseSrv().FetchAll();
js=sht.createTable(js, in, stuList);
return js;
}
public static void main(String[] args) {
StorehouseMainUI zyy = new StorehouseMainUI();
zyy.setVisible(true);
}
}其中的具体增删改查点击事件后的反应,将会继续完成。
相关文章推荐
- Java通过WebSocket WebRTC实现视频通话实例
- cc150:数组:1.6
- OSG+Duilib显示osg
- OSG+Duilib显示osg
- css -- 映像 ,分页(上一页下一页)
- 程序,控制期和view的生命周期
- PHP预定义接口介绍
- 如何通过BBED找回删除数据
- python Decorator模式
- Python中Dict与Set对比总结
- 如何用MathType插入公式编号
- PHP—像使用数组一样使用对象
- 王爽《汇编语言》检测点1.1详解
- 输入控制——Buttons——翻译自developer.android.com
- 暴雪hash
- cvc-complex-type.2.4.a: Invalid content was found starting with element 'async-supported'
- tomcat session cluster
- 4.6.第十一个实验--使用数码管显示矩阵按键的键值
- LayoutInflater.from(this) 这个this是什么,加载完后的View 就是谁的。
- 图的割点、桥和双连通分支的基本概念