基于MVC的美食点评网站管理系统.doc

上传人:文库蛋蛋多 文档编号:2399851 上传时间:2023-02-17 格式:DOC 页数:31 大小:4.59MB
返回 下载 相关 举报
基于MVC的美食点评网站管理系统.doc_第1页
第1页 / 共31页
基于MVC的美食点评网站管理系统.doc_第2页
第2页 / 共31页
基于MVC的美食点评网站管理系统.doc_第3页
第3页 / 共31页
基于MVC的美食点评网站管理系统.doc_第4页
第4页 / 共31页
基于MVC的美食点评网站管理系统.doc_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《基于MVC的美食点评网站管理系统.doc》由会员分享,可在线阅读,更多相关《基于MVC的美食点评网站管理系统.doc(31页珍藏版)》请在三一办公上搜索。

1、面向行业领域的软件开发学年设计任务书 学 院计算机与信息工程专 业网络工程课程名称面向行业领域的软件开发题 目基于MVC的美食点评网站管理系统完成期限自2015年6月29日至2015年7月7日共1周内容及任务一、项目的目的运用MyEclipse开发工具编写程序代码,采用B/S架构开发出基于SSH框架的新闻信息管理系统,并对系统进行详细测试和维护。二、项目任务的主要内容和要求本系统主要功能和要求应包括:1. 管理员可以登录;2. 管理员可以增加用户信息;3. 管理员可以修改用户信息;4. 管理员管理员可以删除用户信息;5. 管理员可以新增美食信息;6. 管理员可以修改美食信息;7. 管理员可以删

2、除美食信息;8. 用户可以查看美食信息;9. 用户可以评价美食信息;10. 用户可以查看评价信息;11. 用户可以删除评价信息;三、项目设计(研究)思路遵循软件工程思想,在对系统需求分析后,进行系统设计和数据库设计,绘制用例图和E-R图后,采用MySQL数据库存储数据,在MyEclipse平台上,选择Java EE框架编码实现系统,并进行简单的测试完善系统。四、具体成果形式和要求学年设计说明书和软件源码。进度安排起止日期工作内容6月29日-30日进行需求分析、概要设计工作7月1日-5日技术准备7月6日-7日详细设计和编码实现工作7月8日撰写学年设计报告,进行答辩主要参考资料1 唐振明. Jav

3、aEE主流开源框架M.北京:电子工业出版社, 2011.指导教师意见(签字): 年 月 日系(教研室)主任意见(签字): 年 月 日 面向行业领域的软件开发设计说明书学院名称: 计算机与信息工程学院 班级名称: 学生姓名: 学 号: 题 目: 美食点评网站管理系统 指导教师姓 名: 起止日期: 2015.6.29至2015.7.7 第一部分:正文部分一、 选题背景随着网络在中国的广泛普及,网站应用的逐步完善,越来越多的中国人逐渐习惯于网上订餐,习惯于鼠标点击下订单,送货上门的快捷便利的购物方式。传统的美食评论观念正在被网上美食评论这一方便快捷的方式所冲击。美食点评管理系统可以实现的商务功能已经

4、越来越多样化,从最开始的美食信息发布功能,到现在的在线美食展示功能、在线评价功能等等,几乎传统美食点评所提供的功能都可以在互联网上进行电子化的高效运作,而借助网络的跨地域特点,更是将传统书店的地域限制加以突破,全国各地的读者都可以通过网络在同一个美食点评系统,从而大大增加了客户的数量。二、方案论证系统采用B/S架构,将系统分为浏览器端、应用服务器端和数据库服务器端。通过html、css和avaScript等技术实现浏览器端页面的设计,采用jsp技术进行web页面的渲染;服务器端采用SSH框架进行本系统的开发;数据库应用服务器采用简单的MySql数据库。三、过程论述3.1系统主要功能要求A. 前

5、台主要功能如下:1. 用户可以浏览美食信息;2. 用户可以评价美食信息;3. 用户可以查看评价信息:4. 用户可以删除评价信息;B.后台主要功能如下:1. 管理员可以登录系统;2. 管理员可以查看、增加、删除、修改用户信息;3. 管理员可以查看、修改美食信息;4. 管理员可以增加、删除美食信息;5. 管理员可以删除评价信息。3.2系统模块化分析系统总体结构,主要功能框架如图3.1所示:美食点评管理系统用户前台管理员后台查看美食信息评价美食信息查看评价信息删除评价信息登录系统增删改查用户信息查看修改美食信息增加删除美食信息删除评价信息图3.1 功能框架3.3系统设计3.3.1系统用例图用例是描述

6、外部行为者所理解的系统功能,在UML中,组成用例图的主要元素是系统、用例、行为者以及用例之间的关系,它是用户主体与系统功能的直观关系。本系统外部行为者为用户和管理员。用例图如下:图3.2 系统用例图3.3.2系统E-R图实体-关系图描述的是数据对象的属性及数据对象彼此间相互连接的关系。本系统实体分为新闻实体、列别实体和管理员实体。具体E-R图如下:图3.3 系统E-R图3.3.1数据库表结构本系统中数据库名称为:news_publish。一共有三张表分别是:user表、news表、newstype表。分别用来存储用户信息、美食信息和美食评价信息。下面给出表中具体属性。(数据库表结构见图3.4)

7、user表:id、username、passwordnews表:id、title、content、releaseDate、userID、newsTypeIDnewstype表:id、typename图3.4 数据库表结构图3.4系统开发及运行环境硬件平台:CPU:Pentium2.8GHz以上。内存:256以上。软件平台:操作系统:Windows7。运行环境:JDK1.7,MyEclipse,Tomcat,MySql。3.5系统发布与运行本系统项目开发完成后,即可部署到Tomcat服务器上,首先开启服务器,然后打开浏览器,在浏览器的地址栏输入http:/localhost:8080/index

8、.jsp即可进入系统用户端前台,在浏览器地址栏输入http:/localhost:8080/ahong520/login.jsp即可登录到系统后台。3.6系统实现系统项目代码分包结构:图3.5 项目分包结构图核心代码UserAction.Javapackage com.caojun.action;import java.util.List;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.ServletActionContext;import com.caojun.model.User;import c

9、om.caojun.service.UserService;import com.caojun.service.impl.UserServiceImpl;import com.opensymphony.xwork2.ActionSupport;public class UserAction extends ActionSupport private String username;private String password;private String rePassword;private int totalCount;private int pageSize = 5;private in

10、t pageNow = 1;private int id;private List users;public int getId() return id;public void setId(int id) this.id = id;public List getUsers() return users;public void setUsers(List users) this.users = users;public int getTotalCount() return totalCount;public void setTotalCount(int totalCount) this.tota

11、lCount = totalCount;public int getPageSize() return pageSize;public void setPageSize(int pageSize) this.pageSize = pageSize;public int getPageNow() return pageNow;public void setPageNow(int pageNow) this.pageNow = pageNow;public String getRePassword() return rePassword;public void setRePassword(Stri

12、ng rePassword) this.rePassword = rePassword;public String getUsername() return username;public void setUsername(String username) this.username = username;public String getPassword() return password;public void setPassword(String password) this.password = password;public String createUser()User user

13、= new User();user.setUsername(username);user.setPassword(password);UserService userService = new UserServiceImpl();userService.createrUser(user);return SUCCESS;public String showUsers()UserService userService = new UserServiceImpl();this.users = userService.queryAllUsers(this.pageSize, this.pageNow)

14、;this.totalCount = userService.queryAllUsers().size();return SUCCESS;public String showUser()UserService userService = new UserServiceImpl();User user = userService.queryUser(this.id);HttpServletRequest request = ServletActionContext.getRequest();request.setAttribute(user, user);return SUCCESS;publi

15、c String updateUser()UserService userService = new UserServiceImpl();User user = userService.queryUser(this.id);user.setUsername(username);user.setPassword(password);userService.updateUser(user);this.users = userService.queryAllUsers(this.pageSize, this.pageNow);this.totalCount = userService.queryAl

16、lUsers().size();return SUCCESS;public String deleteUser()UserService userService = new UserServiceImpl();User user = userService.queryUser(this.id);userService.deleteUser(user);this.users = userService.queryAllUsers(this.pageSize, this.pageNow);this.totalCount = userService.queryAllUsers().size();re

