家庭理财系统分析与设计.doc_第1页
家庭理财系统分析与设计.doc_第2页
家庭理财系统分析与设计.doc_第3页
家庭理财系统分析与设计.doc_第4页
家庭理财系统分析与设计.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

家庭理财系统Web技术开发课程实践1、 系统愿景家庭成员通过电脑,实现家庭日常支出账目的登记、查询、统计。2、 系统用户(1)家庭成员,家庭成员分为二类(1)、户主:为系统注册的用户,除了可以进行记账操作外,还可添加、修改、删除家庭其他成员信息(2)普通成员:只能进行记账操作(2)系统管理员,系统维护、参数设置3、 主要用例系统参与者用例描述家庭成员注册家庭注册,注册的成员为家庭户主成员管理户主可管理家庭成员,包括新增,修改,删除账号管理所有家庭成员均可设置家庭账号记账登记家庭日常收支情况查询生产报表根据指定查询条件生成报表系统管理员基本信息维护权限设置家庭管理4、 系统数据库设计账户明细0.n10.n1.n111.n包括账户拥有家庭成员家庭包括(1)、ER图(2)、表设计tb_family :家庭表字段名字段类型是否主外建是否可以为空描述family_idint主键no自动增长namevarchar(20)否no家庭名称addressvarchar(50)否yes地址phoneVarchar(13)否yes手机号user_idint外键no户主statusNumber否no1封停2启用addtimedatatime否yes添加时间tb_familyuser:家庭成员表字段名字段类型是否主外建是否可以为空描述user_idint主键no用户idusernamevarchar(50)否no用户名passwordvarchar(50)否no密码phoneVarchar(13)否yes手机号emailvarchar(50)否yes电子邮箱family_idint外键no家庭idremarkvarchar(50)否yes备注tb_account: 账户表字段名字段类型是否主外建是否可以为空描述account_idint主键no账户idaccount_noVarchar(30)否no账号Balancefloat否yes余额namevarchar(50)否no账户名typeNumber(1)否no账号类型:1银行账号,2支付宝账号等addtimedatatime否yesdescriptionVarchar(50)否yes账户描述RemarkVarchar(50)否yes备注tb_accountdetail 账户明细表字段名字段类型是否主外建是否可以为空描述detail_idInt主键no明细idIncomeFloat否no收入Expenditurefloat否no消费ReasonVarchar(50)否yes原因timedatatime否noNow()account_noVarchar(30)外键no账号5、 基于JavaEE7.0框架实现参考1) 实现框架系统采用MVC的设计模式,运用javabean、JSP、Servlet技术进行实现。M(model)层,采用javabean技术,实现对后台数据对象的封装。V(view)层,采用JSP技术,实现用户与系统的交互。C(controler),采用servlet技术,实现后台业务逻辑的控制,通过定义具体的service(interface)及implemention(class)来实现具体的业务逻辑。2) 系统程序框架MVC架构软件层次结构包/文件夹实现技术描述V表示层webroot/viewshtml/jsp实现用户与系统的交互C控制层*.controlerServlet 类包名,存放项目创建的servlet控制器M业务逻辑层*.serviceinterface定义业务接口*.service.implclass业务接口实现类数据层*.daointerface数据访问接口*.dao.implclass数据访问接口实现实体层*.pojoJavabean class每个表对于的POJO类*:一般为项目所在公司域名的逆写,可设置为小组名。例如 .zju.cst6、 基于开源框架实现参考1) 实现框架系统基于N层技术架构,数据持久层采用MyBatis框架,业务层采用Spring框架,控制层采用Spring MVC技术,表现层采用jQuery框架和Bootstrap框架。表示层pc端采用了bootstrap+jQuery的技术来实现,页面采用一个开源前端框架bootstrap来进行页面的布局设计,而在页面上的交互设计以及数据的获取等采用一套跨浏览器的javascript库-jQuery来实现,可以极大地简化了 JavaScript 编程而且解决跨浏览器的兼容问题。表示层通过JSON数据格式与控制层进行数据的交互。控制层主要有DispatcherServlet、ApplicationContext.xml、Controller等组成。DispatcherServlet是前端控制器设计模式的实现,提供Spring Web MVC的集中访问点,而且负责职责的分派,而且与Spring IOC容器无缝集成,从而可以获得Spring的所有好处。ApplicationContext.xml包含了各种bean,并对这些bean进行管理和维护,如视图解析器接受到url可以对其进行重定位。Controller是Spring框架的控制器,它接受到客户端的请求后调用业务逻辑接口进行处理,并返回适当的模型和视图。业务逻辑层则是有了IOC、AOP、*Service.java、ServiceImpl.java组成。IOC意思为控制反转,即将管理维护bean的控制权从程序转移到Spring框架。AOP意思为面向切面编程,它可以实现权限验证,日志记录,事务处理等等。*Service.java 是定义业务逻辑接口,*ServiceImplement.java 是定义业务逻辑实现的类。持久成则是采用了Mybatis,它是一个持久化框架,它通过DAO.xml文件与数据库进行交互,其DAO已经被注入到Spring框架中,可以随着被调用。2) 主要技术简介Spring框架Spring框架是一种建立在J2EE基础上的一个轻量级的框架实现,和J2EE相比,具有容易维护、分层清楚、执行速度快、代码量少、支持最新的ORM和AOP概念等优点,同时在程序设计上非常注重简单性和一致性。Spring还提供了一个非常灵活的MVC框架的实现和扩展方式,可以集成当前流行的Web框架技术,与其它主流Web框架技术相比较,Spring框架技术在依赖注入、AOP方面也更加优秀。MybatisMyBatis本是apache的一个开源项目iBatis,2010年迁移到了google code,并且改名为MyBatis。MyBatis和Hibernate框架类似,主要通过.xml文件来操作相关数据库。MyBatis是一个灵活的,可以自由方便的处理相关数据库对象的一个持久层框架,它可以自定义我们需要的SQL语句。它也可以节省我们代码的重复编写,因为很多东西都可以被用户重用,这样我们在实际的项目过程当中会很轻松。MyBatis易学易用,通过简单的XML和注解来配置和映射基本数据类型。对于新手,入门简单,不仅保持了SQL已有的优秀功能,而且还拓展出了许多SQL没有的新技术。在一些大型的项目中,MyBatis框架将比Hibernate框架更加灵活。jQueryjQuery是一个兼容多浏览器的javascript框架,核心理念是write less,do more(写得更少,做得更多)。jQuery在2006年1月由美国人John Resig在纽约的barcamp发布,吸引了来自世界各地的众多JavaScript高手加入,由Dave Methvin率领团队进行开发。如今,jQuery已经成为最流行的javascript框架,在世界前10000个访问最多的网站中,有超过55%在使用jQuery。jQuery是免费、开源的,使用MIT许可协议。jQuery的语法设计可以使开发者更加便捷,例如操作文档对象、选择DOM元素、制作动画效果、事件处理

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论