import java.sql.*; public class QueryAdminMenus4 { public static void main(String[] args) throws Exception { String nameUpgrade = "\u79df\u6237\u5e93\u7ed3\u6784\u5347\u7ea7"; String nameDict = "\u79df\u6237\u5b57\u5178"; String url = "jdbc:mysql://cq-cdb-8fjmemkb.sql.tencentcdb.com:27220/ylrz_saas?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8"; try (Connection c = DriverManager.getConnection(url, "root", "Ylrz_1q2w3e4r5t6y"); Statement st = c.createStatement()) { System.out.println("=== exact name: " + nameUpgrade + " ==="); try (PreparedStatement ps = c.prepareStatement( "SELECT menu_id, menu_name, parent_id, path, component, icon FROM sys_menu WHERE menu_name=?")) { ps.setString(1, nameUpgrade); try (ResultSet rs = ps.executeQuery()) { while (rs.next()) { System.out.printf("%s | %s | parent=%s | path=%s | comp=%s | icon=%s%n", rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5), rs.getString(6)); } } } System.out.println("\n=== menu_name like tenant dict ==="); try (ResultSet rs = st.executeQuery( "SELECT menu_id, menu_name, parent_id, path, component, icon FROM sys_menu " + "WHERE menu_name LIKE '%" + nameDict + "%' OR component LIKE '%tenant/dict%' " + "OR component LIKE '%tenantDict%' ORDER BY menu_id")) { while (rs.next()) { System.out.printf("%s | %s | parent=%s | path=%s | comp=%s%n", rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5)); } } System.out.println("\n=== menus with empty icon on visible C/M (icon blank in UI?) ==="); try (ResultSet rs = st.executeQuery( "SELECT menu_id, menu_name, parent_id, path, component, icon, menu_type FROM sys_menu " + "WHERE status='0' AND visible='0' AND menu_type IN ('C','M') " + "AND (icon IS NULL OR TRIM(icon)='' OR icon='#') ORDER BY parent_id, order_num")) { while (rs.next()) { System.out.printf("%s | %s | parent=%s | path=%s | icon=[%s]%n", rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5)); } } System.out.println("\n=== parent menus (M) with empty icon ==="); try (ResultSet rs = st.executeQuery( "SELECT menu_id, menu_name, path, icon FROM sys_menu " + "WHERE menu_type='M' AND visible='0' AND status='0' " + "AND (icon IS NULL OR TRIM(icon)='' OR icon='#') ORDER BY menu_id")) { while (rs.next()) { System.out.printf("%s | %s | path=%s | icon=[%s]%n", rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4)); } } System.out.println("\n=== lobster + saas menus icon check ==="); try (ResultSet rs = st.executeQuery( "SELECT menu_id, menu_name, path, component, icon FROM sys_menu " + "WHERE parent_id IN (2864,2820,2802) OR component LIKE 'saas/%' OR component LIKE 'lobster/%' " + "ORDER BY parent_id, order_num")) { while (rs.next()) { String icon = rs.getString(5); if (icon == null || icon.isEmpty() || "#".equals(icon)) { System.out.printf("MISSING_ICON %s | %s | comp=%s%n", rs.getString(1), rs.getString(2), rs.getString(4)); } } } } } }