17、turn SUCCESS;NewsTypeAction.javapackage com.caojun.action;import java.util.List;import com.caojun.model.NewsType;import com.caojun.service.NewsTypeService;import com.caojun.service.impl.NewsTypeServiceImpl;import com.opensymphony.xwork2.ActionSupport;public class NewsTypeAction extends ActionSupport

18、 private int newsTypeID;private String typeName;private List allNewsTypes;private NewsType newsType;public int getNewsTypeID() return newsTypeID;public void setNewsTypeID(int newsTypeID) this.newsTypeID = newsTypeID;public List getAllNewsTypes() return allNewsTypes;public void setAllNewsTypes(List a

19、llNewsTypes) this.allNewsTypes = allNewsTypes;public String getTypeName() return typeName;public void setTypeName(String typeName) this.typeName = typeName;public NewsType getNewsType() return newsType;public void setNewsType(NewsType newsType) this.newsType = newsType;public String createNewsType()

20、NewsType newsType = new NewsType();newsType.setTypeName(this.typeName);NewsTypeService newsTypeService = new NewsTypeServiceImpl();newsTypeService.createNewsType(newsType);this.allNewsTypes = newsTypeService.queryAllNewsTypes();this.addActionMessage(添加成功);return SUCCESS;public String showNewsTypes()

21、NewsTypeService newsTypeService = new NewsTypeServiceImpl();this.allNewsTypes = newsTypeService.queryAllNewsTypes();return SUCCESS;public String showNewsType()NewsTypeService newsTypeService = new NewsTypeServiceImpl();this.newsType = newsTypeService.queryNewsType(this.newsTypeID);this.allNewsTypes

22、= newsTypeService.queryAllNewsTypes();return SUCCESS;public String updateNewsType()NewsTypeService newsTypeService = new NewsTypeServiceImpl();NewsType nt = newsTypeService.queryNewsType(this.newsTypeID);nt.setTypeName(this.typeName);newsTypeService.updateNewsType(nt);this.allNewsTypes = newsTypeSer

23、vice.queryAllNewsTypes();this.addActionMessage(修改成功);return SUCCESS;public String deleteNewsType()NewsTypeService newsTypeService = new NewsTypeServiceImpl();NewsType nt = newsTypeService.queryNewsType(this.newsTypeID);newsTypeService.deleteNewsType(nt);this.allNewsTypes = newsTypeService.queryAllNe

24、wsTypes();this.addActionMessage(删除成功);return SUCCESS;NewsAction.javapackage com.caojun.action;import java.util.Iterator;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpSession;import org.apache.struts2.ServletActionContext;import com.caojun.model.News

25、;import com.caojun.model.NewsType;import com.caojun.model.User;import com.caojun.service.NewsService;import com.caojun.service.impl.NewsServiceImpl;import com.caojun.service.impl.NewsTypeServiceImpl;import com.caojun.service.impl.UserServiceImpl;import com.opensymphony.xwork2.ActionSupport;public cl

26、ass NewsAction extends ActionSupport private int newsID;private String title;private String content;private java.sql.Date releaseDate;private int userID;private int newsTypeID;private List allNews;private int pageSize = 10;private int pageNow = 1;private int totalCount;private List allUsers;private

27、List allNewsType;public List getAllUsers() return allUsers;public void setAllUsers(List allUsers) this.allUsers = allUsers;public List getAllNewsType() return allNewsType;public void setAllNewsType(List allNewsType) this.allNewsType = allNewsType;public int getNewsID() return newsID;public void setN

28、ewsID(int newsID) this.newsID = newsID;public String getTitle() return title;public void setTitle(String title) this.title = title;public String getContent() return content;public void setContent(String content) this.content = content;public java.sql.Date getReleaseDate() return releaseDate;public v

29、oid setReleaseDate(java.sql.Date releaseDate) this.releaseDate = releaseDate;public int getUserID() return userID;public void setUserID(int userID) this.userID = userID;public int getNewsTypeID() return newsTypeID;public void setNewsTypeID(int newsTypeID) this.newsTypeID = newsTypeID;public List get

30、AllNews() return allNews;public void setAllNews(List allNews) this.allNews = allNews;public int getPageSize() return pageSize;public void setPageSize(int pageSize) this.pageSize = pageSize;public int getPageNow() return pageNow;public void setPageNow(int pageNow) this.pageNow = pageNow;public int ge

