基于javaweb+mysql的ssm+maven网上订餐在线点餐系统(java+ssm+jsp+mysql)
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SSM+Maven网上订餐在线点餐系统(java+ssm+jsp+mysql)
前台:
http://localhost:8080/qiantai
user1 123456
user2 123456
后台:
http://localhost:8080/admin
admin 123456
return "redirect:../public/qiantai/login.jsp";
}
@RequestMapping("update")
public String update(HttpSession session,@Param("id")Integer id,@Param("name") String name,@Param("pwd") String pwd,@Param("realname") String realname,@Param("sex") String sex,@Param("age") Integer age,@Param("card") String card,@Param("address") String address,@Param("Phone") String phone,@Param("email")String email,@Param("code")String code,@Param("type")Integer type){
Users user=new Users(id,name,pwd,realname,sex,age,card,address,phone,email,code,type);
usersService.update(user);
session.removeAttribute("user_session");
return "redirect:/users/login";
}
}
/**
* (Notice)表控制层
*
*/
@Controller
@RequestMapping("notice")
public class NoticeController {
/**
* 服务对象
*/
@Autowired
@Qualifier("noticeService")
private NoticeService noticeService;
/**
* 查询所有元素
* @param model
* @return
*/
Integer a=Integer.parseInt(day1.substring(9,10));
String aa=""+(a+1);
StringBuilder day=new StringBuilder(day1);
day.replace(9,10,aa);
String day2=day.toString();
list=ordersService.pageListByDate(day1,day2);
}else {
System.out.println("未提交");
}
session.setAttribute("ordersearch", list);
System.out.println(id);
System.out.println(menuname);
System.out.println(day1);
return "/admin/order_search";
}
//跳转到statistic页面
@RequestMapping("order_statistic")
public String order_statistic( HttpServletRequest request) throws UnsupportedEncodingException {
List<Orders> list=null;
HttpSession session=request.getSession();
request.setCharacterEncoding("utf-8");
SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date(System.currentTimeMillis());
String day1=formatter.format(date);
Integer a=Integer.parseInt(day1.substring(9,10));
String aa=""+(a+1);
StringBuilder day=new StringBuilder(day1);
day.replace(9,10,aa);
String day2=day.toString();
System.out.println(a);
System.out.println(day1);
System.out.println(day2);
list=ordersService.pageListByDate(day1,day2);
session.setAttribute("orderstatistic", list);
return "/admin/order_statistic";
}
@RequestMapping("orderqiantai")
*
*/
@Controller
@RequestMapping("notice")
public class NoticeController {
/**
* 服务对象
*/
@Autowired
@Qualifier("noticeService")
private NoticeService noticeService;
/**
* 查询所有元素
* @param model
* @return
*/
@RequestMapping("queryAll")
public String queryAll(Model model){
List<Notice> notices=noticeService.queryAll();
model.addAttribute("notices",notices);
return "admin/notice";
}
/**
* 查询所有公共并传送到前台
* @param model
* @return
*/
@RequestMapping("queryAlltoQiantai")
public String queryAlltoQiantai(Model model){
List<Notice> notices=noticeService.queryAll();
model.addAttribute("notices",notices);
return "qiantai/index";
}
/**
* 根据id删除元素
* @param model
* @param id
* @return
*/
@RequestMapping("delete")
public String delete(Model model, @Param("id") Integer id){
this.noticeService.delete(id);
return queryAll(model);
}
/**
* 根据id查询元素
* @param model
@RequestMapping("admin")
public class AdminController {
/**
* 服务对象
*/
//自动注入业务层的AdminService类
@Autowired
@Qualifier("adminService")
private AdminService adminService;
//修改管理员信息
@RequestMapping("update")
public String update(Admin admin) {
adminService.update(admin);
return "/admin/menus";
}
@RequestMapping(value = "/login",method = RequestMethod.GET)
public String toLogin(){
return "/admin/index";
}
//login业务的访问位置为/admin/login
@RequestMapping(value = "/login",method = RequestMethod.POST)
public String login(Admin admin, HttpServletRequest request,HttpSession session){
//调用login方法来验证是否是注册用户
boolean loginType = adminService.login(admin.getName(),admin.getPwd());
if(loginType){
//如果验证通过,则将用户信息传到前台
request.setAttribute("admin",admin);
session.setAttribute("admin_session",admin);
//并跳转到success.jsp页面
return "/admin/main";
}else{
//若不对,则返回
request.setAttribute("message","用户名密码错误");
return "/admin/index";
}
}
//登出,地址/admin/logout
@RequestMapping("logout")
public String logout(HttpSession session){
//清除session
session.removeAttribute("admin_session");
//清除session
session.removeAttribute("admin_session");
//重定向到登录页面的跳转方法
return "/admin/index";
}
}
/**
* (Types)表控制层
*
*/
@Controller
@RequestMapping("types")
public class TypesController {
/**
* 服务对象
*/
@Autowired
@Qualifier("typesService")
private TypesService typesService;
/**
* 查询所有菜单类别
* @param model
* @return
*/
@RequestMapping("queryAll")
public String queryAll(Model model){
List<Types> types=typesService.queryAll();
model.addAttribute("types",types);
return "admin/type";
}
@RequestMapping("getall")
public List<Types> queryall()
{
return this.typesService.queryAll();
/**
* 插入元素
* @param model
* @param name
* @return
*/
@RequestMapping("insert")
public String insert(Model model,@Param("name") String name){
int id=(int)(System.currentTimeMillis()%100);
typesService.insert(new Types(id,name));
return queryAll(model);
}
}
@RestController
public class FileController {
@Autowired
@Qualifier("menusService")
private MenusService menusService;
@RequestMapping("upload")
public String fileUpload(CommonsMultipartFile file, Menus menus, HttpServletRequest request)throws IOException {
menusService.insert(menus);
//获取文件名
String uploadFilename = file.getOriginalFilename();
//如果文件名为空,直接返回
if("".equals(uploadFilename)){
return "redirect: menus_add.jsp";
}
System.out.println("上传文件名:"+uploadFilename);
//上传保存路径
String path=request.getServletContext().getRealPath("/public/img");
//如果路径不存在,新建一个
File realPath= new File(path);
*/
@Controller
@RequestMapping("admin")
public class AdminController {
/**
* 服务对象
*/
//自动注入业务层的AdminService类
@Autowired
@Qualifier("adminService")
private AdminService adminService;
//修改管理员信息
@RequestMapping("update")
public String update(Admin admin) {
adminService.update(admin);
return "/admin/menus";
}
@RequestMapping(value = "/login",method = RequestMethod.GET)
public String toLogin(){
return "/admin/index";
}
//login业务的访问位置为/admin/login
@RequestMapping(value = "/login",method = RequestMethod.POST)
public String login(Admin admin, HttpServletRequest request,HttpSession session){
//调用login方法来验证是否是注册用户
boolean loginType = adminService.login(admin.getName(),admin.getPwd());
if(loginType){
//如果验证通过,则将用户信息传到前台
request.setAttribute("admin",admin);
session.setAttribute("admin_session",admin);
//并跳转到success.jsp页面
return "/admin/main";
}else{
//若不对,则返回
request.setAttribute("message","用户名密码错误");
return "/admin/index";
}
}
//登出,地址/admin/logout
@RequestMapping("logout")
public String logout(HttpSession session){
//清除session
session.removeAttribute("admin_session");
List<Orders> list= ordersService.pageList(Integer.parseInt(pagess),5);
if(request.getParameter("currentpage")==null && list.isEmpty()){
list= ordersService.pageList(0,5);
}
request.setAttribute("list",list);
System.out.println("pagess="+pagess);
System.out.println("currentpages="+currentpages);
return "/admin/order";
}
//确认订单 确认则将deliverys设置为一否则删除
@RequestMapping("OrderComfirm")
public String OrderComfirm( HttpServletRequest request){
int id=Integer.parseInt(request.getParameter("id"));
String reqtype=request.getParameter("reqtype");
if(reqtype.equals("delivery")){
ordersService.updatedeliveryById(id);
}else if(reqtype.equals("del")){
ordersService.deleteById(id);
}else{
System.out.println("错误");
}
return "redirect:/orders/ordergetall";
}
@RequestMapping("order_search")
public String order_search( HttpServletRequest request) {
return "/admin/order_search";
}
@RequestMapping("ordergetallbydelivery")
public String ordergetallbydelivery(HttpServletRequest request){
String delivery=request.getParameter("delivery");
Integer d=Integer.parseInt(delivery);
List<Orders> list=ordersService.pageListByDelivery(d);
HttpSession session=request.getSession();
session.setAttribute("ordersearch", list);
return "/qiantai/order";
}
@RequestMapping(value="order_qiantai",method = RequestMethod.POST)
public String order_qiantai( HttpServletRequest request) throws UnsupportedEncodingException {
List<Orders> list=null;
HttpSession session=request.getSession();
request.setCharacterEncoding("utf-8");
return "redirect:../public/qiantai/login.jsp";
}
return "redirect:/menus/qiantai/allMenus";
}
}
/**
* (Menus)表控制层
*
*/
/**
* 查询所有元素
* @param model
* @return
*/
@RequestMapping("queryAll")
public String queryAll(Model model){
List<Notice> notices=noticeService.queryAll();
model.addAttribute("notices",notices);
return "admin/notice";
}
/**
* 查询所有公共并传送到前台
* @param model
* @return
*/
@RequestMapping("queryAlltoQiantai")
public String queryAlltoQiantai(Model model){
List<Notice> notices=noticeService.queryAll();
model.addAttribute("notices",notices);
return "qiantai/index";
}
/**
* 根据id删除元素
* @param model
* @param id
* @return
*/
@RequestMapping("delete")
public String delete(Model model, @Param("id") Integer id){
this.noticeService.delete(id);
return queryAll(model);
}
/**
* 根据id查询元素
* @param model
* @param id
* @return
public class AdminLoginInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object o) throws Exception {
//获取请求的RUi:去除http:localhost:8080这部分剩下的
String uri = request.getRequestURI();
//UTL:除了login.jsp是可以公开访问的,其他的URL都进行拦截控制
if (uri.indexOf("/admin/login")>=0) {
return true;
}
//获取session
HttpSession session = request.getSession();
Admin admin = (Admin) session.getAttribute("admin_session");
Users user=(Users)session.getAttribute("user_session");
//判断session中是否有用户数据,如果有,则返回true,继续向下执行
if (admin != null) {
return true;
}
//不符合条件的给出提示信息,并转发到登录页面
request.setAttribute("msg", "您还没有登录,请先登录!");
request.getRequestDispatcher("/public/admin/index.jsp").forward(request, response);
return false;
}
@Override
public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {
}
@Override
public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {
}
}
public class UserLoginInterceptor implements HandlerInterceptor {
request.getRequestDispatcher("../menus/allMenus").forward(request,response);
}
//菜单信息删除
@RequestMapping("/delete")
public void delete(Integer id,HttpServletRequest request,HttpServletResponse response) throws IOException, ServletException {
menusService.deleteById(id);
request.getRequestDispatcher("../menus/allMenus").forward(request,response);
}
/**
* 通过主键查询单条数据
*
* @param id 主键
* @return 单条数据
*/
@GetMapping("selectOne")
public Menus selectOne(Object id) {
return this.menusService.queryById(id);
}
}
/**
* (Users)表控制层
*
*/
List<Types> types=typesService.queryAll();
model.addAttribute("types",types);
return "admin/type";
}
@RequestMapping("getall")
public List<Types> queryall()
{
return this.typesService.queryAll();
}
/**
* 通过id删除菜单类别
* @param model
* @param id
* @return
*/
@RequestMapping("delete")
public String delete(Model model,@Param("id") int id){
this.typesService.delete(id);
return queryAll(model);
}
/**
* 修改菜单类别
* @param model
* @param id
* @return
*/
//函数入口
@RequestMapping("update")
public String update(Model model,@Param("id") int id,@Param("name") String name) {
typesService.update(new Types(id,name));
return queryAll(model);
}
/**
* 根据id查询元素
* @param model
* @param id
* @return
*/
@RequestMapping("queryById")
public String queryById(Model model,@Param("id") int id){
Types type=typesService.queryById(id);
String aa=""+(a+1);
StringBuilder day=new StringBuilder(day1);
day.replace(9,10,aa);
String day2=day.toString();
list=ordersService.pageListByDate(day1,day2);
}else {
System.out.println("未提交");
}
session.setAttribute("ordersearch", list);
System.out.println(id);
System.out.println(menuname);
System.out.println(day1);
return "/qiantai/order";
}
@RequestMapping(value="order_searchs",method = RequestMethod.POST)
public String order_searchs( HttpServletRequest request) throws UnsupportedEncodingException {
List<Orders> list=null;
HttpSession session=request.getSession();
request.setCharacterEncoding("utf-8");
Integer id=null;
String menuname=null;
String day1=null;
if(request.getParameter("userid")!=null&&(!request.getParameter("userid").equals(""))){
id=Integer.parseInt(request.getParameter("userid"));
list=ordersService.pageListByID(id);
}else if(request.getParameter("menuname")!=null&&(!request.getParameter("menuname").equals(""))){
menuname=request.getParameter("menuname");
list=ordersService.pageListByMenue(menuname);
}else if(request.getParameter("date")!=null&&(!request.getParameter("date").equals(""))){
day1=request.getParameter("date");
Integer a=Integer.parseInt(day1.substring(9,10));
String aa=""+(a+1);
StringBuilder day=new StringBuilder(day1);
day.replace(9,10,aa);
String day2=day.toString();
//设置pagess的值
if(request.getParameter("s")!=null){
s=request.getParameter("s");
if(s.equals("up")){
pagess=""+(Integer.parseInt(currentpages)-4);
}else if(s.equals("down")){
pagess=""+((Integer.parseInt(currentpages)-1)*5-1);
}else if (s.equals("first")){
pagess="0";
}else if(s.equals("last")){
pagess=""+(totalCount-(totalCount%5)-1);
}else {
System.out.println("错误");
}
}
page1=new Pages(currentpages,allpage);
request.setAttribute("pages",page1);
}else{
totalCount= ordersService.pageCount();
allpage=totalCount/5;
if(ordersService.pageCount()%5!=0){
allpage++;
}
page1=new Pages("1", allpage);
request.setAttribute("pages",page1);
}
//判断操作数据库页面是否突破限制
if(Integer.parseInt(pagess)<=0){
pagess="0";
}
if(Integer.parseInt(pagess)>totalCount){
pagess=""+(totalCount-(totalCount%5)-1);
}
List<Orders> list= ordersService.pageList(Integer.parseInt(pagess),5);
if(request.getParameter("currentpage")==null && list.isEmpty()){
list= ordersService.pageList(0,5);
}
request.setAttribute("list",list);
System.out.println("pagess="+pagess);
System.out.println("currentpages="+currentpages);
* 修改菜单类别
* @param model
* @param id
* @return
*/
//函数入口
@RequestMapping("update")
public String update(Model model,@Param("id") int id,@Param("name") String name) {
typesService.update(new Types(id,name));
return queryAll(model);
}
/**
* 根据id查询元素
* @param model
* @param id
* @return
*/
@RequestMapping("queryById")
public String queryById(Model model,@Param("id") int id){
Types type=typesService.queryById(id);
model.addAttribute("type",type);
return "admin/type_update";
}
/**
* 插入元素
* @param model
* @param name
* @return
*/
@RequestMapping("insert")
public String insert(Model model,@Param("name") String name){
int id=(int)(System.currentTimeMillis()%100);
typesService.insert(new Types(id,name));
return queryAll(model);
}
}
}
/**
* (Notice)表控制层
*
*/
@Controller
@RequestMapping("notice")
public class NoticeController {
/**
* 服务对象
*/
@Autowired
@Qualifier("noticeService")
private NoticeService noticeService;
/**
* 查询所有元素
* @param model
* @return
*/
@RequestMapping("queryAll")
public String queryAll(Model model){
List<Notice> notices=noticeService.queryAll();
model.addAttribute("notices",notices);
return "admin/notice";