フリーマーカーリスト収集の重複排除、ハッシュセットの実装
2022-03-18 13:31:48
freemarkerでは、ハッシュを定義する方法はありますが、重み付けを解除する方法はありません、例えば、 <#assign myHash = { "name": "mouse", "price": 50 }>のように、動的にハッシュを構築することはできません。
通常、Javaのコードでは、セットコレクションやマップオブジェクトなどを使ってこれを処理します。
しかし、どうしても必要な場合は、次のコードのように、freemarker ファイルで行うこともできます。
introspectedTable.allColumns is the ArrayList collection passed in by java. Here is the de-duplication process
<#list introspectedTable.allColumns as allColumns>
<#list introspectedTable.allColumns as allColumns2>
<#if allColumns.fullyQualifiedJavaType.fullyQualifiedNameWithoutTypeParameters == allColumns2.fullyQualifiedJavaType. fullyQualifiedNameWithoutTypeParameters>
<#if allColumns_index==allColumns2_index>
import ${allColumns.fullyQualifiedJavaType.fullyQualifiedNameWithoutTypeParameters};
<#else>
<#break >
</#if>
</#if>
</#list>
</#list>
The result of the implementation is.
java.lang.Integerをインポートします。
java.lang.Stringをインポートします。
The last thing displayed is the content after the de-duplication, principle: using both value and _index together.
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ハートビート・エフェクトのためのHTML+CSS
-
HTML ホテル フォームによるフィルタリング
-
HTML+cssのボックスモデル例(円、半円など)「border-radius」使いやすい
-
HTMLテーブルのテーブル分割とマージ(colspan, rowspan)
-
ランダム・ネームドロッパーを実装するためのhtmlサンプルコード
-
Html階層型ボックスシャドウ効果サンプルコード
-
QQの一時的なダイアログボックスをポップアップし、友人を追加せずにオンラインで話す効果を達成する方法
-
sublime / vscodeショートカットHTMLコード生成の実装
-
HTMLページを縮小した後にスクロールバーを表示するサンプルコード
-
html のリストボックス、テキストフィールド、ファイルフィールドのコード例