如何在不使用任何servlet的情况下从java类调用jsp页面

时间:2013-04-01 10:05:41

标签: java jsp

我只想从简单的java类调用jsp页面,我没有任何请求对象。不使用任何servlet。只需从java类转发到jsp页面即可。

2 个答案:

答案 0 :(得分:1)

如果我没有被误解,你是否正在寻找通过java类在浏览器中打开的JSP页面? 如果是,您可以使用Desktop API。

您还可以查看以下答案:

Open local html page - java

Getting java gui to open a webpage in web browser

还要记住,您的JSP页面应放在Web容器(Tomcat等)中,并在调用时运行它或者您将被发现为什么JSP没有打开。

答案 1 :(得分:1)

首先 从JSP页面调用java类: 你需要从这个类中实例化一个实例。

例如: 如果你有一个名为“myclass”的类和一个名为“home.jsp”的JSP 然后在你的JSP页面中导入myclass ex,< @ page import =“yourpackagename.yourclassname ”> 然后在正文部分通过键入 my1.callyourfunction(); 来实例化您班级中的实例,如下所示:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1" import="yourpackagename.myclass"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>home.jsp</title>
</head>
<body>
    <%
         myclass my1 = new myclass();
         my1.Openpage(response);
    %>
</body>
</html>

第二次 从java类调用jsp: 你需要使用HttpServletResponse,如下所示:

package yourpackagename.myclass;

import java.io.IOException;
import javax.servlet.http.HttpServletResponse;

public class myclass{   
public void Openpage(HttpServletResponse res) throws IOException{
    // here type your JSP page that you want to open
    res.sendRedirect("To.jsp");
    }
}