获取java文件输出到jsp页面

时间:2014-04-29 14:45:52

标签: java jsp

我正在尝试编写JSP页面。但我已多次读过JSP页面中的源代码是一种不好的做法。然后我尝试在同一个包中编写一个不同的类,并在该JSP页面中调用它。

这是JSP代码:

<jsp:useBean id="link" scope="application" class = "tms.TestJava" />
<%

TestJava t=new TestJava();
t.test();

%>

这是类代码:

public class TestJava {

public void test() throws IOException
{
    System.out.println("sdds");
}
}

我已将该类导入JSP页面。

现在的问题是,当我在类(测试方法)中使用System.out.println时,它会被打印到控制台上,我希望它将它打印到JSP页面。我怎样才能做到这一点?有单独的方法吗?我是否必须使该类成为servlet?

谢谢!

2 个答案:

答案 0 :(得分:2)

尝试使用代码库:JSTL

具体做法是:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title><c:out> Tag Example</title>
</head>
<body>
<c:out value="${'<tag> , &'}"/>
</body>
</html>

或者更好的是,因为您已经在使用JavaBeans,所以重构以便不再使用System.out()。我们的想法是,您希望在页面中显示bean的属性。考虑:JavaBeans所以做这样的事情:

<强>爪哇

public class Course{
   private String code = "Math";
   public String getCode(){
      return code;
   }
}

<强> JSP

<jsp:useBean id="course" class="com.javaBeans.Course" />
<jsp:getProperty name="course" property="code"/>

首先,您不希望仅System.out()到页面。该页面应该是服务器上组件数据的view,在这种情况下是bean。

答案 1 :(得分:1)

我认为你以错误的方式解决这个问题,但这是一个可能的解决方案......

<head>
    <%@ page language="java" import="tms.TestJava"%>
</head>

<body>
    <%=TestJava.getAString()%>
    <%=TestJava.getAString()%>
    <%=TestJava.getAString()%>
    <%=TestJava.getAString()%>
    <%=TestJava.getAString()%>
</body>


public String getAString(){
    return "<li></li>";
}

如果您的目标是构建动态JSP,您可能希望将JSTL视为上述人员,查看定义自己的标签等等。我不会想到很多新开发人员正在使用scriplet代码。