java class api 中文乱码_SpringMVC之springmvc原始api,请求中文乱码问题

先搞一波效果图

3ad01521a1e2ac52fce5440cbac7c8ea.png

1.Controller

package com.tz.controller;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpSession;

import org.springframework.beans.factory.annotation.Required;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.CookieValue;

import org.springframework.web.bind.annotation.RequestHeader;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestParam;

import com.tz.domain.Course;

@Controller

public class RequestController {

/**

* @PathVariable("user"):获取路径中的值/handler/{user}

* @RequestParam("user"):获取请求参数/hander/{user}?user=coco

*

* @param userName

* @return

*/

@RequestMapping("/handle")

public String handler(@RequestParam(value="user",required=false) String userName){

//userName = request.getParameter("user");

System.out.println(userName);

return "success";

}

@RequestMapping("/handle2")

public String handler02(@RequestParam(value="user",required=false,defaultValue="你没有带参数") String userName,

@RequestHeader(value="User-Agent",required=false) String user_Agent,

@CookieValue("JSESSIONID") String js){

//userName = request.getParameter("user");

System.out.println(userName);

System.out.println(user_Agent);

System.out.println(js);

return "success";

}

/**

* springmvc可以在参数上写servlet常用的api

* HttpServletRequest

* HttpServletResponse

* Httpsession

*

* InputStream:request.getInputStream();

* OutputStream:response.getOutputStream();

* Reader:request.getReader();

* Writer:response.getWriter();

*

* 请求:客户端-->服务端(客户端显示乱码)

* 修改tomcat配置文件

* GET有效

*

* 第一次获取请求参数之前:request.setCharacterEncoding("UTF-8");

*

* 响应:服务端-->客户端(服务端显示乱码)

* reponse.setContentType("text/html;charset=utf-8");

* @param c

* @return

*/

@RequestMapping("/addCourse")

public String addCourse(Course c){//springMVC会自动为我们定义的类型进行赋值

/**

* 1.将对象中的每一个属性从request参数中尝试取出来,并进行封装

* request.getParameter("参数名");如果有值,就会取出来封装到实体类的属性中(调用set方法)

*/

System.out.println(c);

return "success";

}

@RequestMapping("/handle04")

public String handle04(HttpSession session,HttpServletRequest request){

session.setAttribute("session","session域");

request.setAttribute("request","request域");

return "success";

}

}

2.配置文件web.xml(最重要的就是设置那个字符编码过滤器)

springmvc_Day01

index.html

index.htm

index.jsp

default.html

default.htm

default.jsp

springmvc

org.springframework.web.servlet.DispatcherServlet

1

springmvc

/

CharacterEncodingFilter

org.springframework.web.filter.CharacterEncodingFilter

encoding

UTF-8

forceRequestEncoding

true

forceResponseEncoding

true

CharacterEncodingFilter

/*

HiddenHttpMethodFilter

org.springframework.web.filter.HiddenHttpMethodFilter

HiddenHttpMethodFilter

/*

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值