項(xiàng)目結(jié)構(gòu)分析
1.后臺頁面結(jié)構(gòu):
1)header
2)left
3)content(top,content,footer)
相關(guān)技術(shù):
1)AdminLTE? (免費(fèi)的bootstrap框架)
2)Bootstrap (前端框架,基于 HTML、CSS、JAVASCRIPT實(shí)現(xiàn),實(shí)現(xiàn)了一些比較完美的頁面效果)
3)Jquery(前端js框架)
2.后臺Java代碼結(jié)構(gòu)包結(jié)構(gòu):
1)根包:cn.xxx.ttms
2)通用模塊:cn.xxx.ttms.common?
3)系統(tǒng)模塊:cn.xxx.ttms.system
4)產(chǎn)品模塊:cn.xxx.ttms.product
4.1)控制層 controller
4.2)業(yè)務(wù)層 service
4.3)持久層?
dao技術(shù)相關(guān)
:1)SpringMVC
2)Spring
3)MyBatis
4).......................
3.配置文件相關(guān)
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----------------------------------------------------------------
產(chǎn)品管理中項(xiàng)目模塊的實(shí)現(xiàn)
1.項(xiàng)目模塊業(yè)務(wù)分析
產(chǎn)品項(xiàng)目是基于用戶(拼團(tuán)用戶)愿景(需求)而創(chuàng)建的一種活動(dòng).團(tuán)購項(xiàng)目管理系統(tǒng)中的任何產(chǎn)品的創(chuàng)建首先啟動(dòng)一個(gè)項(xiàng)目.問題:
1).項(xiàng)目在系統(tǒng)中由誰創(chuàng)建? 產(chǎn)品部的雇員
2).項(xiàng)目在系統(tǒng)的表現(xiàn)形式為一個(gè)對象,這個(gè)對象應(yīng)該有哪些屬性?
a)項(xiàng)目id(對應(yīng)數(shù)據(jù)庫中的主鍵)
b)項(xiàng)目名稱
c)項(xiàng)目編號(TT-20171011-CN-BJ-001):有業(yè)務(wù)涵義
d)開始時(shí)間
e)結(jié)束時(shí)間
f)項(xiàng)目狀態(tài)
g)創(chuàng)建時(shí)間
h)修改時(shí)間
i)創(chuàng)建人
j)修改人
3)項(xiàng)目模塊實(shí)現(xiàn)的基本功能?(對項(xiàng)目信息的管理)項(xiàng)目信息的增刪改查操作(CRUD).
2.項(xiàng)目模塊編程實(shí)現(xiàn)?(MVC)
1)編寫實(shí)體類:Project (屬性名最好與表中字段對應(yīng))
2)編寫DAO接口:ProjectDao
3)編寫DAO接口對應(yīng)的Mapper:ProjectMapper.xml
4)編寫Service接口及實(shí)現(xiàn)類:ProjectService,ProjectServiceImpl
5)編寫Junit測試
6)編寫Controller類:ProjectController
7)編寫頁面及JS代碼
3.項(xiàng)目模塊中項(xiàng)目列表信息的實(shí)現(xiàn)?
1)編寫實(shí)體類: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包內(nèi)
4)編寫ProjectService及實(shí)現(xiàn)類并添加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測試業(yè)務(wù)數(shù)據(jù)
6)編寫ProjectController添加相關(guān)方法
@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)編寫頁面對應(yīng)的js代碼