31、tTotalCount() return totalCount;public void setTotalCount(int totalCount) this.totalCount = totalCount;public String createNews()HttpSession session = ServletActionContext.getRequest().getSession();User user = (User)session.getAttribute(user);News news = new News();news.setTitle(this.title);news.set

32、Content(this.content);news.setReleaseDate(this.releaseDate);news.setUserID(user.getId();news.setNewsTypeID(this.newsTypeID);NewsService newsService = new NewsServiceImpl();newsService.createNews(news);this.allNews = newsService.queryAllNews(this.pageSize, this.pageNow);for(Iterator it = allNews.iter

33、ator();it.hasNext();)News n = it.next();User u1 = new UserServiceImpl().queryUser(n.getUserID();n.setUser(u1);NewsType newsType = new NewsTypeServiceImpl().queryNewsType(n.getNewsTypeID();n.setNewsType(newsType);this.totalCount = newsService.queryAllNews().size();return SUCCESS;public String showNew

34、s()NewsService newService = new NewsServiceImpl();News news = newService.queryNews(this.newsID);User user = new UserServiceImpl().queryUser(news.getUserID();news.setUser(user);NewsType newsType = new NewsTypeServiceImpl().queryNewsType(news.getNewsTypeID();news.setNewsType(newsType);HttpServletReque

35、st request = ServletActionContext.getRequest();request.setAttribute(news, news);this.allUsers = new UserServiceImpl().queryAllUsers();this.allNewsType = new NewsTypeServiceImpl().queryAllNewsTypes();return SUCCESS;public String showAllNews()NewsService newsService = new NewsServiceImpl();this.allNew

36、s = newsService.queryAllNews(this.pageSize, this.pageNow);for(Iterator it = allNews.iterator();it.hasNext();)News n = it.next();User user = new UserServiceImpl().queryUser(n.getUserID();n.setUser(user);NewsType newsType = new NewsTypeServiceImpl().queryNewsType(n.getNewsTypeID();n.setNewsType(newsTy

37、pe);this.totalCount = newsService.queryAllNews().size();return SUCCESS;public String showNewsByTypeID()NewsService newsService = new NewsServiceImpl();this.allNews = newsService.queryAllNews(this.newsTypeID);return SUCCESS;public String updateNews()NewsService newsService = new NewsServiceImpl();New

38、s news = newsService.queryNews(this.newsID);news.setTitle(this.title);news.setContent(this.content);news.setReleaseDate(this.releaseDate);news.setUserID(this.userID);news.setNewsTypeID(this.newsTypeID);newsService.updateNews(news);this.allNews = newsService.queryAllNews(this.pageSize, this.pageNow);

39、for(Iterator it = allNews.iterator();it.hasNext();)News n = it.next();User user = new UserServiceImpl().queryUser(n.getUserID();n.setUser(user);NewsType newsType = new NewsTypeServiceImpl().queryNewsType(n.getNewsTypeID();n.setNewsType(newsType);this.totalCount = newsService.queryAllNews().size();re

40、turn SUCCESS;public String deleteNews()NewsService newsService = new NewsServiceImpl();News news = newsService.queryNews(this.newsID);newsService.deleteNews(news);this.allNews = newsService.queryAllNews(this.pageSize, this.pageNow);for(Iterator it = allNews.iterator();it.hasNext();)News n = it.next(

41、);User user = new UserServiceImpl().queryUser(n.getUserID();n.setUser(user);NewsType newsType = new NewsTypeServiceImpl().queryNewsType(n.getNewsTypeID();n.setNewsType(newsType);this.totalCount = newsService.queryAllNews().size();return SUCCESS;public String showAllNewsTypes()this.allNewsType = new

42、NewsTypeServiceImpl().queryAllNewsTypes();return SUCCESS;LoginAction.javapackage com.caojun.action;import javax.servlet.http.HttpSession;import org.apache.struts2.ServletActionContext;import com.caojun.model.User;import com.caojun.service.UserService;import com.caojun.service.impl.UserServiceImpl;import com.opensymphony.xwork2.ActionSupport;publi

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号