preface:
在b站看的狂神说的springmvc手痒痒的还是写个学习记录比较好,尤其是一些操作部分,关于概念的一些问题都参考狂神的笔记。视频课程也在b站可以看。另外,这个教程也有两三年左右了,也不一定是目前实际开发中最新颖的技术了(看到弹幕有人吐槽,提前预防一下0.0),只是小白向学习记录,如有错误还望各位xdm指正。
1、回顾MVC
1.1、什么是MVC
1.2、Model1时代
1.3、Model2时代
1.4、回顾Servlet
1.创建maven项目(普通一点,不要勾选)建好父项目后,删掉默认生成的src(因为用不到,不删其实影响不到,就是用不到),然后导入依赖(尽量不要直接复制,自己手打一遍,直接复制,可能会出现导入不成功的现象)
<!--导入依赖-->
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.1.9.RELEASE</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
可以在这里看到它正在努力的下包
2.建立一个Moudle:springmvc-01,并添加Web app的支持。
还是添加一个普通点的项目,啥都别选。然后按下图方式添加web支持
- 导入servlet 和 jsp 的 jar 依赖(这里吧,其实不导入似乎也没错,这里先跟着教程做,以后有遇到问题再解决)
4.编写一个Servlet类,用来处理用户的请求(在这一步看到弹幕里有不同的处理方式,等我学会hello world怎么写了,再去研究吧)
//要注意先建个package包,再建类,,,我事后补上的,把这个类丢进包里的,
新建的只是一个普通的类,需要再继承一下HttpServlet
重写父亲的两个方法,doGet和doPost
public class hello extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//1.获取前端参数
String method = req.getParameter("method");
if (method.equals("add")){
req.getSession().setAttribute("msg","执行了add方法");
}
if (method.equals("delete")){
req.getSession().setAttribute("msg","执行了delete方法");
}
//2.调用业务层//没有业务,先不管
//3.视图转发或重定向
//需要一个页面,在web/WEB-INF下新建一个directory,命名为jsp
//再新建一个页面,名为test.jsp
//在body标签里,用${msg}获取到msg
req.getRequestDispatcher("/WEB-INF/jsp/test.jsp").forward(req,resp);//转发
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);//doPost调用doGet,实现复用
}
}
5.在web/WEB_INF/web.xml 种配置servlet
6.此时需要另外一个页面
7.配置tomcat,务必按照视频中的一模一样的来,会成功的
//假设没有tomcat的话,可以参考:安装tomcat
9.启动成功,测试一下
localhost:8080/hello?method=add
localhost:8080/hello?method=delete
MVC框架要做哪些事情
- 将url映射到java类或java类的方法 .
- 封装用户提交的数据 .
- 处理请求--调用相关的业务处理--封装响应数据 .
- 将响应的数据进行渲染 . jsp / html 等表示层数据
说明: 常见的服务器端MVC框架有:Struts、Spring MVC、ASP.NET MVC、Zend Framework、JSF;常见前端MVC框架:vue、angularjs、react、backbone;由MVC演化出了另外一些模式如:MVP、MVVM 等等....
2、什么是SpringMVC
2.1、概述
Spring MVC是Spring Framework的一部分,是基于Java实现MVC的轻量级Web框架。