文档章节

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

s
 sannywang
发布于 2016/07/13 17:13
字数 505
阅读 664
收藏 0
点赞 0
评论 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
博文 65
码字总数 17830
作品 0
闵行
程序员
引用 JAVA标签库JSTL-EL表达式介绍使用配置手册

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

junsun
2010/10/16
0
0
与区别

我们都知道在jsp中include有两种形式,分别是Include指令:和include动作:。前者是指令元素、后者是行为元素。具体它们将在何处用?如何用及它们有什么区别?这应该是很多人看到它都会想到的...

陶邦仁
2015/04/08
0
0
Velocity初探小结--velocity使用语法详解

  做java开发的朋友一般对JSP是比较熟悉的,大部分人第一次学习开发View层都是使用JSP来进行页面渲染的,我们都知道JSP是可以嵌入java代码的,在远古时代,java程序员甚至在一个jsp页面上就完成...

冬至饮雪
2016/11/19
0
0
Servlet 3.0 新特性概述

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

张超
2012/12/22
0
0
javaweb开发之Filter

一、简介 在Servlet2.3规范中定义了过滤器,它对servlet容器调用servlet的过程进行拦截,从而在servlet进行响应处理的前后实现一些特殊的功能。 过滤器实现了一个责任链的模式。多个过滤器形...

小米米儿小
2013/12/06
0
0
javaweb开发之EL和JSTL

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

小米米儿小
2013/12/05
0
0
JSP复习(四):JSTL标记

JSTL优势:在于EL和标准动作无法达到目的,又不使用脚本代码。(JSTL 1.1不是JSP2.0规范的一部分,TOMCAT高版本已经自带了JSTL的JAR包) 使用JSTL需要使用指令,引入JSTL <%@ taglib prefix=...

这个人很懒-啥都没写
2013/07/11
0
0
(JavaEE-09)JSP中的MVC与三层架构

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

_-Leon-_
2014/07/11
0
2
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-08)JSP九大隐式对象

JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理。JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet) ,然后按照servlet的调用...

_-Leon-_
2014/07/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

崛起于Springboot2.X之开发拦截器(21)

序言:几乎所有项目都需要拦截器,所以小伙伴们必须要掌握这门技术哦,不然只会mybaits增删改查那是实习生干的活呀。 1、创建拦截器类,implements HandlerInterceptor public class MyInce...

木九天
11分钟前
0
0
(转)SQL语句的执行顺序

(7) SELECT (8) DISTINCT <select_list> (1) FROM <left_table> (3) <join_type> JOIN <right_table> (2) ON <join_condition> (4) WHERE <where_condition> (5) GROUP BY <group_by_list> (......

Avner
20分钟前
0
0
1.14 救援模式

确保开机启动时连接镜像文件,如果是真机服务器,就需要:U盘或光盘镜像启动进入BIOS 不同主板进入bios按键不同,一般是F12或Esc 光标:移动到Boot(开机启动项) 减号移动:光标选中行,按-...

小丑鱼00
28分钟前
0
0
ES11-全文检索

高级别全文检索通常用于在全文本字段(如电子邮件正文)上运行全文检索。 他们了解如何分析被查询的字段,并在执行之前将每个字段的分析器(或search_analyzer)应用于查询字符串。 1.term查...

贾峰uk
31分钟前
0
0
java 复制对象有哪些方式

java 复制对象有哪些方式 Apache的 Common beanutils库 org.apache.commons.beanutils.BeanUtils.copyProperties(dest,origin); Springframework 的BeanUtil 依赖: <dependency> ......

黄威
46分钟前
1
0
jstack的简单使用

公司测试反应, 一个java应用的机器, 即使不做交易, cpu始终是30%多, 于是想到了jstack, 实践步骤记录一下: 1, 找出java应用的进程号 ps -ef|grep 应用名|grep -v grep 2, 找出pid下的cpu占用...

零二一七
53分钟前
1
0
导入CSV文件就行数据整理分析

#-*-coding:utf-8-*-import csv,os,re,mathlocalPath=input("请输入所有群文件的根目录:") #所有QQ群文件的物理根目录路径def info(): info_dic=[] dirList=os.listdi...

Kefy
今天
5
0
CoreText进阶(六)-内容大小计算和自动布局

CoreText进阶(六)-内容大小计算和自动布局 其它文章: CoreText 入门(一)-文本绘制 CoreText入门(二)-绘制图片 CoreText进阶(三)-事件处理 CoreText进阶(四)-文字行数限制和显示更...

aron1992
今天
1
0
一个Unity高人的博客,涉猎范围很广,深度也很深。

https://blog.csdn.net/ecidevilin/article/list/

爽歪歪ES
今天
0
0
Spring Cloud Config-Git后端

EnvironmentRepository的默认实现使用Git后端,这对于管理升级和物理环境以及审核更改非常方便。要更改存储库的位置,可以在Config Server中设置“spring.cloud.config.server.git.uri”配置...

itcloud
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部