项目结构分析
1.后台页面结构:
1)header
2)left
3)content(top,content,footer)
相关技术:
1)AdminLTE (免费的bootstrap框架)
2)Bootstrap (前端框架,基于 HTML、CSS、JAVASCRIPT实现,实现了一些比较完美的页面效果)
3)Jquery(前端js框架)
2.后台Java代码结构包结构:
1)根包:cn.xxx.ttms
2)通用模块:cn.xxx.ttms.common
3)系统模块:cn.xxx.ttms.system
4)产品模块:cn.xxx.ttms.product
4.1)控制层 controller
4.2)业务层 service
4.3)持久层
dao技术相关
:1)SpringMVC
2)Spring
3)MyBatis
4).......................
3.配置文件相关
1)config.properties (key/value)
2)log4j2.xml(日志处理的配制文件)
3)mybatis-config.xml(mybatis的基本配制信息)
4)spring-mybatis.xml(连接池,sqlSessionFactory,mapper)
5)spring-mvc.xml(spring,spring mvc)
6)web.xml----------------------------------------------------------------
产品管理中项目模块的实现
1.项目模块业务分析
产品项目是基于用户(拼团用户)愿景(需求)而创建的一种活动.团购项目管理系统中的任何产品的创建首先启动一个项目.问题:
1).项目在系统中由谁创建? 产品部的雇员
2).项目在系统的表现形式为一个对象,这个对象应该有哪些属性?
a)项目id(对应数据库中的主键)
b)项目名称
c)项目编号(TT-20171011-CN-BJ-001):有业务涵义
d)开始时间
e)结束时间
f)项目状态
g)创建时间
h)修改时间
i)创建人
j)修改人
3)项目模块实现的基本功能?(对项目信息的管理)项目信息的增删改查操作(CRUD).
2.项目模块编程实现?(MVC)
1)编写实体类:Project (属性名最好与表中字段对应)
2)编写DAO接口:ProjectDao
3)编写DAO接口对应的Mapper:ProjectMapper.xml
4)编写Service接口及实现类:ProjectService,ProjectServiceImpl
5)编写Junit测试
6)编写Controller类:ProjectController
7)编写页面及JS代码
3.项目模块中项目列表信息的实现?
1)编写实体类:Project package cn.xxx.ttms.product.entity;
class Project implements Serializable{ private Integer id; ....... }
2)编写ProjectDao:添加查询方法 package cn.xxx.ttms.product.dao;
interface ProjectDao{ ListfindObjects(); }
3)编写ProjectMapper.xml文件放在dao包内
4)编写ProjectService及实现类并添加findObjects方法
interface ProjectService{
List findObjects();
}
class ProjectService implements ProjectService{
@Autowired
private ProjectDao projectDao;
@Override
public List findObjects() {
List list=projectDao.findObjects();
return list;
}
}
5)编写单元测试类TestProjectService测试业务数据
6)编写ProjectController添加相关方法
@Controller
@RequestMapping("/project/")
public class ProjectController {
@Autowired
private ProjectService projectService;
@RequestMapping("listUI")
public String listUI(){
return "product/project_list";
}
@RequestMapping("doGetObjects")
@ResponseBody
public List doGetObjects(){
List list=projectService.findObjects();
return list;
}
}
7)编写页面对应的js代码