📄 groupdao.java
字号:
package com.sxit.wap.group;import java.sql.*;import java.util.*;import com.sxit.wap.common.*;import com.sxit.wap.exception.*;public class GroupDao { public static String tableName = "WAP_GROUP"; public static GroupModel insert(GroupModel model) throws SysException,UpdateException,AppException { if (!GroupBean.isValidData(model)) { Debug.println(model.toString() + "\n" + "Illegal data values for insert"); throw new AppException("Illegal data values for insert"); } String sql = getInsertSQL(model); Connection dbConnection = null; Statement stmt = null; try { dbConnection = getDBConnection(); stmt = dbConnection.createStatement(); int resultCount = stmt.executeUpdate(sql); if ( resultCount != 1 ) { Debug.println(sql + "\n" + "ERROR in INSERT !! resultCount = " + resultCount); throw new UpdateException("ERROR in INSERT !! resultCount = " + resultCount); } return model; } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute insert method :\n" + e); throw new SysException("SQLException while execute insert method :\n" + e); } finally { closeStatement(stmt); closeConnection(dbConnection); } } public static GroupModel insert(GroupModel model, Connection dbConnection) throws SysException,UpdateException,AppException { if (!GroupBean.isValidData(model)) { Debug.println(model.toString() + "\n" + "Illegal data values for insert"); throw new AppException("Illegal data values for insert"); } String sql = getInsertSQL(model); Statement stmt = null; try { stmt = dbConnection.createStatement(); int resultCount = stmt.executeUpdate(sql); if ( resultCount != 1 ) { Debug.println(sql + "\n" + "ERROR in INSERT !! resultCount = " + resultCount); throw new UpdateException("ERROR in INSERT !! resultCount = " + resultCount); } return model; } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute insert method :\n" + e); throw new SysException("SQLException while execute insert method :\n" + e); } finally { closeStatement(stmt); } } public static GroupModel update(GroupModel model) throws SysException,UpdateException,AppException { if (!GroupBean.isValidData(model)) { Debug.println(model.toString() + "\n" + "Illegal data values for update"); throw new AppException("Illegal data values for update"); } String sql = getUpdateSQL(model); Connection dbConnection = null; Statement stmt = null; try { dbConnection = getDBConnection(); stmt = dbConnection.createStatement(); int resultCount = stmt.executeUpdate(sql); if ( resultCount != 1 ) { Debug.println(sql + "\n" + "ERROR in UPDATE !! resultCount = " + resultCount); throw new UpdateException("ERROR in UPDATE !! resultCount = " + resultCount); } return model; } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute update mothod :\n" + e); throw new SysException("SQLException while execute update mothod :\n" + e); } finally { closeStatement(stmt); closeConnection(dbConnection); } } public static GroupModel update(GroupModel model, Connection dbConnection) throws SysException,UpdateException,AppException { if (!GroupBean.isValidData(model)) { Debug.println(model.toString() + "\n" + "Illegal data values for update"); throw new AppException("Illegal data values for update"); } String sql = getUpdateSQL(model); Statement stmt = null; try { stmt = dbConnection.createStatement(); int resultCount = stmt.executeUpdate(sql); if ( resultCount != 1 ) { Debug.println(sql + "\n" + "ERROR in UPDATE !! resultCount = " + resultCount); throw new UpdateException("ERROR in UPDATE !! resultCount = " + resultCount); } return model; } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute update mothod :\n" + e); throw new SysException("SQLException while execute update mothod :\n" + e); } finally { closeStatement(stmt); } } public static void delete(int id) throws SysException,UpdateException,AppException { String sql = getDeleteSQL(id); Connection dbConnection = null; Statement stmt = null; try { dbConnection = getDBConnection(); stmt = dbConnection.createStatement(); int resultCount = stmt.executeUpdate(sql); if ( resultCount != 1 ) { Debug.println(sql + "\n" + "ERROR in DELETE !! resultCount = " + resultCount); throw new UpdateException("ERROR in DELETE !! resultCount = " + resultCount); } } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute delete mothod :\n" + e); throw new SysException("SQLException while execute delete mothod :\n" + e); } finally { closeStatement(stmt); closeConnection(dbConnection); } } public static void delete(int id, Connection dbConnection) throws SysException,UpdateException,AppException { String sql = getDeleteSQL(id); Statement stmt = null; try { stmt = dbConnection.createStatement(); int resultCount = stmt.executeUpdate(sql); if ( resultCount != 1 ) { Debug.println(sql + "\n" + "ERROR in DELETE !! resultCount = " + resultCount); throw new UpdateException("ERROR in DELETE !! resultCount = " + resultCount); } } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute delete mothod :\n" + e); throw new SysException("SQLException while execute delete mothod :\n" + e); } finally { closeStatement(stmt); } } public static void delete(int[] ids) throws SysException,UpdateException,AppException { String sql = getDeleteSQL(ids); Connection dbConnection = null; Statement stmt = null; try { dbConnection = getDBConnection(); stmt = dbConnection.createStatement(); int resultCount = stmt.executeUpdate(sql); if ( resultCount != ids.length ) { Debug.println(sql + "\n" + "ERROR in DELETE !! resultCount = " + resultCount); throw new UpdateException("ERROR in DELETE !! resultCount = " + resultCount); } } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute delete mothod :\n" + e); throw new SysException("SQLException while execute delete mothod :\n" + e); } finally { closeStatement(stmt); closeConnection(dbConnection); } } public static void delete(int[] ids, Connection dbConnection) throws SysException,UpdateException,AppException { String sql = getDeleteSQL(ids); Statement stmt = null; try { stmt = dbConnection.createStatement(); int resultCount = stmt.executeUpdate(sql); if ( resultCount != ids.length ) { Debug.println(sql + "\n" + "ERROR in DELETE !! resultCount = " + resultCount); throw new UpdateException("ERROR in DELETE !! resultCount = " + resultCount); } } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute delete mothod :\n" + e); throw new SysException("SQLException while execute delete mothod :\n" + e); } finally { closeStatement(stmt); } } public static GroupModel findByPK(int id) throws SysException,FinderException { String sql = getFindByPKSQL(id); Connection dbConnection = null; Statement stmt = null; ResultSet rs = null; try { dbConnection = getDBConnection(); stmt = dbConnection.createStatement(); rs = stmt.executeQuery(sql); if ( !rs.next() ) { Debug.println(sql + "\n" + "No record for primary key " + id); throw new FinderException("No record for primary key " + id); } GroupModel model = new GroupModel(); model.setId(rs.getInt("ID")); model.setGroupName(Function.readDBEncode(rs.getString("GROUP_NAME"))); model.setGroupPwd(Function.readDBEncode(rs.getString("GROUP_PWD"))); model.setGroupDescribe(Function.readDBEncode(rs.getString("GROUP_DESCRIBE"))); model.setGroupRegdate(rs.getTimestamp("GROUP_REGDATE")); return model; } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute findByPK mothod :\n" + e); throw new SysException("SQLException while execute findByPK mothod :\n" + e); } finally { closeResultSet(rs); closeStatement(stmt); closeConnection(dbConnection); } } public static int updateBySql(String sql) throws SysException { Connection dbConnection = null; Statement stmt = null; try { dbConnection = getDBConnection(); stmt = dbConnection.createStatement(); return stmt.executeUpdate(sql); } catch(SQLException e) { Debug.println(sql + "\n" + "SQLException while execute updateBySql mothod :\n" + e); throw new SysException("SQLException while execute updateBySql mothod :\n" + e); } finally { closeStatement(stmt); closeConnection(dbConnection); } } public static int updateBySql(String sql, Connection dbConnection) throws SysException { Statement stmt = null; try { stmt = dbConnection.createStatement(); return stmt.executeUpdate(sql); } catch(SQLException e) { Debug.println(sql + "\nSQLException while execute updateBySql mothod :\n" + e); throw new SysException("SQLException while execute updateBySql mothod :\n" + e); } finally { closeStatement(stmt); } } public static Collection queryBySql(String sql) 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(); while ( rs.next() ) { 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 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);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -