简体   繁体   English

如何将对象值从servlet发送到jsp页面

[英]how to send a object value from a servlet to a jsp page

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
         BufferedReader br = new BufferedReader(new FileReader("src/suraj.txt"));
         String everything="rahul";

                StringBuilder sb = new StringBuilder();
                String line = br.readLine();

                while (line != null)
                {
                    sb.append(line);
                    sb.append("\n");
                    line = br.readLine();
                     everything = sb.toString();

                }

                request.setAttribute("date",everything);
                RequsetDispatcher rd= Requ//here i got stuck how to forward the request to a jsp file           } 

    }

I want to send the value of my String variable that is everything to a jsp file so that I can display it on the browser. 我想将所有内容的String变量的值发送到一个jsp文件,以便可以在浏览器中显示它。

您可以将请求转发到jsp文件,并在jsp文件中使用request.getattribute...。更好地,您可以学习基础教程并了解其工作原理。

In the JSP, to receive an attribute, try to do this thing: 在JSP中,要接收属性,请尝试执行以下操作:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>

<% 
    String everything = (String) request.getAttribute("date");
    System.out.println(everything);
%>

UPDATE: 更新:
In addition, if you want set the value to a Java Script variable: 另外,如果要将值设置为Java Script变量:

<script language="JavaScript" type="text/JavaScript">
   var strEverything= '<%=everything%>';
</script>

UPDATE ACTION: 更新动作:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            // TODO Auto-generated method stub
             BufferedReader br = new BufferedReader(new FileReader("src/suraj.txt"));
             String everything="rahul";

                    StringBuilder sb = new StringBuilder();
                    String line = br.readLine();

                    while (line != null)
                    {
                        sb.append(line);
                        sb.append("\n");
                        line = br.readLine();
                         everything = sb.toString();

                    }

                    request.setAttribute("date",everything);
                    RequestDispatcher requestDispatcher ; 
                    requestDispatcher = request.getRequestDispatcher("/thankYou.jsp" ) ;
                    requestDispatcher.forward( request, response ) ;          

        }

in JSP u need to get like String data=request.getAttribute("date")+""; 在JSP中,您需要像String data = request.getAttribute(“ date”)+“”; then u will get the value in jsp Make sure your response should be that jsp then only u got the request scope. 那么您将在jsp中获取值确保您的响应应为jsp,然后只有您获得了请求范围。 other wise put session.setAttribute("date",everthing); 其他明智的做法session.setAttribute(“ date”,everything); in jsp session.getAttribute("date"); 在jsp session.getAttribute(“ date”);中 then u will get any where. 那么你会在任何地方。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM