总体描述
对现有老婆的衣服做一个管理, 通过分类使老婆找衣服的时候可以迅速定位衣服。
要求: 衣服照片,支持多种分类方式
初步: 做一个衣物列表,对新购置的衣物添加到系统中。
可添加,修改,删除,并有回收站
已有衣物慢慢的添加
进一步: 对衣物的分类方式提供多种支持,如 衣,裤,鞋,帽;春秋,夏,冬;新,旧,弃;可配置分类
再进一步:对衣物属性可以配置
再再进一步:该管理程序可以与其他的管理程序结合,成为其他程序的一个组件
再再再进一步:我要做一个名片的管理,书籍的管理怎么做?要最大的复用本程序的思想、代码、开发方法等,最小的工作量
再加一个功能,可以通过搭配,配出各种套装
------------------------------------------
已完成:衣物添加,衣物列表
待完成:衣物修改,衣物字段内容可选,衣物删除,页面友好性
【衣物添加时,可以对特定属性设定时,可以根据数据库表的内容进行选择。对衣物实例的属性值附值时,直接使用选择的值。(目的时,衣物表 与 属性值选择 配置表 相互独立。 其间的联系是通过web页面的录入过程产生的,没有主外键的相关关系,没有db级别的关系)】
------------------------------------------
开发描述
该程序分为三层结构,分别为
1 数据层、2 业务层、3 表现层
下面一一介绍:
1 数据层
说明:
该层包含两个部分,数据存储介质和数据存取方式。
数据存储介质采用数据库表
数据存取方式采用hibernate。
数据层对外的接口为以Dress为domain object为参数的domain object管理方法。
如,增、删、查、改
对外接口:待补充,通过hibernateSynchronize自动生成基本代码,然后参考redsagas的代码给出对外接口
包:package org.winnerbao.housemananager.clothes.domain;
表:用户 表和衣服表
异常处理:
domain内部的异常通过hibernate处理
对外接口不抛出异常。内部抓住异常后,封装未Runtime异常抛出
2 业务层
业务层同时与数据层、表现层发生关系
业务层与数据层:业务层调用数据层的方法获取相关的数据和采取相关动作。
采用数据层的domain object作为接口参数数据结构
业务层提供service给表现层:采用业务层内部的value object作为接口参数数据结构
对外接口:待补充,按照增删查改给出对外接口,接口的参数格式
包:package org.winnerbao.housemananager.clothes.business;
3 表现层
表现层调用业务层提供的service
表现层采用struts的action form接收页面数据,转换为业务层的value object后,调用业务层方法。
界面: 待补充
Action form:待补充
该层也可以采用velocity,不过不知道怎么用。其也通过业务层的接口来实现,不涉及到数据层
包:package org.winnerbao.housemananager.clothes.web;