![fd561edfe21041db95870969f9547c8d.png](https://img-blog.csdnimg.cn/img_convert/fd561edfe21041db95870969f9547c8d.png)
1、创建Web项目
2、导包
> spring相关jar包
> 日志包
> aop依赖的包
> SpringMVC的jar包: spring-webmvc.jar
> jstl
3、编写后端控制器代码
![c7343b7c8e4b8336b36c80c0e7a9fea0.png](https://img-blog.csdnimg.cn/img_convert/c7343b7c8e4b8336b36c80c0e7a9fea0.png)
注意:基于注解的环境搭建, 后端控制器无需实现任何接口, 就是一个普通的java类. 命名建议以Controller结尾.
方法签名要求:
public * methodName(..);
常用的方法签名:
public String methodName(..);
返回值类型是String, 代表要跳转的页面, 相当于viewName; 参数列表可以表示请求参数.
4、编写SpringMVC配置文件
![5a369e9dc695164798c8865079e5c361.png](https://img-blog.csdnimg.cn/img_convert/5a369e9dc695164798c8865079e5c361.png)
配置两个内容:
(1). 注解扫描 ,扫描注解
(2). 注解驱动, 由SpringMVC提供了默认的核心组件, 包括:
> 视图解析器: InternalResourceViewResolver
> 映射器: RequestMappingHandlerMapping
> 适配器: RequestMappingHandlerAdapter
> 异常解析器: ExceptionHandlerExceptionResolver 5、编写web.xml配置前端控制器
![a06329f67338e3e4a015a2728936588c.png](https://img-blog.csdnimg.cn/img_convert/a06329f67338e3e4a015a2728936588c.png)
测试:
![c16bb5742b528b97fe1da1008a7deb04.png](https://img-blog.csdnimg.cn/img_convert/c16bb5742b528b97fe1da1008a7deb04.png)
总结:这是常用的方式,
基于配置文件的方式, 有一个严重的问题:
后端控制器实现了接口, 必须遵循规范定义方法: handleRequest
程序员需要定义多个Controller来满足需要, 跟Servlet一样了.
基于注解的方式实现, 可以解决这个问题, 同时, 还简单.
基于注解的方式, 后端控制器就是一个普通的java类, 不需要实现任何接口.
我们可以为每个方法单独映射请求路径.