僕が絶句したJavaのコード

適当に書き連ねる也。

たぶんコード見ただけでJavaを知ってる人は問題に気付くと思うのでコメントは少なめで。

ちなみにコードそのまんまじゃありません。(念のため)

決して僕がコーディングした訳ではありません。(念のため)

コードは適当に書いたので動かないかもしれませんが、

そんな事は今回どーだっていいのです。

1. String

public List find(Bean param) throws SQLException{
    String sql = " select c1, c2, c3, c4";
    sql += " from table1 where";
    if ("XXXX" = param.getCode()){
      sql += " code = '" + param.getHoge() + "'"
    }else {
      sql += " code = '" + param.getFoo() + "'"
    }
    // 以下略
}

・・・オブジェクトって知ってますか?

2. 変数

BigDecimal dec = new BigDecimal("0");
dec = dec.add(bean.getKingaku1());
dec = dec.add(bean.getKingaku2());
// PDFのフィールドに出力。略
dec = new BigDecimal("0");
dec = dec.add(bean.getKingaku3());
dec = dec.add(bean.getKingaku4());
// PDFのフィールドに出力。略
dec = new BigDecimal("0");
dec = dec.add(bean.getKingaku5());
dec = dec.add(bean.getKingaku6());
// 以下、同じようなコード

・・・使い回すな。

3. 定数

public interface Constants{
    public static final String HOGE1 = "XX";
    public static final String HOGE2 = "XXX";
    public static final String FOO = "MMMM";
    public static final String CODE = "ABCD";
    // 600行くらい略
    public static final String XXX = "XXX";
}

public interface AAConstants extends Constants{
    public static final String CUSTOMER = "AAAA";
    public static final String CUSTOMER2 = "BBBB";
    // 100行くらい略
    public static final String PROVIDER = "XXX";
}

・・・かぶりすぎ

・・・インターフェイス涙目

4. コメント

    Connection con = ConnectionManager.getConnection();
    // SQLだよ
    StringBuffer sb = new StringBuffer();
    // (怒)by xxxxx
    //    sb.append("select *");
    sb.append("select c1, c2, c3 + c4 as c3 ");
    // 略
    // ぐるぐる~
    while(rs.next()){
        Bean bean = null;

        /**
        * Adapter使います。
        * YYYY/MM/DD by zzzzz
        */
        if (rs.getString(5).equals("1")){
            bean = new BeanA();
        }else {
            bean = new BeanB();
        }
    }
    // なんでここでロールバック?コミットしましょ♪ by xxxxx(はぁと
    con.commit();
    //    con.rollback();

カオス。突っ込みどころが多すぎる。

5. JSP

<% HashMap input = request.getAttribute("INPUT_MAP"); %>
<% HashMap disable = request.getAttribute("DISABLE_MAP"); %>
<input type="text" value="<% (String)input.get("TEXT1"); %>" <% disable.get("TEXT1"); %>/>
<input type="text" value="<% (String)input.get("TEXT2"); %>" <% disable.get("TEXT2"); %>/>
<input type="text" value="<% (String)input.get("TEXT3"); %>" <% disable.get("TEXT3"); %>/>

Beanを使え、Beanを。

日々、こんなコードとにらめっこしてます・・・orz

このエントリーをはてなブックマークに追加
comments powered by Disqus