1

休止状態を使用して Db から DB レコードをフェッチするための整数としての手段を持つメソッドを作成しました。今、同じシナリオの文字列型の引数があります。Integer と String をサポートするために、そのメソッド シグネチャを Serializable に変更できますか。メソッドの引数として Serializable を使用している場合、問題はありますか?

public Object get(final Class classObject, final Serializable id)
            throws PersistenceException {
        LOGGER.debug(LOG_PREFIX + "get::Begin");
        Object obj = this.runInSession(new PersistentUnitOfWork() {
            public Object run() throws PersistenceException {
                return getPersistenceContext().get(classObject, id);
            }
        });
        LOGGER.debug(LOG_PREFIX + "get::End");
        return obj;
    }

これにより問題が発生しますか?

4

1 に答える 1

0

Hibernate API を使用している場合、セッションの get メソッドはシリアライズ可能なタイプの ID をサポートします。これがAPIによって公式にサポートされている場合、これに伴う問題はないと思います

http://docs.jboss.org/hibernate/orm/3.5/api/org/hibernate/Session.html#get(java.lang.Class,java.io.Serializable

使用できない場合、そのような API を使用する意味はありません。

于 2012-07-18T09:09:59.963 に答える