将会话值写入JSP页面中的文本文件

时间:2014-09-11 09:50:10

标签: java jsp session jstl

我必须将会话值写入JSP页面中的文本文件。我能够使用以下JSTL代码检索会话的值。

<c:forEach items="${chapters}" var="name">  
  <c:out value="Iteration..."/>  
  <c:out value="${name}"/>  
</c:forEach>

检索值后,我必须将这些值写入文本文件,以下示例code运行良好。但我无法在JSP标记内使用JSTL标记(&lt;%...%&gt;)。

1.是否可以在JSP标记中使用JSTL值?

2.如何检索JSP标记内的会话值?

2 个答案:

答案 0 :(得分:1)

不建议使用JSP编写文本文件。最好使用backend technology,因此您需要使用servlet for that which is made for that,此类操作必须由Server Side完成。

如果您仍想这样做,可以使用scriplet标记:

<c:set var="name" value="${name}"/>

<%@ page import="java.io.*"  %>
<%
    String str = (String)session.getAttribute("sessionName");
    String name = (String)pageContext.getAttribute("name");
    String nameOfTextFile = "/resources/data.txt";
    try {   
        PrintWriter pw = new PrintWriter(new FileOutputStream(nameOfTextFile));
        pw.println(str);
        pw.close();
    } catch(IOException e) {
       out.println(e.getMessage());
    }
%>

答案 1 :(得分:0)

使用servlet。 JSP只是一种视图技术。