jspの小さなテーブルに分割する必要がある大きなデータテーブルがあります。テーブルはグループタイプに従って作成されます。それを理解しようと時間を費やしましたが、フルーツタイプのグループごとにjspのリストをフィルタリングすることができませんでした。jspのグループに従って複数のhtmlテーブルにデータを分割
@RequestMapping(value = { "dynamicFruitSettings" }, method = RequestMethod.GET)
public ModelAndView getDynamicComponents(Model model) {
LOG.debug("Entering fruit components page");
ModelAndView mav = new ModelAndView();
ArrayList<DynamicFruitSettings> resultList = null;
try {
resultList = (ArrayList<DynamicFruitSettings>) dynamicFruitService.loadAllFruitComponents();
mav.addObject(resultList);
} catch (Exception ex) {
ex.printStackTrace();
}
return new ModelAndView("fruitComponents" , "listFruitComponents", resultList);
}
@Entity
@Table(name = "fruits_components")
public class DynamicFruitSettings {
/** The pk1. */
@Id
@SequenceGenerator(name = "fruits_components_seq", sequenceName = "fruits_components_seq", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "fruits_components_seq")
private Long pk1;
private String fruit_type;
private String component_role;
private Double fruit_wt;
//getters and setters omitted for brevity
JSP JSPでの私の最終的な外観は、以下の
.divTable {
display: table;
width: 100%;
}
.divTableRow {
display: table-row;
}
.divTableHeading {
background-color: #EEE;
display: table-header-group;
}
.divTableCell,
.divTableHead {
border: 1px solid #999999;
display: table-cell;
padding: 3px 10px;
}
.divTableHeading {
background-color: #EEE;
display: table-header-group;
font-weight: bold;
}
.divTableFoot {
background-color: #EEE;
display: table-footer-group;
font-weight: bold;
}
.divTableBody {
display: table-row-group;
}
<div class="divTable">
<div class="divTableHeading">Banana</div>
<div class="divTableBody">
<div class="divTableRow">
<div class="divTableCell"> shake</div>
<div class="divTableCell"> 10</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> ice cream</div>
<div class="divTableCell"> 20</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> cake</div>
<div class="divTableCell"> 40</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> candy</div>
<div class="divTableCell"> 5</div>
</div>
</div>
</div>
<br>
<div class="divTable">
<div class="divTableHeading"> Peach</div>
<div class="divTableBody">
<div class="divTableRow">
<div class="divTableCell"> shake</div>
<div class="divTableCell"> 13</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> ice cream</div>
<div class="divTableCell"> 30</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> cake</div>
<div class="divTableCell"> 90</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> candy</div>
<div class="divTableCell"> 25</div>
</div>
</div>
</div>
<br>
<div class="divTable">
<div class="divTableHeading"> Apple</div>
<div class="divTableBody">
<div class="divTableRow">
<div class="divTableCell"> shake</div>
<div class="divTableCell"> 19</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> ice cream</div>
<div class="divTableCell"> 20</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> cake</div>
<div class="divTableCell"> 40</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> candy</div>
<div class="divTableCell"> 15</div>
</div>
</div>
</div>
<br>
/* DivTable.com */
.divTable {
display: table;
width: 100%;
}
.divTableRow {
display: table-row;
}
.divTableHeading {
background-color: #EEE;
display: table-header-group;
}
.divTableCell,
.divTableHead {
border: 1px solid #999999;
display: table-cell;
padding: 3px 10px;
}
.divTableHeading {
background-color: #EEE;
display: table-header-group;
font-weight: bold;
}
.divTableFoot {
background-color: #EEE;
display: table-footer-group;
font-weight: bold;
}
.divTableBody {
display: table-row-group;
}
<div class="divTable">
<div class="divTableHeading"> Fruits</div>
<div class="divTableBody">
<div class="divTableRow">
<div class="divTableCell"> shake</div>
<div class="divTableCell"> 10</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> ice cream</div>
<div class="divTableCell"> 20</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> cake</div>
<div class="divTableCell"> 40</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> candy</div>
<div class="divTableCell"> 5</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> shake</div>
<div class="divTableCell"> 13</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> ice cream</div>
<div class="divTableCell"> 30</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> cake</div>
<div class="divTableCell"> 90</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> candy</div>
<div class="divTableCell"> 25</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> shake</div>
<div class="divTableCell"> 19</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> ice cream</div>
<div class="divTableCell"> 20</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> cake</div>
<div class="divTableCell"> 40</div>
</div>
<div class="divTableRow">
<div class="divTableCell"> candy</div>
<div class="divTableCell"> 15</div>
</div>
</div>
</div>
内のすべてのデータを示すサンプル
すべてのデータを示すサンプルは、現在私のjspに入っています。私はフルーツテーブルのデータをdbで取得するControllerから、このフルーツリストをまとめて取得します。果物の種類は何でもかまいませんが、果物のpk1に基づいて単純な "for each"ループを実行してから、 "if"節をjspにレンダリングすることはできません。すべての行はデータベーステーブルにpk1を持っています。
どのように私は小さなテーブルに分割する必要がありますようにあなたの提案は高く評価されます。
jsp上のデータがわかるように、Bean構造とコントローラを共有してください。 –
私はエンティティBeanクラスとコントローラコードを共有します。 – Sid
さらに、jspで一意のグループフルーツタイプのリストを取得して、forループ内でif節を実行してテーブルをレンダリングできるようにすれば、私は解決策に近づくはずです。 – Sid