SpingMVC框架中去掉List中重複bean的方法
1.重寫實體類Bean的equals()和hashCode()方法
package com.wsbs.modules.personal.entity;
import com.ect.cloud.common.persistence.DataEntity;
/**
*
* 此類描述的是:個人基本資訊
*/
public class PersonalBasicListBean extends DataEntity<PersonalBasicListBean>{
private static final long serialVersionUID = 1L;
private String grbh;//個人編號
private String dwmc;//單位名稱
private String sfzh;//身份證號
private String xm;//姓名
private String xb;//性別
private String mz;//民族
private String cjgzsj;//參加工作日期
private String ryzt;//人員狀態
private String cbzt;//參保狀態
private String ssqh;//所屬區號
private String kh;//社會保障卡卡號
private String ltxsj;//離退休日期
private String lxdh;//聯絡電話
private String ybcnsj;//醫保參保時間
private String ybjfys;//醫保繳費月數
private String ybzhye;//醫保賬戶餘額
private String ylcnsj;//養老參保時間
private String yljfsj;//養老月數
private String yljfys;//養老賬戶總額
private String aab324;//統籌區 341801
@Override //重寫equals方法
public boolean equals(Object obj) {
PersonalBasicListBean s=(PersonalBasicListBean)obj;
return grbh.equals(s.grbh) &&
dwmc.equals(s.dwmc) &&
sfzh.equals(s.sfzh) &&
xm.equals(s.xm) &&
xb.equals(s.xb) &&
mz.equals(s.mz) &&
cjgzsj.equals(s.cjgzsj) &&
ryzt.equals(s.ryzt) &&
cbzt.equals(s.cbzt) &&
ssqh.equals(s.ssqh) &&
kh.equals(s.kh) &&
ltxsj.equals(s.ltxsj) &&
lxdh.equals(s.lxdh) &&
ybcnsj.equals(s.ybcnsj) &&
ybjfys.equals(s.ybjfys) &&
ybzhye.equals(s.ybzhye) &&
ylcnsj.equals(s.ylcnsj) &&
yljfsj.equals(s.yljfsj) &&
yljfys.equals(s.yljfys);
}
@Override //重寫hashCode方法
public int hashCode() {
String in = grbh + dwmc + sfzh + xm + xb + mz+
cjgzsj + ryzt+ cbzt + ssqh + kh + ltxsj+
lxdh + ybcnsj+ybjfys + ybzhye+ ylcnsj + yljfsj+yljfys;
return in.hashCode();
}
public String getGrbh() {
return grbh;
}
public void setGrbh(String grbh) {
this.grbh = grbh;
}
public String getDwmc() {
return dwmc;
}
public void setDwmc(String dwmc) {
this.dwmc = dwmc;
}
public String getSfzh() {
return sfzh;
}
public void setSfzh(String sfzh) {
this.sfzh = sfzh;
}
public String getXm() {
return xm;
}
public void setXm(String xm) {
this.xm = xm;
}
public String getXb() {
return xb;
}
public void setXb(String xb) {
this.xb = xb;
}
public String getMz() {
return mz;
}
public void setMz(String mz) {
this.mz = mz;
}
public String getCjgzsj() {
return cjgzsj;
}
public void setCjgzsj(String cjgzsj) {
this.cjgzsj = cjgzsj;
}
public String getRyzt() {
return ryzt;
}
public void setRyzt(String ryzt) {
this.ryzt = ryzt;
}
public String getCbzt() {
return cbzt;
}
public void setCbzt(String cbzt) {
this.cbzt = cbzt;
}
public String getSsqh() {
return ssqh;
}
public void setSsqh(String ssqh) {
this.ssqh = ssqh;
}
public String getKh() {
return kh;
}
public void setKh(String kh) {
this.kh = kh;
}
public String getLtxsj() {
return ltxsj;
}
public void setLtxsj(String ltxsj) {
this.ltxsj = ltxsj;
}
public String getLxdh() {
return lxdh;
}
public void setLxdh(String lxdh) {
this.lxdh = lxdh;
}
public String getYbcnsj() {
return ybcnsj;
}
public void setYbcnsj(String ybcnsj) {
this.ybcnsj = ybcnsj;
}
public String getYbjfys() {
return ybjfys;
}
public void setYbjfys(String ybjfys) {
this.ybjfys = ybjfys;
}
public String getYbzhye() {
return ybzhye;
}
public void setYbzhye(String ybzhye) {
this.ybzhye = ybzhye;
}
public String getYlcnsj() {
return ylcnsj;
}
public void setYlcnsj(String ylcnsj) {
this.ylcnsj = ylcnsj;
}
public String getYljfsj() {
return yljfsj;
}
public void setYljfsj(String yljfsj) {
this.yljfsj = yljfsj;
}
public String getYljfys() {
return yljfys;
}
public void setYljfys(String yljfys) {
this.yljfys = yljfys;
}
public String getAab324() {
return aab324;
}
public void setAab324(String aab324) {
this.aab324 = aab324;
}
}
2.用此bean接收實體類List集合接收資料,用hashSet方法進行去重得到新集合,並對新集合進行測試
//用list<Bean>接受資料
List<PersonalBasicListBean> pbList =
personalBasicService.getGrjbxxList(login.getUuid(), login.getAac002(),
login.getAac003(), Global.getConfig("token"));
//使用hashSet進行物件中元素的去重,獲得新物件集合list
Set<PersonalBasicListBean> ts = new HashSet<PersonalBasicListBean>();
ts.addAll(pbList);
//迴圈列印測試
System.out.println("迴圈列印出不重複的物件.........");
for (PersonalBasicListBean pbl : ts) {
ystem.out.println(pbl);
}
//將去重後的List集合放入檢視中
model.addAttribute("personalBasicBeanList", ts);
3.在jsp頁面上對List<Bean>集合進行長度判斷和迴圈
<c:forEach items="${personalBasicBeanList}" var="personalBasicBean">
<c:if test="${fn:length(personalBasicBeanList)>1}">
<span style="font-weight:bold;color:green;font-size:14px"> ${personalBasicBean.xm}</span>
<span style="color:#157ab5;font-size:14px;font-weight:bold">在參保區 </span>
<span style="font-weight:bold;color:green;font-size:14px">${fns:getDictLabel(personalBasicBean.ssqh, "aab324", "")} </span>
<span style="font-weight:bold;color:#157ab5;font-size:14px">的個人基本資訊</span>
</c:if>
<table class="table table-striped table-bordered table-condensed">
<tr>
<td align="right"><label>身份證號:</label></td>
<td>
${personalBasicBean.sfzh}
</td>
<td align="right"><label>姓 名:</label></td>
<td>
${personalBasicBean.xm}
</td>
</tr>
<tr>
<td align="right"><label>社保卡號:</label></td>
<td>
${personalBasicBean.kh}
</td>
<td align="right"><label>個人編號:</label></td>
<td>
${personalBasicBean.grbh}
</td>
</tr>
<tr>
<td align="right"><label>單位名稱:</label></td>
<td>
${personalBasicBean.dwmc}
</td>
<td align="right"><label>所屬縣區:</label></td>
<td>
${fns:getDictLabel(personalBasicBean.ssqh, "aab324", "")}
</td>
</tr>
<tr>
<td align="right"><label>人員狀態:</label></td>
<td>
${fns:getDictLabel(personalBasicBean.ryzt, "ryzt", "")}
</td>
<td align="right"><label>參保狀態:</label></td>
<td>
${fns:getDictLabel(personalBasicBean.cbzt, "cbzt", "")}
</td>
</tr>
<tr>
<td align="right"><label>離退休時間:</label></td>
<td>
${personalBasicBean.ltxsj}
</td>
<td align="right"><label>聯絡電話:</label></td>
<td>
${personalBasicBean.lxdh}
</td>
</tr>
<tr>
<td align="right"><label>醫保參保時間:</label></td>
<td>
${personalBasicBean.ybcnsj}
</td>
<td align="right"><label>醫保繳費月數:</label></td>
<td>
${personalBasicBean.ybjfys}
</td>
</tr>
<tr>
<td align="right"><label>醫保賬戶餘額:</label></td>
<td>
${personalBasicBean.ybzhye}
</td>
<td align="right"><label>養老參保時間:</label></td>
<td>
${personalBasicBean.ylcnsj}
</td>
</tr>
<tr>
<td align="right"><label>養老月數:</label></td>
<td>
${personalBasicBean.yljfsj}
</td>
<td align="right"><label>養老賬戶總額:</label></td>
<td>
${personalBasicBean.yljfys}
</td>
</tr>
</table>
<hr>
</c:forEach>
相關文章
- javascript去掉陣列中重複的值JavaScript陣列
- Java 去掉字串中的重複資料Java字串
- js 去掉陣列物件中的重複物件JS陣列物件
- Java基礎之去除List集合中的重複元素Java
- 去掉字串中重複部分 提取檔案字尾名字串
- 【Java面試題】54 去掉一個Vector集合中重複的元素Java面試題
- 原生JS去重(一)--兩種方法去掉重複字元JS字元
- java去掉陣列中重複的資料和遍歷資料Java陣列
- js去掉json中重複的id 重新push新的物件屬性JSON物件
- sample, choices: 從list中隨機選擇無重複的元素隨機
- Spring竟然可以建立“重複”名稱的bean?—一次專案中存在多個bean名稱重複問題的排查SpringBean
- 使用SQL語句去掉重複記錄的兩種方法SQL
- java list中的物件去重原理Java物件
- MYSQL中刪除重複記錄的方法薦MySql
- 在Oracle中找出重複的紀錄的方法(轉)Oracle
- 【SQL 學習】去掉重複行SQL
- spingMVC框架簡單配置MVC框架
- Laravel 5中去掉URL中的public路徑方法Laravel
- 複製貼上文字中的 nbsp怎麼去掉?
- Kafka中避免重複訊息的5種有效方法Kafka
- Remove Duplicates from Sorted List 去除連結串列中重複值節點REM
- Java刪除ArrayList中的重複元素的2種方法Java
- List中去除重複物件物件
- Mac如何去掉重複照片:PowerPhotosMac
- 用SQL語句去掉重複的記錄SQL
- Android ListView的getview()中重複呼叫(position重複呼叫)AndroidView
- MySQL中處理各種重複的一些方法MySql
- UNIX下去除檔案中重複資料的方法(轉)
- SQL Server中刪除重複資料的幾個方法SQLServer
- java陣列中重複元素的去重Java陣列
- Oracle中刪除表中的重複資料Oracle
- 去掉php框架CI預設url中的index.phpPHP框架Index
- 查詢Set中重複的元素
- 陣列中重複的數字陣列
- 前端開發中減少重複勞動,提升效率的方法前端
- 三種方法刪除列表中重複的元素及效率分析!
- java lambda list集合中物件某屬性重複,只取第一個物件Java物件
- [CareerCup] 2.1 Remove Duplicates from Unsorted List 移除無序連結串列中的重複項REM