透析struts中的redirect="true"与redirect="false"

再struts-config.xml文件的forward下有个redirect属性,这个属性的值为true和false有什么区别呢

redirect="true"时,会调用sendRedirect进行定向,而sendRedirect定向采用的时"(HTTP status 302)。

               再浏  览器发生页面改变

   redirect="false"时采用的是server-side forward端的定向

public void sendRedirect(String location)
        throws IOException {

        if (isCommitted())
            throw new IllegalStateException
                (sm.getString("coyoteResponse.sendRedirect.ise"));

        // Ignore any call from an included servlet
        if (included)
            return;

        // Clear any data content that has been buffered
        resetBuffer();

        // Generate a temporary redirect to the specified location
        try {
            String absolute = toAbsolute(location);

//    public static final int SC_FOUND = 302;
            setStatus(SC_FOUND);
            setHeader("Location", absolute);
        } catch (IllegalArgumentException e) {
            setStatus(SC_NOT_FOUND);
        }

引起的结果是:

如果采用redirect=true,那么request是传寄不再下一个页面, 而false是可以

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页