📄 menuservlet.java
字号:
package com.oa.lp.servlet;
import java.io.IOException;
import java.sql.Connection;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.oa.lp.dao.MenuDAO;
import com.oa.lp.database.DataBase;
import com.oa.lp.model.Menu;
public class MenuServlet extends TopServlet{
static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//接参
String method = request.getParameter("method")==null?"":request.getParameter("method");
String menuId = request.getParameter("menuId")==null?"0":request.getParameter("menuId");
String menuName = request.getParameter("menuName")==null?"":request.getParameter("menuName");
String menuLink = request.getParameter("menuLink")==null?"":request.getParameter("menuLink");
String menuOrder = request.getParameter("menuOrder")==null?"":request.getParameter("menuOrder");
String parentMenuId = request.getParameter("parentMenuId")==null?"0":request.getParameter("parentMenuId");
String menuState = request.getParameter("menuState")==null?"0":request.getParameter("menuState");
Menu menu = new Menu();
if(menuId.length()>0){
menu.setMenuId(Integer.parseInt(menuId));
}
menu.setParentMenuId(Integer.parseInt(parentMenuId));
menu.setMenuName(menuName);
menu.setMenuLink(menuLink);
Connection conn=null;
try {
conn = DataBase.getConnection();
MenuDAO menuDao = new MenuDAO();
menuDao.setConn(conn);
if(method.equals("list")){
//菜单列表
request.setAttribute("menus",menuDao.listAllMenu());
this.forward(request, response,"/system/menu/list.jsp");
}else if(method.equals("add")){
//新增菜单
menu.setMenuState(1);
menuDao.addMenu(menu);
this.sendRedirect(request, response,"/MenuServlet?method=list");
}else if(method.equals("update")){
//更新菜单
menuDao.updateMenu(menu);
this.sendRedirect(request, response,"/MenuServlet?method=list");
}else if(method.equals("edit")){
//通过菜单ID查找菜单
request.setAttribute("parentMenus",menuDao.getMenusByParentId(0));
request.setAttribute("menu",menuDao.getById(menu.getMenuId()));
this.forward(request, response,"/system/menu/menu.jsp");
}else if(method.equals("new_load")){
//新增前加载上级菜单
request.setAttribute("parentMenus",menuDao.getMenusByParentId(0));
this.forward(request, response,"/system/menu/menu.jsp");
}else if(method.equals("update_state")){
//状态更新
menuDao.updateMenuState(Integer.parseInt(menuId),Integer.parseInt(menuState));
this.sendRedirect(request, response,"/MenuServlet?method=list");
}else if(method.equals("update_order")){
//上移,下移菜单显示顺序
Menu m = menuDao.getById(menu.getMenuId());
if(menuOrder.equals("up")){
//上移
//先判断是否为最顶层
if(menuDao.checkMenuOrderTop(m.getParentMenuId(), m.getMenuOrder())){
//是最顶层
this.sendRedirect(request, response, "/MenuServlet?method=list");
}else{
//可以向上移动
menuDao.menuOrderUp(m);
this.sendRedirect(request, response,"/MenuServlet?method=list");
}
}else if(menuOrder.equals("down")){
//下移
//先判断是否为最底层
if(menuDao.checkMenuOrderBottom(m.getParentMenuId(), m.getMenuOrder())){
//是最顶层
this.sendRedirect(request, response, "/MenuServlet?method=list");
}else{
//可以向上移动
menuDao.menuOrderDown(m);
this.sendRedirect(request, response,"/MenuServlet?method=list");
}
}
}else if(method.equals("del")){
Menu m = menuDao.getById(menu.getMenuId());
if(menuDao.delMenu(m)){
//删除成功
}else{
//删除失败
}
this.sendRedirect(request, response, "/MenuServlet?method=list");
}else if(method.equals("addLoad")){
request.setAttribute("parentMenus",menuDao.getMenusByParentId(0));
this.forward(request, response,"/system/menu/menu.jsp");
}
//事务提交
DataBase.commit();
} catch (Exception e) {
e.printStackTrace();
}finally{
if(conn!=null){
//关闭连接
DataBase.releaseConnection(conn);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -