Java分类显示。

情景:比如说产品有个大类,同样大类的产品放在一起显示。

我们要获取两个list,一个是去除重复元素后的大类集合,一个是要展示的产品类型。


1、去除重复元素

/*
	 * 打印2017经销商合约
	 */
	public String print_dealercontract2017() throws Exception {
		HttpServletRequest request = ServletActionContext.getRequest();
		Viewcontract viewcontract= viewcontractDAOImpl.getByid(id);
		String contractProductIdArr[]=viewcontract.getProductId().split(",");
		List<String> joinList=new ArrayList<String>();
		HashSet set=new HashSet();  
		for(String s:contractProductIdArr){
			baseProduct = baseProductDAOImpl.getByid(s);
			String aa=baseProduct.getCategory();
			joinList.add(aa);
			set.add(aa);
		}
		String productCategory = StringUtils.join(joinList, ",");//产品集合,用逗号隔开
		String pcSet = StringUtils.join(set, ",");//大类集合,用逗号隔开
		viewcontract.setProductCategory(productCategory);
		viewcontract.setPcSet(pcSet);
		request.setAttribute("viewcontract", viewcontract);
		return "dealercontract2017";
	}

2、在jsp页面显示

<c:set value="${ fn:split(viewcontract.productName,',') }" var="productName" />
		<c:set value="${ fn:split(viewcontract.pcSet,',') }" var="pcSet" />
		<c:set value="${ fn:split(viewcontract.productCategory,',') }" var="productCategory" />
		<c:set value="${ fn:split(viewcontract.productPrice,';') }" var="productPrice" />
		<c:set value="${ fn:split(viewcontract.orderQuantity,';') }" var="orderQuantity" />
		<c:forEach var="r" begin="0" end="${fn:length(pcSet)-1}">
			<p class=MsoNormal
				style="text-indent:21.0000pt;mso-char-indent-count:2.0000;line-height:22.0000pt;mso-line-height-rule:exactly;">
				<span
					style="mso-spacerun:'yes';font-family:微软雅黑;mso-bidi-font-family:Arial;color:rgb(0,0,0);font-size:10.5000pt;mso-font-kerning:1.0000pt;">&#${r+9312 };${pcSet[r] }:</span><span
					style="mso-spacerun:'yes';font-family:微软雅黑;mso-bidi-font-family:Arial;color:rgb(0,0,0);font-size:10.5000pt;mso-font-kerning:1.0000pt;"><o:p></o:p>
				</span>
			</p>
				<c:set var="aaa" value="97" />
				<c:forEach var="i" begin="0" end="${fn:length(productName)-1}">	
					<c:if test='${productCategory[i]==pcSet[r] }'>
					<p class=MsoNormal
						style="text-indent:21.0000pt;mso-char-indent-count:2.0000;line-height:22.0000pt;mso-line-height-rule:exactly;">
						<span
							style="mso-spacerun:'yes';font-family:微软雅黑;mso-bidi-font-family:Arial;color:rgb(0,0,0);font-size:10.5000pt;mso-font-kerning:1.0000pt;">&#${aaa};.${productName[i] }:</span><span
							style="mso-spacerun:'yes';font-family:微软雅黑;mso-bidi-font-family:Arial;color:rgb(0,0,0);font-size:10.5000pt;mso-font-kerning:1.0000pt;"><o:p></o:p>
						</span>
					</p>
					<c:set value="${ fn:split(productPrice[i],',') }" var="productNameArr" />
					<c:set value="${ fn:split(orderQuantity[i],',') }" var="orderQuantityArr" />
					<c:forEach var="j" begin="0" end="${fn:length(productNameArr)-1}">
					<p class=MsoNormal
						style="text-indent:21.0000pt;mso-char-indent-count:2.0000;line-height:22.0000pt;mso-line-height-rule:exactly;">
						<span
							style="mso-spacerun:'yes';font-family:微软雅黑;mso-bidi-font-family:Arial;color:rgb(0,0,0);font-size:10.5000pt;mso-font-kerning:1.0000pt;"><font
							face="微软雅黑">订购量达到</font>
						</span><u><span
							style="mso-spacerun:'yes';font-family:微软雅黑;mso-bidi-font-family:Arial;color:rgb(0,0,0);text-decoration:underline;text-underline:single;font-size:10.5000pt;mso-font-kerning:1.0000pt;"> ${orderQuantityArr[j] } </span>
						</u><span
							style="mso-spacerun:'yes';font-family:微软雅黑;mso-bidi-font-family:Arial;color:rgb(0,0,0);font-size:10.5000pt;mso-font-kerning:1.0000pt;"><font
							face="微软雅黑">万元,产品单价为${productNameArr[j] }元</font>/kg;</span><span
							style="mso-spacerun:'yes';font-family:微软雅黑;mso-bidi-font-family:Arial;color:rgb(0,0,0);font-size:10.5000pt;mso-font-kerning:1.0000pt;"><o:p></o:p>
						</span>
					</p>
					</c:forEach>
					<c:set var="aaa" value="${aaa+1 }"/>
					</c:if>
				</c:forEach>

		</c:forEach>




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值