温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

SpringMvc的简单入门

发布时间:2020-05-27 11:00:05 来源:网络 阅读:207 作者:ckllf 栏目:编程语言

  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的注解配置,它默认为映射器,适配器进行了配置,也就是说这行代码让映射器,适配器也生效了。


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI