servlet处理http请求7

客户端发送请求的方式
1.地址栏直接输入url
2.超链接指定的url
3.表单form的action指定的url
4.js的location.href指定url
如果要想获取http请求的参数就需要明白HttpServletRequest接口,这个接口处理http请求
由容器实现,开发中直接从domethod的参数中获取实例
获取请求参数的方法:
使用HttpServletRequest提供的方法获取参数
getParameter
getParameterValues 返回数组
getParameterNames 获取所有参数名
getParameterMap 获取所有参数名与参数值
如果表单有指定属性enctyoe=“multipart/from-data”,则以上方法无效
超链接来传值

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        String name = request.getParameter("name");
        String gender = request.getParameter("gender");
        System.out.println(name);
        System.out.println(gender);
        System.out.println("--------------------");
        String[] names = request.getParameterValues("name");
        for (String n : names) {
            System.out.println(n);
        }
        System.out.println("--------------------");
        Enumeration<String> params = request.getParameterNames();
        while (params.hasMoreElements()) {
            String param = params.nextElement();
            System.out.println(param + ":" + request.getParameter(param));
        }
        System.out.println("--------------------");
        Map<String, String[]> map = request.getParameterMap();
        Set<String> keys=map.keySet();
        for (String key : keys) {
            System.out.println(key+":"+map.get(key));
        }
    }

表单来获取


    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        request.setCharacterEncoding("UTF-8");
        String userName = request.getParameter("username");
        System.out.println(userName);
        System.out.println(request.getParameter("userpwd"));
        System.out.println(request.getParameter("gender"));
        String[] favors = request.getParameterValues("favors");
        if (favors != null) {
            for (String favor : favors) {
                System.out.println(favor);
            }
        }
        System.out.println(request.getParameter("cities"));
        System.out.println(request.getParameter("description"));
        System.out.println("--------------------");
        Enumeration<String> params = request.getParameterNames();
        while (params.hasMoreElements()) {
            String param = params.nextElement();
            System.out.println(param + ":" + request.getParameter(param));
        }
        System.out.println("--------------------");
        Map<String, String[]> map = request.getParameterMap();
        Set<String> keys=map.keySet();
        for (String key : keys) {
            System.out.println(key+":"+map.get(key));
        }
    }

request.setCharacterEncoding(“UTF-8”);解决中文乱码问题,且要加载最前面

发布了48 篇原创文章 · 获赞 1 · 访问量 7488
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章