📄 indexmenudao.java
字号:
String fieldType = ColumnType.getFieldType(Database.dbType, rsmd, i); if (fieldType == null) continue; if ("Timestamp".equals(fieldType)) { element.put(fieldName, rs.getTimestamp(columnName)); } else if ("String".equals(fieldType)) { String value = Function.readDBEncode(rs.getString(columnName)); if (value == null) value = ""; element.put(fieldName, value); } else if ("int".equals(fieldType)) { element.put(fieldName, String.valueOf(rs.getInt(columnName))); } else if ("long".equals(fieldType)) { element.put(fieldName, String.valueOf(rs.getLong(columnName))); } else if ("float".equals(fieldType)) { element.put(fieldName, String.valueOf(rs.getFloat(columnName))); } } list.add(element); } return list; } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute queryBySql mothod :\n" + e); throw new SysException("SQLException while execute queryBySql mothod :\n" + e); } finally { closeResultSet(rs); closeStatement(stmt); closeConnection(dbConnection); } } public static Collection queryBySql(String sql, int beginRow, int endRow) throws SysException { Connection dbConnection = null; Statement stmt = null; ResultSet rs = null; ArrayList list = new ArrayList(); try { dbConnection = getDBConnection(); stmt = dbConnection.createStatement(); rs = stmt.executeQuery(sql); ResultSetMetaData rsmd = rs.getMetaData(); int row = 0; while ( rs.next() ) { if (++row < beginRow) continue; if (row > endRow) break; Hashtable element = new Hashtable(); for (int i = 1; i <= rsmd.getColumnCount(); i++) { String columnName = rsmd.getColumnName(i); String fieldName = Function.format(columnName); String fieldType = ColumnType.getFieldType(Database.dbType, rsmd, i); if (fieldType == null) continue; if ("Timestamp".equals(fieldType)) { element.put(fieldName, rs.getTimestamp(columnName)); } else if ("String".equals(fieldType)) { String value = Function.readDBEncode(rs.getString(columnName)); if (value == null) value = ""; element.put(fieldName, value); } else if ("int".equals(fieldType)) { element.put(fieldName, String.valueOf(rs.getInt(columnName))); } else if ("long".equals(fieldType)) { element.put(fieldName, String.valueOf(rs.getLong(columnName))); } else if ("float".equals(fieldType)) { element.put(fieldName, String.valueOf(rs.getFloat(columnName))); } } list.add(element); } return list; } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute queryBySql mothod :\n" + e); throw new SysException("SQLException while execute queryBySql mothod :\n" + e); } finally { closeResultSet(rs); closeStatement(stmt); closeConnection(dbConnection); } } public static int getRowCountBySql(String sql) throws SysException { Connection dbConnection = null; Statement stmt = null; ResultSet rs = null; int rowCount = 0; try { dbConnection = getDBConnection(); stmt = dbConnection.createStatement(); rs = stmt.executeQuery(sql); if ( rs.next() ) { rowCount = rs.getInt(1); }else{ Debug.println(sql + "\n" + "ERROR in get row count!!"); throw new SysException("ERROR in get row count!!"); } return rowCount; } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute getRowCountBySql mothod :\n" + e); throw new SysException("SQLException while execute getRowCountBySql mothod :\n" + e); } finally { closeResultSet(rs); closeStatement(stmt); closeConnection(dbConnection); } } public static Collection queryAll() throws SysException { String sql = "SELECT * FROM WAP_INDEX_MENU"; return queryBySql(sql); } public static Collection queryAll(int beginRow, int endRow) throws SysException { String sql = "SELECT * FROM WAP_INDEX_MENU"; return queryBySql(sql, beginRow, endRow); } public static int getRowCountOfAll() throws SysException { String sql = "SELECT COUNT(*) FROM WAP_INDEX_MENU"; return getRowCountBySql(sql); } public static IndexMenuModel toModel(Hashtable element) { IndexMenuModel model = new IndexMenuModel(); model.setId(Integer.parseInt((String)element.get("id"))); model.setMenuName((String)element.get("menuName")); model.setMenuUrl((String)element.get("menuUrl")); model.setMenuImg(Integer.parseInt((String)element.get("menuImg"))); model.setDispOrder(Integer.parseInt((String)element.get("dispOrder"))); model.setMenuType(Integer.parseInt((String)element.get("menuType"))); model.setDispFlag(Integer.parseInt((String)element.get("dispFlag"))); model.setChannelId(Integer.parseInt((String)element.get("channelId"))); return model; } public static Collection allToModel(Collection coll) { Collection value = new ArrayList(); Iterator it = coll.iterator(); while (it.hasNext()) { value.add(toModel((Hashtable)it.next())); } return value; } public static int getSequenceNextValue() throws SysException { String sql = "SELECT * FROM WAP_SEQUENCE WHERE TABLE_NAME = 'WAP_INDEX_MENU'"; Connection dbConnection = null; Statement stmt = null; ResultSet rs = null; int lastValue = 1; try { dbConnection = getDBConnection(); stmt = dbConnection.createStatement(); rs = stmt.executeQuery(sql); if ( rs.next() ) { lastValue = rs.getInt("LAST_VALUE"); int minValue = rs.getInt("MIN_VALUE"); int maxValue = rs.getInt("MAX_VALUE"); int incrementBy = rs.getInt("INCREMENT_BY"); int cycle = rs.getInt("CYCLE"); if (lastValue < 0) { Debug.println("id last value can't smaller than 0"); throw new SysException("id last value can't smaller than 0"); } if (minValue < 0) { Debug.println("id min value can't smaller than 0"); throw new SysException("id min value can't smaller than 0"); } if (maxValue < 0) { Debug.println("id max value can't smaller than 0"); throw new SysException("id max value can't smaller than 0"); } if (incrementBy < 1) { Debug.println("id increment value can't smaller than 1"); throw new SysException("id increment value can't smaller than 1"); } if (cycle != 0 && cycle != 1) { Debug.println("id cycle value error, it can be 0 or 1 only"); throw new SysException("id cycle value error, it can be 0 or 1 only"); } if (lastValue < minValue) { Debug.println("id value is " + lastValue + ": \n" + "id value can't smaller than min value"); throw new SysException("id value can't smaller than min value"); } if (minValue >= maxValue) { Debug.println("id max value must bigger than min value"); throw new SysException("id max value must bigger than min value"); } if (lastValue > maxValue) { if (cycle == 0) { Debug.println("id value is " + lastValue + ": \n" + "id value exceeds max value"); throw new SysException("id value exceeds max value"); } else { lastValue = minValue; } } sql = "UPDATE WAP_SEQUENCE SET LAST_VALUE = " + (lastValue + incrementBy) + " WHERE TABLE_NAME = 'WAP_INDEX_MENU'"; stmt.executeUpdate(sql); }else{ sql = "INSERT INTO WAP_SEQUENCE (TABLE_NAME, LAST_VALUE, MIN_VALUE, MAX_VALUE, INCREMENT_BY, CYCLE) VALUES ('WAP_INDEX_MENU', 2, 1, 999999999, 1, 1)"; stmt.executeUpdate(sql); } return lastValue; } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute getRowCountBySql method :\n" + e); throw new SysException("SQLException while execute getRowCountBySql method :\n" + e); } finally { closeResultSet(rs); closeStatement(stmt); closeConnection(dbConnection); } } protected static String getInsertSQL(IndexMenuModel model) { String sql = ""; if (Database.dbType == DBType.ORACLE) { sql = "INSERT INTO WAP_INDEX_MENU (ID, MENU_NAME, MENU_URL, MENU_IMG, DISP_ORDER, MENU_TYPE, DISP_FLAG, CHANNEL_ID) VALUES (" + model.getId() + ", '" + Function.writeDBEncode(model.getMenuName()) + "', '" + Function.writeDBEncode(model.getMenuUrl()) + "', " + model.getMenuImg() + ", " + model.getDispOrder() + ", " + model.getMenuType() + ", " + model.getDispFlag() + ", " + model.getChannelId() + ")"; } else if (Database.dbType == DBType.SQLSERVER) { sql = "INSERT INTO WAP_INDEX_MENU (ID, MENU_NAME, MENU_URL, MENU_IMG, DISP_ORDER, MENU_TYPE, DISP_FLAG, CHANNEL_ID) VALUES (" + model.getId() + ", '" + Function.writeDBEncode(model.getMenuName()) + "', '" + Function.writeDBEncode(model.getMenuUrl()) + "', " + model.getMenuImg() + ", " + model.getDispOrder() + ", " + model.getMenuType() + ", " + model.getDispFlag() + ", " + model.getChannelId() + ")"; } else if (Database.dbType == DBType.MYSQL) { sql = "INSERT INTO WAP_INDEX_MENU (ID, MENU_NAME, MENU_URL, MENU_IMG, DISP_ORDER, MENU_TYPE, DISP_FLAG, CHANNEL_ID) VALUES (" + model.getId() + ", '" + Function.writeDBEncode(model.getMenuName()) + "', '" + Function.writeDBEncode(model.getMenuUrl()) + "', " + model.getMenuImg() + ", " + model.getDispOrder() + ", " + model.getMenuType() + ", " + model.getDispFlag() + ", " + model.getChannelId() + ")"; } return sql; } protected static String getUpdateSQL(IndexMenuModel model) { String sql = ""; if (Database.dbType == DBType.ORACLE) { sql = "UPDATE WAP_INDEX_MENU SET MENU_NAME = '" + Function.writeDBEncode(model.getMenuName()) + "', MENU_URL = '" + Function.writeDBEncode(model.getMenuUrl()) + "', MENU_IMG = " + model.getMenuImg() + ", DISP_ORDER = " + model.getDispOrder() + ", MENU_TYPE = " + model.getMenuType() + ", DISP_FLAG = " + model.getDispFlag() + ", CHANNEL_ID = " + model.getChannelId() + " WHERE ID = " + model.getId(); } else if (Database.dbType == DBType.SQLSERVER) { sql = "UPDATE WAP_INDEX_MENU SET MENU_NAME = '" + Function.writeDBEncode(model.getMenuName()) + "', MENU_URL = '" + Function.writeDBEncode(model.getMenuUrl()) + "', MENU_IMG = " + model.getMenuImg() + ", DISP_ORDER = "
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -