目录html
一:项目介绍mysql
二:开发步骤:面试
1.表结构设计sql
2.原型设计数据库
4.功能开发学习
三:功能浏览设计
步骤 1 : 消费一览htm
项目学习展现地址:https://how2j.cn/k/hutubill/hutubill-tutorials/710.html
学习了这么多J2SE基础和中级的知识点,接下来就须要一个综合性的项目把这些的知识点都融会贯通。
本项目是基于Swing和JDBC开发的图形界面桌面应用,涵盖了J2SE的绝大部分基础知识,经过这个项目能运用和锻炼几乎大部分的J2SE知识和技能。
涉及到以下内容:
基础内容:
面向对象 字符串数字 日期
中级内容:
异常 ,集合,JDBC, 反射机制,I/O,Swing, 利用TableModel更新数据, 图形界面的皮肤
高级内容:
图表chart动态生成,数据库的备份与恢复,自定义圆形进度条
软件设计思想:
单例模式,面板类与监听器类松耦合,Entity层设计,DAO层设计,Service层设计
业务常见处理手法:
CRUD操做,配置信息,配置信息初始化,报表生成,一对多关系,多对一关系
经过本项目,积累宝贵的项目经验,在面试的时候,多一项谈资,多一层砝码,多一些薪水
在开始整个软件开发以前,必定是事先进行表结构设计。
把表有哪些字段搞清楚,表与表之间的关系理顺。
同时还要校验这样的表结构,是否可以支撑功能上的须要。
好比在消费一览中须要的各类数据,应该以什么样的方式去设计这些表,才可以支撑页面上的数据显示。
在专门的表结构设计章节里,会把每张表列出来,每一个字段的意义,类型,限制。 表与表之间的关系,一对多关系,多对一关系如何肯定与设计。主键约束,外键约束等等信息。
在开始正式的功能开发以前,要进行原型设计。
什么是原型设计呢? 简单说,就是先把界面作出来。 界面上的数据,都是假数据,并非从数据库中读取的真实数据。
为何要这么作呢? 有了界面,才直观,你才会更有感受,也才能更清楚各个功能之间怎么实现。 更重要的是,有了界面,才能更有效的和客户沟通,哪些功能须要修改,哪些功能能够删减。
本项目学习中,原型分两个部分来说解,一个是原型-基础,一个是原型-界面类
在原型-基础章节,会从最粗简的方式开始,而后演示如何从粗陋的直接new JFrame逐步演化到面板分离,监听器分离,模型分离,而且讲解为何要这样作和这样作带来的好处。,并重构出各类工具类,供后续界面设计重用。
在原型-界面类章节,使用原型-基础中的设计思想,运用其中的工具类,把本项目设计到的各类界面原型,一一开发出来。
在开始功能开发以前,首先要设计实体类与DAO。相关的数据库操做,都经由DAO来完成。
接下来才开始功能开发。
首先是肯定多层结构,基于事件驱动,规划DAO层,Service层。 而且在开发过程当中,演示重构并解释重构的理由和好处。
接着是开发顺序。 各个模块之间是互相依赖的,有的须要先行开发,有的模块必须创建在其余模块的基础上才能够执行。
最后,引用第三方的包。 好比动态生成chart图片,演示如何使用这些API。
统计本月的消费总数,今日消费,日均消费,本月剩余,日都可用,距离月末有多少天。
同时使用一个环形进度条,这个环形进度条不是JDK自带的,须要本身设计,而且随着消费用度,颜色从绿色渐变为红色。
记录本日的消费额度, 分类下拉框从 消费分类数据中读取,而且把常常消费的分类放在前面。
日期默认选中今天,也能够手动指定日期。
对消费进行经典的CRUD 增删改查管理,同时显示一个分类下的消费次数。
这里涉及到多表关系:
消费记录和消费分类是多对一关系
使用第三方chart类生成柱状报表,显示本月的消费趋势
在消费一览中须要显示本月可用多少金额,都是创建在预算的基础上的。
在设置页面,设置本月的预算金额。
后续的还原和备份,都须要用到数据库的命令mysql和mysqldump,须要在这里配置mysql的安装目录
把数据库中的全部数据,备份到.sql文件中
根据.sql文件还原数据库