SpringMvc的简单入门

SpringMvc的简单入门

目前创新互联公司已为上千家的企业提供了网站建设、域名、网络空间、网站托管、企业网站设计、凤台网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

1.三层架构:表现层(SpringMvc),业务层(Spring),持久层(Mybatis)

所以简单来说SpringMvc所干的事就是关于:

请求参数

响应结果

2.SpringMvc是基于MVC设计模型

M:model模型 如: javaBean

V:view视图如: jsp

C:controller控制器 如: Servlet

3.SpringMVC和struts2的异同:(面试可能会被问道)

共同点:

他们都是表现层的MVC模型框架来写的

他们得分底层都离不开ServletAPI

他们处理请求的机制都是一个核心控制器(SpringMvc是Servlet实现的Struts2是Filter实现的)

异同点:

SpringMVC的入口是Servlet,而Struts2是Filter(过滤器);

SpringMVC是基于方法实设计的,而struts2是基于类来设计的,Struts2每次执行都会去创建一个动作类,所以SpringMVC效率会比Struts2快一些。

SpringMVC使用更加简洁,同时还支持JSR303,处理ajax更加方便

Struts2的OGNL表达式是页面的开发效率相比SpringMVC更高一些,但执行效率并没有比JSTL提升,尤其是Struts2的表单标签,远没有html执行效率高

SpringMvc的简单入门

1.选择Maven工程的webapp模板,这里就不说啦,嘻嘻,提醒一点:

加上archetypeCatalog :internal会解决项目加载较慢的问题

2.补全目录:

3.导入依赖:

UTF-8

1.8

1.8

5.1.3.RELEASE

org.springframework

spring-context

${spring.version}

org.springframework

spring-web

${spring.version}

org.springframework

spring-webmvc

${spring.version}

org.apache.tomcat

servlet-api

6.0.29

org.apache.tomcat

jsp-api

6.0.29

4.在web.xml配置前端控制器

Archetype Created Web Application

dispatcherServlet

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

classpath:springmvc.xml

1

dispatcherServlet

/

5.创建一个springmvc.xml的配置文件放在resources下

6.配置tomcat,把项目加载进来

SpringMvc的简单入门

郑州妇科医院 http://www.120zzkd.com/

我编写一个index.jsp页面,当我点击标签的时候,我就跳转到某个Controller的某个方法里面去执行功能,执行完就跳转到success.jsp页面

1.首先我写了这个Controller类中的一个方法

2.我在index.jsp中写一个标签

入门程序

当我点击的时候跳转到sayhello()这个方法里面

2.1

首先我要把HelloController这个类变成一个对象啊,那我借助于spring的配置文件来进行,在类上加一个@Controller,此时借助于我们刚才的springmvc.xml来扫描这个包,进而创建Spring容器,创建HelloController对象。

2.2

命名空间:

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:mvc="http://www.springframework.org/schema/mvc"

xmlns:context="http://www.springframework.org/schema/context"

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context.xsd

http://www.springframework.org/schema/mvc

http://www.springframework.org/schema/mvc/spring-mvc.xsd">

开启扫描

2.3

此时你是否注意到sayhello()方法上的注解@RequestMapping("/hello")呢?

它又是什么作用呢?

它用于建立请求URL和处理请求方法之间的联系:

有了它入门程序前端控制器就可以通过处理器映射器找到HelloController下的sayhello()方法了。

2.4

为什么你的返回值是“success”呢,我之前说过等执行完就可以跳转到success.jsp,可是怎么跳转呢?这个SpringMvc的视图解析器就已经帮我们解决了

在springmvc.xml中配置视图解析器:

路径名有了,后缀名也有了,我只需要提供一个jsp的名称就好了,而sayhello()方法的返回值默认为路径的名称,这样我就可以执行完跳转到success.jsp页面了。

2.5

可是在我的代码中可以看到HelloController这个类上也有@RequestMapping(path = “/user”),难道类上也可以加这个注解???

YES!在类上加注解就相当于一级路径,所以jsp中的访问路径:

入门程序

2.6

SpringMvc框架就是各个组件构成的,这样更加灵活。

SpringMvc的各个组件中,处理器映射器,处理器适配器,视图解析器称为SpringMvc的三大组件,上一张老师的图吧

但是从这张图中我们可以看出来,还有其他的组件在发挥作用了呀,

当才视图适配器就进行配置,让起生效,为什么不配置处理映射器和处理器适配器呀?

上代码,hhhhhhhhhhhhhhh

是开启SpringMvc的注解配置,它默认为映射器,适配器进行了配置,也就是说这行代码让映射器,适配器也生效了。


分享名称:SpringMvc的简单入门
网页链接:http://pwwzsj.com/article/jhjpco.html