1. Java / Говнокод #1556

    +71.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    List<AbstractPOJO> ordersList = getList();		
    int num = CollectionUtils.indexOf(ordersList, orders.getCurrentOrder());
    if (num > -1 && num < ordersList.size()) {
    	int objectsPerPageCount = orders.getObjectsPerPage();
    	for (int i = 0; i < ordersList.size(); i++) {
    		if (num >= objectsPerPageCount * i && num < objectsPerPageCount * (i + 1)) {
    			orders.setPage(i + 1);
    			break;
    		}
    	}
    }

    установка текущей страницы...
    переписалось в:
    List<AbstractPOJO> ordersList = getList();
    int num = CollectionUtils.indexOf(ordersList, orders.getCurrentOrder());
    if (num > -1) {
    orders.setPage(num / orders.getObjectsPerPage());
    }

    asdqwezx, 12 Августа 2009

    Комментарии (9)
  2. Java / Говнокод #1555

    +77.1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    private Date generateDate(int dateDay, int dateMonth) throws ParseException {
    		DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);
    		return df.parse(String.valueOf(generator.nextInt(dateDay) + 1) + "."
    			+ String.valueOf(dateMonth) + "." + DATE_YEAR);
    	}

    такое ощущение, что с незапамятных времён индусы перелелялись на русь...

    asdqwezx, 12 Августа 2009

    Комментарии (4)
  3. Java / Говнокод #1551

    +85.6

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    public class StringBufferDbBean {
    
    	public StringBufferDbBean() {
    	}
    
    	public String appendString(String string1, String string2) {
    		String string = null;
    		StringBuffer sb = new StringBuffer(string1);
    		sb.append(string2);
    		string = sb.toString();
    		return string;
    	}
    
    	public void appendString(StringBuffer strBuf, String string1, String string2) {
    		strBuf.append(string1);
    		strBuf.append(string2);
    	}
    
    	public void appendString(StringBuffer strBuf, String string1, String string2, String string3) {
    		strBuf.append(string1);
    		strBuf.append(string2);
    		strBuf.append(string3);
    	}
    
    	public void appendString(StringBuffer strBuf, String string1, String string2, String string3, String string4) {
    		strBuf.append(string1);
    		strBuf.append(string2);
    		strBuf.append(string3);
    		strBuf.append(string4);
    	}
    
    	public void appendString(StringBuffer strBuf, String string1, String string2, String string3, String string4,
    			String string5) {
    		strBuf.append(string1);
    		strBuf.append(string2);
    		strBuf.append(string3);
    		strBuf.append(string4);
    		strBuf.append(string5);
    	}
    
    	public void appendString(StringBuffer strBuf, String string1, String string2, String string3, String string4,
    			String string5, String string6) {
    		strBuf.append(string1);
    		strBuf.append(string2);
    		strBuf.append(string3);
    		strBuf.append(string4);
    		strBuf.append(string5);
    		strBuf.append(string6);
    	}
    
    	public void appendString(StringBuffer strBuf, String string1, String string2, String string3, String string4,
    			String string5, String string6, String string7) {
    		strBuf.append(string1);
    		strBuf.append(string2);
    		strBuf.append(string3);
    		strBuf.append(string4);
    		strBuf.append(string5);
    		strBuf.append(string6);
    		strBuf.append(string7);
    	}
    }

    А вот енто истинное восточное мастерство! Похоже китайцы совсем не в курсе, что строки однако уметь склеиватсо посредством оператора +, и исчо ж ведь есть и String.format. Поентому они создали свой, улучшенный, класс для сцепливания строк. Да в Sun совсем же ничиво не смыслят в етом деле:) Страшно представить функцию для присоединения скажем 50 строк.

    cheap_chinese, 12 Августа 2009

    Комментарии (19)
  4. Java / Говнокод #1550

    +83.1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    static {
    
    		ruleNum10 = new HashMap();
    		ruleNum10.put("0", "0");
    		ruleNum10.put("1", "1");
    		ruleNum10.put("2", "2");
    		ruleNum10.put("3", "3");
    		ruleNum10.put("4", "4");
    		ruleNum10.put("5", "5");
    		ruleNum10.put("6", "6");
    		ruleNum10.put("7", "7");
    		ruleNum10.put("8", "8");
    		ruleNum10.put("9", "9");
    
    		ruleNum16 = new HashMap();
    		ruleNum16.put("0", "0");
    		ruleNum16.put("1", "1");
    		ruleNum16.put("2", "2");
    		ruleNum16.put("3", "3");
    		ruleNum16.put("4", "4");
    		ruleNum16.put("5", "5");
    		ruleNum16.put("6", "6");
    		ruleNum16.put("7", "7");
    		ruleNum16.put("8", "8");
    		ruleNum16.put("9", "9");
    		ruleNum16.put("10", "10");
    		ruleNum16.put("11", "11");
    		ruleNum16.put("12", "12");
    		ruleNum16.put("13", "13");
    		ruleNum16.put("14", "14");
    		ruleNum16.put("15", "15");
    
    	}

    Очередной пример китайского героизма во владении копипейстом. Они похоже не знают о существовании цикла for и метода String.valueOf. А что если бы там было 200 елементов хотя бы?

    cheap_chinese, 12 Августа 2009

    Комментарии (10)
  5. Java / Говнокод #1549

    +74.7

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    Лучший индусский способ определения текущего трехбуквенного обозначения месяца:
    
    String currentMonth = ((String) monthMap.get(new Integer(today.getMonth()))).substring(0, 3);
    
    где
    
    monthMap:
    
    Map monthMap=new HashMap();	
    			
    monthMap.put(new Integer(Calendar.JANUARY), Constants.JANUARY);
    monthMap.put(new Integer(Calendar.FEBRUARY), Constants.FEBRUARY);
    monthMap.put(new Integer(Calendar.MARCH), Constants.MARCH);

    zavr, 12 Августа 2009

    Комментарии (0)
  6. Java / Говнокод #1545

    +69.9

    1. 1
    2. 2
    3. 3
    public void ejbPassivate() throws EJBException, RemoteException {
    		return;
    	}

    Истинный китайский девелопер никогда не доверяет компилятору! Ато если ж в функции тело пустое, мало ли, вдруг она никогда не возвратиться. Какой выход? Написать об ентом явно.

    cheap_chinese, 12 Августа 2009

    Комментарии (14)
  7. Java / Говнокод #1538

    +68.9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    public char getChar() throws ErrorLexAn {
    	delSpace();
    	int simb = p.bufStr[p.posStr] & 0xFF;
    	return charl = simb < 128 ? (char) simb :
    		(new String(new byte[]{
    			convert == false ? (byte) simb : arrayConv[simb]})).charAt(0);
    }

    Читает следующий символ из буфера (хранятся в байтах) и конвертит по таблице.
    Я сам джаву плохо знаю, но уверен, что byte -> char можно сконвертить как-то проще.

    Dimarius, 12 Августа 2009

    Комментарии (5)
  8. Java / Говнокод #1522

    +76.3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    try {
        ....
    } catch (Exception ex) {
        if (ex != null) {
            try {
                ex.printStackTrace();
            } catch(Exception ex1) {
                ....
            }
        }
    }

    Rudolf_Abel, 11 Августа 2009

    Комментарии (11)
  9. Java / Говнокод #1516

    +74

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    StringBuffer sql = new StringBuffer();
            sql.append("INSERT INTO ");
            sql.append("    APPLIED_TABLE ");
            sql.append(" ( ");
            sql.append("    PROJECT_ID, ");
            sql.append("    APPLIED_ID, ");
            sql.append("    APPLIED_DAY, ");
            sql.append("    USER_ID, ");
            sql.append("    APPLIED_NAME, ");
            sql.append("    APPLIED_LIMIT, ");
            sql.append("    APPLIED_COMMENT, ");
            sql.append("    CATEGORY_ID, ");
            sql.append("    DB_ID, ");
            sql.append("    EXCEL_ID, ");
            sql.append("    UPDATE_DATE, ");
            sql.append("    UPDATE_NAME ");
            sql.append(" ) VALUES ( ");
            sql.append("    ?, ");
            sql.append("    ?, ");
            sql.append("    SYSDATE, ");
            sql.append("    ?, ");
            sql.append("    ?, ");
            sql.append("    ?, ");
            sql.append("    ?, ");
            sql.append("    ?, ");
            sql.append("    ?, ");
            sql.append("    ?, ");
            sql.append("    SYSDATE, ");
            sql.append("    ? ");
            sql.append(" ) ");

    Китайцы составляют SQL запрос. Обратите внимание, что буфер склеиваетсо токо из литералов. Что мешало им написать просто строку с содержимым объединяющим енто все, остается загадкой.

    cheap_chinese, 11 Августа 2009

    Комментарии (13)
  10. Java / Говнокод #1503

    +70.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    public class SHcoGlobalInf extends Hashtable {
    	//много-много констант, но в силу ограничений обьема я их сокращаю
    	public static final String KEY_KAKKO_MAE   = "KEY_KAKKO_S";
        public static final String KEY_KAKKO_MAE_0 = "KEY_KAKKO_S0";
        // ..... исчо набор "как"
    	public static final String KEY_KAKKO_MAE_K = "KEY_KAKKO_SK";
    	public static final String KEY_KAKKO_ATO   = "KEY_KAKKO_E";
    	public static final String KEY_KAKKO_ATO_0 = "KEY_KAKKO_E0";
    	//набор "каков-атов"
    	public static final String KEY_KAKKO_ATO_K = "KEY_KAKKO_EK";
    	public static final String KEY_HATUHENDEN_CD = "KEY_HATUHENDEN_CD";
    	public static final String KEY_SODEN_CD = "KEY_SODEN_CD";
        public static final String KEY_BUTTON_W = "KEY_BUTTON_W";
        public static final String KEY_BUTTON_H = "KEY_BUTTON_H";
        public static final String KEY_TOTAL     = "KEY_TOTAL";
        public static final String KEY_BUNRUI_CD = "KEY_BUNRUI_CD";
        public static final String KEY_SIZAI_SVR_URL = "comSizaiSvrUrl";
        public static final String KEY_BIZ_LIMIT_RANGE_MINUTE = "KEY_BIZ_LIMIT_RANGE_MINUTE";
        public static final String KEY_SIZAI_SVR_DIRECT_URL = "comSizaiSvrDirectUrl";
        public static final String KEY_DOMAIN_MOBILE = "comPsmoDomainMobile";
        public static final String KEY_TRAINING_MODE = "comTrainingMode";
        public static final String KEY_BATCH_HOME = "comBatchHome";
    
        public String getKakkoStart(String strShuyakuCd) {
            StringBuffer strAttributeName = new StringBuffer();
            strAttributeName.append(KEY_KAKKO_MAE);
            strAttributeName.append(strShuyakuCd);
            Object obj = this.get(strAttributeName.toString());
            if(obj instanceof String) {
                return (String) obj;
            } else {
                return "";
            }
        }
    
        public String getKakkoEnd(String strShuyakuCd) {
            StringBuffer strAttributeName = new StringBuffer();
            strAttributeName.append(KEY_KAKKO_ATO);
            strAttributeName.append(strShuyakuCd);
            Object obj = this.get(strAttributeName.toString());
            if(obj instanceof String) {
                return (String) obj;
            } else {
                return "";
            }
        }
    
        public String parseKakko(String strValue, String strShuyakuCd) {
            String strResult = "";
            if(strValue instanceof String) {
                if(!strValue.equals("")) {
                    StringBuffer outValue = new StringBuffer();
                    outValue.append(this.getKakkoStart(strShuyakuCd));
                    outValue.append(strValue);
                    outValue.append(this.getKakkoEnd(strShuyakuCd));
                    return outValue.toString();
                }
            }
            return strResult;
        }
    
        public String getCodeSet(String strKey) {
            Object obj = this.get(strKey);
            return (String) obj;
        }
    
        public String getHostUrl() {
            StringBuffer sbHostUrl = new StringBuffer();
            
            sbHostUrl.append((String)this.get("KEY_PROTOCOL"));
            sbHostUrl.append((String)this.get("comHstAplSvr"));
            sbHostUrl.append(".");
            sbHostUrl.append((String)this.get("comPsmoDomain"));
    
            return sbHostUrl.toString();
        }
    }

    Пример, как нельзя подходящий местному сайту. Почему? Обратите внимание на названия констант и методов. Они берут "каки", т.е. говно.
    Ето чудо наваяно дишовыми китайцами, мною сокращено ибо со всеми константами занимало 500 строк. Также важно заметить, что етот какоед наследуется от хештейбла, по видимому в целях поднятия производительности:)

    cheap_chinese, 10 Августа 2009

    Комментарии (12)