`
thomas0836
  • 浏览: 4544 次
  • 性别: Icon_minigender_1
  • 来自: 江门
社区版块
存档分类
最新评论

jstl 的一些奇怪问题

    博客分类:
  • jstl
阅读更多
最近遇到一个比较奇怪的问题

以下是一个bean类
public class PersonBasic {
	protected List<String> chName;
	protected List<String> enName;
	protected List<String> sex;
	protected List<String> birthdate;
	protected List<String> marital;
	protected List<String> height;
	protected List<String> email;

/* .. get set 省略*/
}


假设 已有一个实体personBasic 的sex=[女]

现想在页面遍历显示personBasic.sex

<td>性别</td>
<td>
<c:import url="tmp/StringList_tmp.jsp">
	<c:param name="items" value="${personBasic.sex }"/>
</c:import>
				
<ul>
	<c:forEach items="${personBasic.sex}" var="i" varStatus="s">
		<li>${i}</li>
	</c:forEach>
</ul>
</td>




StringList_tmp.jsp 代码如下
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<ul>
<c:forEach items="${param.items}" var="i" varStatus="s">
	<li>${i}</li>
</c:forEach>
</ul>


但是 这两种的输出结果 且不同

性别  [女]

       女

为什么 通过
<c:import url="tmp/StringList_tmp.jsp">
<c:param name="items" value="${personBasic.sex }"/>
</c:import>
的会有[]号葛

要怎样改 才可以 令到
<c:import url="tmp/StringList_tmp.jsp">
<c:param name="items" value="${personBasic.sex }"/>
</c:import>
和遍历时输出效果一样没有[]

因为 现在 这个StringList_tmp.jsp 里面的只是 测试代码 实际上 这个模板 会比较复杂  而且 PersonBasic的属性有几十个 都是List<String>的 如果 不用模板来管理的话 维护 会超麻烦……

希望各位 大牛可以帮忙解答一下 大家研究研究
分享到:
评论
1 楼 thomas0836 2012-09-13  
  最后系 高手Ben的帮助下 完美解决问题


<td>性别</td>
<td>
	<c:set var="itemList" value="${personBasic.sex}"/>
	<%@ include file="tmp/StringList_tmp.jsp"%>
</td>


初步估计
<c:param name="itemList" value="${personBasic.sex }"/> 这里是将 参数 用get方法传到 目标页 所以 这里的List 变成toString了 然后 itemList="[aa,bb]" 在<c:forEach> 解析为 {'[aa','bb]'}


而用<c:set> 将值保存到 request ,<%@ include> 时就可以找到了 而且类型不变

相关推荐

    JSTL

    JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;

    jstl1.1和jstl1.0

    JSTL1.1是针对Tomcat5.x版本设计的,它在JSTL1.0的基础上进行了一些改进和增强。这个版本引入了对JSP 2.0规范的支持,包括对EL (Expression Language) 的完全支持。EL是一种轻量级的脚本语言,用于在JSP页面中表达和...

    jstl-1.2.1 jar

    jstl-1.2.1,之前的版本需要在服务器中配置一下,而且它分成了两个jar(jstl.jar和standard.jar)还有一个tld文件,而1.2已经不用配置了,直接把javax.servlet.jsp.jstl-1.2.1.jar和javax.servlet.jsp.jstl-api-1.2.1...

    jstl-1.2.jar免费下载

    jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2...

    JSTL.rar_JSTL_JSTL下载

    3. **Function标签库**:提供了一些预定义的函数,如字符串操作、数组和集合操作等,这些函数可以通过`fn:`前缀在JSP页面中调用。 4. **I18N(国际化)标签库**:支持多语言环境,包括资源包管理、本地化等,如`...

    jstl帮助 jstl帮助手册 jstl帮助文档

    JSTL(JavaServer Pages Standard Tag Library)是Java Web开发中的一个标准标签库,它提供了一系列的标签来简化JSP页面的编程,使得开发者能够更专注于业务逻辑而不是底层的Java代码。这个压缩包文件可能包含了关于...

    JSTL相关Jar包(jstl+standard)

    这个库通常与JSTL一起使用,因为它提供了一些JSTL核心库所没有的功能,如EL表达式支持和JDBC连接管理。 **JDK 8 + Tomcat 9版本以下的JSTL包** 对于JDK 8和Tomcat 9及以下版本,你需要使用与这些环境兼容的JSTL...

    jstl-1.2.rar_JSTL_jstl 1.2_jstl jar_jstl-1.1.2.jar _jstl.jar

    **JSTL(JavaServer Pages Standard Tag Library)详解** JSTL,全称为JavaServer Pages Standard Tag Library,是Java Web开发中的一个标准标签库,它为开发者提供了在JSP页面中处理常见任务的标签,例如迭代、...

    JSTL中文帮助文档

    **JSTL(JavaServer Pages Standard Tag Library)中文帮助文档** JSTL 是一套用于 JavaServer Pages (JSP) 的标准标签库,旨在简化 JSP 开发,提高代码的可读性和可维护性。它提供了多种核心标签和扩展标签,包括...

    jstl标签jar包(jstl-api-1.2和jstl-impl-1.2)

    `jstl-api-1.2.jar` 和 `jstl-impl-1.2.jar` 是JSTL的两个关键组件: 1. **jstl-api-1.2.jar**:这是JSTL的API接口定义,包含了所有JSTL标签库的接口和抽象类。开发人员在编写JSP页面时需要导入这个包,以便使用...

    jstl练习实例,学习JSTL

    本篇将详细讲解JSTL的基本概念、核心组件以及通过"jstl练习实例"进行的学习要点。 一、JSTL简介 JSTL是由Apache软件基金会的Jakarta项目维护的一个开源库,它提供了多种预定义的标签,用于处理常见的JSP任务,如...

    jstl-jar包

    **JSTL(JavaServer Pages Standard Tag Library)**是一个用于JavaServer Pages(JSP)的标签库,旨在简化Web应用程序的开发。它提供了一系列预定义的标签,使得开发者可以通过简单的XML标记来处理常见任务,而无需...

    jstl的两个jar包

    但需要注意的是,描述中提到的"千万不要直接添加"可能是因为一些开发环境中,比如现代的Maven或Gradle构建系统,它们会自动管理依赖,并且可能会有冲突或版本不兼容的问题。因此,最好通过配置管理工具来引入这些...

    jstl-api-1.2和jstl-impl-1.2

    jstl-api-1.2和jstl-impl-1.2,jstl-api-1.2和jstl-impl-1.2,jstl-api-1.2和jstl-impl-1.2,jstl-api-1.2和jstl-impl-1.2

    jstl,jstl实例源码

    在"jstlpj"这个压缩包中,可能包含了一些使用JSTL实现的示例代码,例如: - **条件判断**:通过`&lt;c:if&gt;` 实现某个元素或内容的有条件显示。 - **循环遍历**:使用`&lt;c:forEach&gt;` 遍历集合,如ArrayList、Map等,展示...

    jstl标准开发jar包

    5. **数据库操作**:JSTL的`sql`标签库允许在JSP页面上执行SQL查询,如`&lt;sql:update&gt;`、`&lt;sql:query&gt;`等,虽然现代Web应用更多倾向于使用ORM框架,但在一些简单场景下,这仍然是一个快速处理数据库操作的选项。...

    JSTL教程

    **JSTL(JavaServer Pages Standard Tag Library)**是一个用于JSP应用的标准化标签库,旨在简化Web应用程序的表示层开发。它包含了多种用于常见任务的定制标签,比如迭代、条件判断、数据管理、XML处理和数据库访问...

    jstljar包包含jstl.jar和standard.jar文件

    **JSTL(JavaServer Pages Standard Tag Library)**是一个用于JSP的标准标签库,它提供了一系列的标签,用于简化JSP页面中的业务逻辑处理。JSTL的主要目标是提高JSP开发的可维护性和可读性,通过使用预定义的标签,...

    将应用部署在weblogic中于JSTL冲突的问题及解决方案

    在将应用程序部署到WebLogic服务器时,可能会遇到与JSTL(JavaServer Pages Standard Tag Library)的冲突问题。本文将详细解析这个问题的原因以及提供解决方案。 首先,我们需要理解JSTL的作用。JSTL是一个用于JSP...

    jstl学习大全,jstl源码,很全的jstl学习代码

    **JSTL(JavaServer Pages Standard Tag Library)学习大全** JSTL是JavaWeb开发中的一个强大工具,它提供了一套标准的标签库,用于简化HTML或XML页面上的JavaServer Pages(JSP)代码。本资源集合包含了丰富的JSTL...

Global site tag (gtag.js) - Google Analytics