sql >> データベース >  >> RDS >> Mysql

カスタムクエリ(結合テーブル)からのデータをliferay検索コンテナに表示する

    nametitlestatus およびremarks フィールドはすべてStringコメントfor Objectをキャストする必要があるループ Stringとして 4つのArrayListは必要ありません このために。

    行タグは次のようになります。

    <liferay-ui:search-container-row className="java.lang.Object" modelVar="search">
    
        <%--
            Since an "Object[]" is nothing but an "Object", we first cast the "search"
            instance to an "Object[]" and then to a "String"
        --%>
        <liferay-ui:search-container-column-text name='name' value='<%= (String) ((Object[])search)[0] %>' /> 
        <liferay-ui:search-container-column-text name='title' value='<%= (String) ((Object[])search)[1] %>' /> 
        <liferay-ui:search-container-column-text name='status' value='<%= (String) ((Object[])search)[2] %>' /> 
        <liferay-ui:search-container-column-text name='remarks' value='<%= (String) ((Object[])search)[3] %>' /> 
    
    </liferay-ui:search-container-row>
    

    さあ、これでうまくいくはずです。

    よりクリーンな方法は、これらの値を格納するPOJOを定義して、POJOのリストを返すことです。私は2番目のアプローチを試していません。

    もう1つの標準的なアプローチは、エンティティの*Implのいずれかに追加のフィールドを含めることです。 次に、そのエンティティのリストを返します。あなたの場合、Studentがいると思います。 およびAttendance エンティティなので、フィールドstatusを入力できます &remarks StudentImplで 次に、List<Student>を返します またはfnameを入力します AttendanceImplList<Attendance>を返します ファインダー法から。 (の後に更新このコメント




    1. 正規表現を使用して複数一致文字列をフェッチする方法

    2. 単一の行をロックする方法

    3. ネストされたテーブル内に連想配列を入力します

    4. postgresql dbにログインする方法-セッションキル後(データベースのコピー用)