怎么用request取值赋值?、急啊啊 啊

怎么用request取值赋值?、急啊啊 啊,第1张

后台接收jsp页面传来的值 String str = request.getParameter("str")

后台设置一个值供jsp接收 request.setAttribute("str1","abc")

jsp页面从后台接收一个值 String str1 = (String ) request.getAttribute("str1")

滤器就可以实现,现在web.xml文件中配置好过滤器,自定义个一个过滤器,实现Filter接口,在doFilter中实现自己的过滤逻辑,我这里有个设置所有请求中的字符编码,你可以参考一下:

Java code

web.xml配置如下:

<filter>

<!--过滤器名称,随便定义-->

        <filter-name>UrlFilter</filter-name>

<!--filter-class指向自定义的过滤器,完整的包名+类名-->

        <filter-class>

            com.wgh.common.SetCharacterEncodingFilter

        </filter-class>

<!--过滤器中的默认参数,默认的字符编码是GBK-->

        <init-param>

            <param-name>defaultEncoding</param-name>

            <param-value>GBK</param-value>

        </init-param>

    </filter>

<!--filter和filter-mapping是成对出现的-->

    <filter-mapping>

<!--过滤器名称,一定要和上面的一样,-->

        <filter-name>UrlFilter</filter-name>

<!--表示拦截所有的请求-->

        <url-pattern>/*</url-pattern>

    </filter-mapping>

 

SetCharacterEncodingFilter过滤器类:

 

package com.wgh.common

 

import java.io.IOException

import java.text.SimpleDateFormat

import java.util.Arrays

import java.util.Enumeration

import java.util.List

 

import javax.servlet.Filter

import javax.servlet.FilterChain

import javax.servlet.FilterConfig

import javax.servlet.ServletException

import javax.servlet.ServletRequest

import javax.servlet.ServletResponse

import javax.servlet.http.HttpServletRequest

import javax.servlet.http.HttpServletResponse

 

 

public class SetCharacterEncodingFilter implements Filter {

 

 

    

    private static String log = "ksURL_log"

    private static String web_xml_url

 

    

    protected static String defaultEncoding = null

    protected FilterConfig filterConfig = null

    protected boolean ignore = true

    

    public void destroy() {

        this.defaultEncoding = null

        this.filterConfig = null

        this.web_xml_url = null

 

    }

 

 

    public void doFilter(ServletRequest request, ServletResponse response,

                         FilterChain chain) throws IOException, ServletException {

        if (ignore || (request.getCharacterEncoding() == null)) {

            String defaultEncoding = selectEncoding(request)

             

            HttpServletRequest req = (HttpServletRequest) request

            if (defaultEncoding != null){

                String uri = req.getRequestURI()

                String url_suffix = uri.substring(uri.lastIndexOf("/")+1)

                 

                    request.setCharacterEncoding(defaultEncoding)

 

            } 

        }

    }

 

    public void init(FilterConfig filterConfig) throws ServletException {

 

        this.filterConfig = filterConfig

        this.defaultEncoding = filterConfig.getInitParameter("defaultEncoding")

        String value = filterConfig.getInitParameter("ignore")

        if (value == null)

            this.ignore = true

        else if (value.equalsIgnoreCase("true"))

            this.ignore = true

        else if (value.equalsIgnoreCase("yes"))

            this.ignore = true

        else

            this.ignore = false

 

    }

 

    protected String selectEncoding(ServletRequest request) {

        return (this.defaultEncoding)

    }

     

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12056344.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存