复习:
内容:
web方法开发方法论1和web方法论2都已经讲解完成。
遇到问题:
乱码问题:
通过添加Filter过滤器解决问题。
@Control里面使用原生API,HttpServeltRequest,HttpServletRespone
可以进行重定向和请求转发。
@RequestMapping("/userform1")
public String getFormData(User user) throws UnsupportedEncodingException{
System.out.println("user->"+user);
String pro = user.getAddress().getCity();
System.out.println("pro->"+pro);
String pro1 = new String(pro.getBytes(),"UTF-8");
System.out.println(pro1);
return "success";
}
//原生态API讲解
@RequestMapping("/userform2")
public void getParamData2(User user,HttpServletRequest req,HttpServletResponse resp) throws Exception{
System.out.println("req->"+req);
System.out.println("resp->"+resp);
//因为不好用,所以
req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
resp.setContentType("text/html");
//http://localhost:8080/springmvc01/WEB-INF/jsp/success.jsp
// 使用原生API进行请求转发
//req.getRequestDispatcher("/WEB-INF/jsp/success.jsp").forward(req, resp);
//重定向
resp.sendRedirect("https://www.baidu.com"); //地址栏发生变化,request作用域失效,session开始起作用
return;
//return "success";
}
新知识
web开发方法论:
3,如何跳转到模板(JSP)
请求转发和重定向
4,如何给这个模板赋值
以前:pageContext request session application
调用什么方法:request.setAttribute("key",Object)
现在如何处理:springmvc框架提供了
ModulAndView 从这个类名称可以感觉:既可以拿到数据,也可以跳转到页面。
map
Model
ModelMap
简单来讲:可以赋值,可以跳转。
代码如何编写:
:
/**
*
* 案例1:设置一个admin,前台页面获取到admin这个数据
* 使用
*/
@RequestMapping("/mav")
public ModelAndView testMoudelAndView(){
ModelAndView mav = new ModelAndView();
// 第一个作用存数据 addObject
mav.addObject("username", "admin");
// 第二步:跳转到页面
mav.setViewName("success");
//需求:返回数据改为 mav
return mav;
}
第二步:修改前段success.jsp,通过这个EL表达式获取数据。
当前访问用户是:${username}
1,这个视频讲解主要内容?
2,细节方面。(导入什么包)
3,出问题,先思考,出现问题点。在解决
确认问题在那个类,再方法。删一行,再删。
4,如何百度?
问题说明白,报错内容直接百度。
如果百度内容不符合要求,重新输入关键字。
假如百度出现结果:大概先看一下,然后再进行选择。
三:除了ModelAndView 之外还有个进行数据存储的对象。
3,1 map
/**
* map 是通过传入参数的方式,进行操作
*/
@RequestMapping("/mavmap")
public String testMap(Map
//数据的存储
map.put("un", "admin1");
return "success";
}
3,2 model
/**
* model 的存储数据
*/
@RequestMapping("/mavmodel")
public String testModel(Model model ){
model.addAttribute("unmodel", "model");
return "success";
}
3,3 modelMap
/**
* modelMap 的存储数据
*/
@RequestMapping("/mavmodelmap")
public String testModel1(ModelMap mmap){
mmap.addAttribute("unmodelMap", "modelMap");
return "success";
}
如何进行代码的编写: