文档章节

jstl标签判断不同条件进行不同操作

s
 sannywang
发布于 2016/07/13 17:13
字数 505
阅读 672
收藏 0
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<script src="${contextPath }/js/jquery-1.7.min.js"></script>
<script src="${contextPath }/js/jquery.min.js"></script>
<script src="${contextPath }/js/jquery-ui.min.js"></script>
<link rel="stylesheet" type="text/css" href="${contextPath }/css/jquery-ui.min.css" />
<div id="navbar" class="navbar-collapse collapse">
	            <ul class="nav navbar-nav navbar-right">
	                <li><a>[${sessionScope.loginSession.duser }]你好!</a></li>
	                <li><a href="${contextPath }/logout.htm">注销登录</a></li>
	                <c:if test="${sessionScope != null }">
	                <c:forEach items="${sessionScope.invoiceXsfInfosMap }" var="invoiceXsfInfosMap">
                       <c:choose>
                           <c:when test="${invoiceXsfInfosMap.key == '00' && invoiceXsfInfosMap.value == -1}">
                                <li><a><font color="white">云商电子发票余量: </font></a></li>
                           </c:when>
                           <c:when test="${invoiceXsfInfosMap.key == '00' &&  invoiceXsfInfosMap.value <= 10000 }">
                                <li><a><font color="red">(余量不足!)云商电子发票余量:${invoiceXsfInfosMap.value }</font></a></li>
                           </c:when>
                           <c:when test="${invoiceXsfInfosMap.key == '00' && invoiceXsfInfosMap.value > 10000 }">
                                <li><a><font color="white">云商电子发票余量:${invoiceXsfInfosMap.value }</font></a></li>
                           </c:when>
                           <c:when test="${invoiceXsfInfosMap.key == '01' && invoiceXsfInfosMap.value == -1 }">
                                <li><a><font color="white">全球购电子发票余量: </font></a></li>
                           </c:when>
                           <c:when test="${invoiceXsfInfosMap.key == '01' && invoiceXsfInfosMap.value <= 2500 }">
                                <li><a><font color="red">(余量不足!)全球购电子发票余量:${invoiceXsfInfosMap.value }</font></a></li>
                           </c:when>
                           <c:when test="${invoiceXsfInfosMap.key == '01' && invoiceXsfInfosMap.value > 2500 }">
                                <li><a><font color="white">全球购电子发票余量:${invoiceXsfInfosMap.value }</font></a></li>
                           </c:when>
                       </c:choose>
                    </c:forEach>
	                </c:if>
	            </ul>
	        </div>

后台代码:

package com.blemall.controller;

import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import com.blemall.dao.InvoiceXsfInfoMapper;
import com.blemall.dto.common.ResultDto;
import com.blemall.dto.invoicesys.bw.response.QueryStockResp;
import com.blemall.model.InvoiceXsfInfo;
import com.blemall.service.invoicesys.BWSysService;
import com.blemall.utils.InvoiceXsfInfoConstants;
import com.blemall.utils.StringUtil;

@Controller
@RequestMapping("invoiceXsfInfo")
public class InvoiceXsfInfoController {
	private Map<String, Integer> map;
	private final Logger logger = LoggerFactory
			.getLogger(InvoiceXsfInfoController.class);

	@Autowired
	private InvoiceXsfInfoMapper invoiceXsfInfoMapper;
	@Autowired
	BWSysService bWSysService;

	@RequestMapping("selectElectXsfInfo")
	public String selectElectXsfInfo(HttpServletRequest request,
			HttpServletResponse response) {

		String subject_00 = InvoiceXsfInfoConstants.subject_00;
		String subject_01 = InvoiceXsfInfoConstants.subject_01;
		HttpSession session = request.getSession();

		map = (Map<String, Integer>) session.getAttribute("invoiceXsfInfosMap");
		if (map == null || map.size() == 0) {
			map = new HashMap<String, Integer>();

			setStock2Map(subject_00);
			setStock2Map(subject_01);
			session.setAttribute("invoiceXsfInfosMap", map);
		}
		return InvoiceXsfInfoConstants.IndexView;
	}

	/**
	 *subject 发票主题 00 云商 01 全球购 02 MP 03 纯跨境 
	 */
	private Map<String, Integer> setStock2Map(String subject) {
		String subject_ = subject;
		InvoiceXsfInfo invoiceXsfInfo_ = invoiceXsfInfoMapper
				.selectElectXsfInfo(subject_);
		if (invoiceXsfInfo_ != null) {
			ResultDto resultDto_ = bWSysService.queryStock(
					invoiceXsfInfo_.getTaxpayerid(), invoiceXsfInfo_);
			logger.info(invoiceXsfInfo_.toString());
			if (resultDto_ != null && "0000".equals(resultDto_.getReturnCode()) && resultDto_ instanceof QueryStockResp) {
				//返回的发票份数
				String returnDesc = resultDto_.getReturnDesc();
				if (StringUtil.isNumber(returnDesc)) {
					map.put(subject, Integer.parseInt(returnDesc));
					logger.info("返回的发票剩余数:"+returnDesc);
				} else {
					logger.error("数字转换失败:"+returnDesc);
					map.put(subject, -1);
				}
				logger.info(resultDto_.getReturnDesc());
			} else {
				map.put(subject, -1);
			}
		}
		return map;
	}
}

 

© 著作权归作者所有

共有 人打赏支持
s
粉丝 1
博文 67
码字总数 18100
作品 0
闵行
程序员
私信 提问
引用 JAVA标签库JSTL-EL表达式介绍使用配置手册

引用 【轰隆隆】 的 JAVA标签库JSTL-EL表达式介绍使用配置手册 JSP 标准标记库(JSP Standard Tag Library,JSTL)是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭代...

junsun
2010/10/16
0
0
初识 JSP---(JSTL)

JSTL jsp标准标签库(jstl)是一个JSP标签集合,它封装了jsp应用的通用核心功能。 JSTL支持通用的、格式化的任务。比如:迭代、条件判断、XML文档操作、国际化标签、SQL标签。除了这些它还提...

姜白告
08/03
0
0
javaweb开发之EL和JSTL

一、EL 1.概述 EL 全名为Expression Language。 EL表达式可用在所有的HTML和JSP标签中作用是代替JSP页面中复杂的JAVA代码。 EL主要作用如下: (1)获取数据: EL表达式主要用于替换JSP页面中的...

小米米儿小
2013/12/05
0
0
Servlet 3.0 新特性概述

Servlet 3.0 新特性概述 Servlet 3.0 作为 Java EE 6 规范体系中一员,随着 Java EE 6 规范一起发布。该版本在前一版本(Servlet 2.5)的基础上提供了若干新特性用于简化 Web 应用的开发和部...

巴顿
2013/11/19
0
2
(JavaEE-09)JSP中的MVC与三层架构

JSP开发模式 SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式 JSP+JavaBean模式适合开发业务逻辑不太复杂的web应用...

_-Leon-_
2014/07/11
0
2

没有更多内容

加载失败,请刷新页面

加载更多

利用cefSharp实现网页自动注册登录的需要注册的一些事项

最近朋友有个需要自动注册登录点击的事,我帮着写了写,好久没写过这东西了,在写的过程中总结了需要注意的一些事项。 一、换IP之后要测试一下速度,我目前用的最简单的测试方法就是20-30秒加...

我退而结网
15分钟前
1
0
Go语言中使用 BoltDB数据库

boltdb 是使用Go语言编写的开源的键值对数据库,Github的地址如下: https://github.com/boltdb/bolt boltdb 存储数据时 key 和 value 都要求是字节数据,此处需要使用到 序列化和反序列化。...

Oo若离oO
15分钟前
1
0
zookeeper分布式锁

//lock 锁 定义分布式锁public interface Lock {//获取锁public void getLock();//释放锁public void unLock();} public abstract class ZookeeperAbstractLock implements Loc......

熊猫你好
23分钟前
0
0
mysql_事务隔离机制

事务隔离机制 事务就是要保证一组数据库操作,要么全部成功,要么全部失败。在mysql中,事务支持是在引擎层实现的。mysql是一个支持多引擎的系统,但并不是所有引擎都支持事务,比如mysql...

grace_233
25分钟前
0
0
不学无数——Java中IO和NIO

JAVA中的I/O和NIO I/O 问题是任何编程语言都无法回避的问题,可以说 I/O 问题是整个人机交互的核心问题,因为 I/O 是机器获取和交换信息的主要渠道。在当今这个数据大爆炸时代,I/O 问题尤其...

不学无数的程序员
31分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部