突然想对springmvc做个简单的整理哈哈~写到后面突然有很多内容,不是一两句话、一两个例子能说清楚,待完善中...
一、什么是springmvc
(1)理解
springmvc是当前的主流的MVC框架,跟struts2类似,虽然struts2是已经是一个成熟的框架,但是随着springmvc后来居上,很多公司都开始用springmvc+spring+mybatis进行开发。struts2开发效率高,但是springmvc性能比struts2好,所以springmvc是比较适用大型的项目开发。其实MVC框架很多内容可以进行类比,所以学了struts2之后再学springmvc也就没那么难。下面的总结可能有些整理的不全面
(2)原理图
二、spring环境的搭建
(1)导入相关jar包(可以用maven依赖注入)
不用annotation:
commons-logging-1.1.3.jar
spring-beans-4.2.4.RELEASE.jarspring-context-4.2.4.RELEASE.jarspring-core-4.2.4.RELEASE.jarspring-expression-4.2.4.RELEASE.jarspring-web-4.2.4.RELEASE.jarspring-webmvc-4.2.4.RELEASE.jar用annotation:
commons-logging-1.1.3.jar
spring-beans-4.2.4.RELEASE.jarspring-context-4.2.4.RELEASE.jarspring-core-4.2.4.RELEASE.jarspring-expression-4.2.4.RELEASE.jarspring-web-4.2.4.RELEASE.jarspring-webmvc-4.2.4.RELEASE.jarspring-aop-3.1.1.RELEASE.jar
用maven:
org.springframework spring-webmvc 3.2.8.RELEASE org.springframework spring-tx 4.2.6.RELEASE
二、web.xml
DispatcherServlet归根到底就是servlet,所以在web.xml配置DispatcherServlet跟配置servlet一样
Archetype Created Web Application login.jsp contextConfigLocation classpath:applicationContext.xml org.springframework.web.context.ContextLoaderListener springmvc org.springframework.web.servlet.DispatcherServlet 1 springmvc *.do
三、springmvc-servlet.xml
这个xml就是对controller的配置,包括如何url访问如何找到对应的controller;controller返回的ModelAndView或者String,如何根据其找到相对应的jsp页面;还有各种各样的配置(比如json、乱码...)下面的代码不是用注解方式
/WEB-INF/view/ .jsp
四、controller
对于controller有多种实现方法,注解的方式比较多,后面再对注解进行详细写
public class HelloController implements Controller{ @Override public ModelAndView handleRequest(HttpServletRequest req, HttpServletResponse resp) throws Exception { ModelAndView mv = new ModelAndView(); mv.addObject("msg", "hello springmvc"); mv.setViewName("hello");//设置跳转的页面的名字 return mv; }}
五、jsp页面
通过${msg}就能将对应的数据显示出来
六、访问的路径:http://localhost:8080/项目名/hello.do 就可以访问到对应的/WEB-INF/view/hello.jsp对应的jsp页面