Spring_MVC

一、SpringMVC执行流程

二、springmvc的核心组件

DispatcherServlet(前端控制器):接受请求,加载springmvc.xml

HandlerMapping(处理器映射器):找handler

HandlerAdapter(处理器适配器):调用handler

ViewResolver(视图解析器):拼接jsp的路径

View(视图渲染器):把数据填充到request,跳转页面

method属性示例

<a href="/account/findAccount1">请求方式</a>

我们再换一种请求方式

<form action="account/findAccount1" method="post">

<input type="submit" value="保存账户,post 请求">

</form>

三、@RequestMapping注解

作用:建立url 和 方法 的映射关系(Map<url, 方法>)

使用场景:

①方法:建立url 和 方法 的映射关系

②类:窄化路径

属性:

value属性:url

method属性:设置请求方式,eg:RequestMethod.POST|GET|DELTE|PUT,简写方式:@PostMapping("/findAcc ount")

例如:

@RequestMapping(value="/findAccount", method = RequestMethod.POST)

四、handler的返回值

1、返回ModelAndView

public ModelAndView findAccount(){

ModelAndView mv = new ModelAndView();

mv.addObject("msg", "");

mv.setViewName("success");

return mv;

}

2、返回字符串

1)返回视图名

public String findAccount(Model model){

model.addAttribute("msg", "");

return "success";

}

2)重定向(①两次请求 ②数据丢失)

public String findAccount( ){

return "redirect:/account/findAccount";

}

3)转发(①一次请求 ②数据不丢失)

public String findAccount( ){

return "forward:/account/findAccount";

}

五、参数接收(jsp---参数---->controller)

1、基本类型-少量

<a href="/account/findAccount8?name=ssyy&address=japan">少量2-基本类型</a>

public String findAccount7(String name, String address){

}

2、pojo-多个

<form action="/account/findAccount9" method="post">

账户名称:<input type="text" name="name"><br/>

账户密码:<input type="text" name="pwd"><br/>

账户金额:<input type="text" name="money"><br/>

账户地址:<input type="text" name="address"><br/>

<input type="submit" value="多个-pojo">

</form>

public String findAccount9(Account account){

}

3、restful类型

<a href="/account/findAccount10/tom/us">restful类型</a>

@RequestMapping("/findAccount10/{name}/{address}")

public String findAccount10(@PathVariable String name, @PathVariable String address){

}

相关推荐
dinl_vin7 小时前
FastAPI 系列 ·(四):数据库集成——SQLAlchemy 2.0 异步 ORM 与 Alembic 迁移
java·数据库·fastapi
编码者卢布7 小时前
【Azure Service Bus】Azure Service Bus Java SDK 中 Token 刷新异常的排查思路
java·python·azure
兰令水7 小时前
topcode【随机算法题】【2026.5.20打卡-java版本】
java·开发语言·算法
AI瓦力7 小时前
技术分享 | 彻底解决图片“躺平”问题:Java 后端强制校准图片方向
java
武子康7 小时前
Java-219 RocketMQ Spring Boot 集成指南:生产者与消费者实战
java·spring boot·分布式·kafka·消息队列·rocketmq·java-rocketmq
RainCityLucky7 小时前
Java Swing 自定义组件库分享(七)
java·笔记·后端
小白|7 小时前
cmake:昇腾CANN构建系统完全指南
java·c++·算法
weixin_512976177 小时前
Java 面试宝典 Beta5.0
java
Ting-yu7 小时前
Spring AI Alibaba零基础速成(5) ---- Memory(记忆)
java·人工智能·后端·spring
月落归舟7 小时前
一文掌握Spring AOP:从入门到底层原理
java·后端·spring