createmenuaction.java

来自「医院信息系统(Hospital Information System」· Java 代码 · 共 78 行

JAVA
78
字号
package hospital.Controller.Actions.GeneralFunction;

import org.apache.struts.action.*;
import javax.servlet.http.*;
import java.sql.*;
import java.util.*;
import hospital.Foundation.*;

public class CreateMenuAction extends Action {
    String userID = "";
    public ActionForward execute(ActionMapping mapping, ActionForm form,
                                 HttpServletRequest request,
                                 HttpServletResponse response) {

        String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
        String dbURL = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=hospital";
        String userName = "sa";
        String userPwd = "";
        Connection dbConn;

        ArrayList listMenuItems = new ArrayList();

        try {
            Class.forName(driverName);
            dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
            Statement stmt = dbConn.createStatement();

            initPageParameters(form, request);

            createMenuItems(stmt, listMenuItems);

            stmt.close();
            dbConn.close();

        } catch (Exception e) {
            e.printStackTrace();
        }
        returnPageParameters(request, listMenuItems);
        return mapping.findForward("menu");
    }

    private void initPageParameters(ActionForm form, HttpServletRequest request) {
        setPropertyToOrginate();
        userID = request.getParameter("userID");
    }

    private void setPropertyToOrginate() {
        userID = "";
    }

    private void createMenuItems(Statement stmt, ArrayList listMenuItems) throws SQLException {

    	String conditionSQL = "select 菜单编号 from sys角色菜单表 where 角色编号 in (" +
                              "select 角色编号 from sys用户角色表 where 用户编号=(" + userID + ")"
                              + ")";
        String sortSQL = " order by depth,sequenceNO";
        String sql = "select * from sys菜单表 " + " where menuID in (" + conditionSQL + ")" + sortSQL;
        ResultSet rs = stmt.executeQuery(sql);

        while (rs.next()) {
            listMenuItems.add("'" + DataFixing.trimNULL(rs.getString("menuID")) + "',"
                              + "'" + DataFixing.trimNULL(rs.getString("parentID")) + "',"
                              + "'" + DataFixing.trimNULL(rs.getString("name")) + "',"
                              + "'" + DataFixing.trimNULL(rs.getString("url")) + "',"
                              + "'" + DataFixing.trimNULL(rs.getString("title")) + "',"
                              + "'" + DataFixing.trimNULL(rs.getString("target")) + "',"
                              + "'" + DataFixing.trimNULL(rs.getString("icon")) + "',"
                              + "'" + DataFixing.trimNULL(rs.getString("iconOpen")) + "',"
                              + "'" + DataFixing.trimNULL(rs.getString("isOpened")) + "'");
        }
        rs.close();
    }

    private void returnPageParameters(HttpServletRequest request, ArrayList listMenuItems) {
        request.setAttribute("listMenuItems", listMenuItems);
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?