よろしくお願いいたします。
Web上で稼動する登録システムを作っています。
下記のメソッドは、
「新規登録したとき」だけ、新しいレコードIDを割り当ててい句というものです。
たとえば、データが0であった場合(登録件数0)であれば、「1」番からとなり、
2,3,4…と一つずつ増えていく形で採番していきます。
これを、「1」からでなく「100」から採番していくためにはどのようなコードを書き足せば
(または変更)すればよいか、有職者の方々、ご教示をお願いいたします。
/** * レコードIDの発行 * 新規データのときだけ実行します。 * * @param entity */ public static void issueRecordNo(Entity entity) { // パラメータ不良か新規でないとき抜ける if ((entity == null) || (entity.getId() != null)) { return; } // 画面アクセスでなく、record_id 設定済みなら抜けます if ((!EntityHelper.isUIAccess()) && (entity.getValue("record_id") != null)) { return; } // ser の Max 取得 long ser = 0; String val = null; EntityManager em = ServiceLocator.getInstance().getEntityManager(); Query q = Query.newQuery( "select max(record_id) from hoge.t_anken " ); SearchResult<Object[]> sres = em.search(q); if (sres != null) { Object[] e = (Object[])sres.getFirst(); // Max だと該当なしは null が戻る if (e[0] != null) { val = (String)e[0]; } } if (val != null) { ser = Long.parseLong(val); } ser += 1; val = String.valueOf(ser); entity.setValue("record_id", val); }
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/04/12 08:18
2016/04/12 08:24
2016/04/12 09:04