欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > SpringMVC;MVC模式;Spring环境搭建;

SpringMVC;MVC模式;Spring环境搭建;

2024/11/30 18:52:21 来源:https://blog.csdn.net/weixin_72637723/article/details/142031998  浏览:    关键词:SpringMVC;MVC模式;Spring环境搭建;

一,介绍MVC模式:

         MVC模式:

                1.M:model 模型,业务模型和数据模型.

                2.C:controller 控制器

                3.V:view 视图

        优点:

                使用控制器C把视图V和业务模型M分离,从而使同一个程序可以使用不同的表现形式

        使用场景:

                中大型项目

        核心:

                控制器

二,学习SpringMVC框架原因

1.我们在使用servlet初期的时候发现,每一个请求都对应一个servlet ,如果有100个请求,这个时候就需要写100个servlet,这样一来就 会造成servlet的数量太多,尽管后期进行了Servlet合并,但是任然是手动进行的,耦合度太高了。

2.使用servlet进行数据接收的时候,比较的麻烦 【参数绑定】

3.我们目前书写的代码没有办法实现java代码和servlet之间的解耦

三,SpringMVC框架

1.Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。

2.Spring MVC是一个基于MVC的web框架,Spring MVC分离了控制器,模型对象,过滤器以及处理程序对象的角色,这种分离让他们更 容易进行定制。

3.Spring MVC 3.0 后全面超越Struts2,成为最优秀的MVC框架

2.Spring MVC通过一套MVC注解,让POJO成为处理请求的控制器,而无须实现任何接口

4.采用了松散耦合可插拔组件结构,比其他MVC框架更具扩展性和灵活性

5.进行更简洁的Web层的开发

6.天生与Spring框架集成(如:IOC容器,AOP等)

7.能简单的进行web层的单元测试

8.支持灵活的URL到页面控制器的映射

9.非常容易与其他试图技术集成,

三, SpringMVC和Spring关系

1.SpringMVC是Spring framework的子框架.

2.SpringMVC运行后形成自己的容器.Spring也有自己的容器. ​ 2.1 称Spring的容器和SpringMVC的容器是父子容器

3.SpringMVC就是比直接使用Spring多了spring-webmvc-xxx.jar

4.在环境搭建时,区分开父子容器. ​

         4.1 直观表现:Spring和SpringMVC的内容可以配置在一个配置文件中.区分不开父子容器.可能导致出现问题:例如声明式事务绑定无 效(不报错,还没有效果.) ​

        4.2 处理办法:Spring的东西配置一个配置文件中,SpringMVC的东西配在一个文件中.

四,SpringMVC框架的执行流程

1,流程描述:

2,介绍SpringMVC的组件:

五,SpringMVC环境搭建

1,创建maven web项目

1.New Project  点击Maven 先勾选Create from archetype 选择org.apache.maven.archetypes:maven-archetype-webapp
2.设置项目名称
3.创建完成后,手动添加resources和java目录

2,添加依赖;添加SpringMVC环境jar包(servlet-api.jar + jsp-api.jar)

 <dependencies><!--进行junit单元测试 --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.11</version><scope>test</scope></dependency><!--Spring的5大核心jar包 --><!--依赖于commons-logging日志管理 --><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.2</version></dependency><!--提供了框架的基本组成部分,包括IOC 和 DI--><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>4.1.6.RELEASE</version></dependency><!-- 提供了BeanFactory--><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>4.1.6.RELEASE</version></dependency><!--上下文配置对象,提供一个框架式的对象访问方式--><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>4.1.6.RELEASE</version></dependency><!--提供了强大的表达式语言--><dependency><groupId>org.springframework</groupId><artifactId>spring-expression</artifactId><version>4.1.6.RELEASE</version></dependency><!--springMVC的jar包--><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>4.1.6.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>4.1.6.RELEASE</version></dependency><!--java web依赖 --><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>2.3</version></dependency><dependency><groupId>javax.servlet.jsp</groupId><artifactId>jsp-api</artifactId><version>2.2</version></dependency><!-- jstl表达式 --><dependency><groupId>jstl</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency><dependency><groupId>taglibs</groupId><artifactId>standard</artifactId><version>1.1.2</version></dependency></dependencies>

3,编写web.xml

<web-app version="2.5"xmlns="http://java.sun.com/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"><display-name>Archetype Created Web Application</display-name><!--设置欢迎页 --><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list><!--配置前端控制器,拦截的是以do结尾的url --><servlet><servlet-name>springmvc</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><!-- 自启动-在启动tomcat时立即加载对应的Servlet --><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>springmvc</servlet-name><url-pattern>*.do</url-pattern></servlet-mapping></web-app>

4,创建Spring核心配置文件

要求:

        1.在WEB-INF下

        2.新建名字叫:<servlet-name>-servlet.xml配置文件,并配置内容

                补:<servlet-name>-servlet.xml 的意思是:如果web.xml中,<servlet-name>springmvc</servlet-name>那么创建的Spring框架的核心配置文件名就叫做springmvc-servlet.xml。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xmlns:mvc="http://www.springframework.org/schema/mvc"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/mvchttp://www.springframework.org/schema/mvc/spring-mvc.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsd"><!-- 设置注解扫描路径 --><context:component-scan base-package="com.jr.controller"></context:component-scan><!-- 默认加载注解处理器映射器和处理器适配器及很多的参数绑定 --><mvc:annotation-driven/>
</beans>

5,编写控制器

@Controller
public class UserController {@RequestMapping("reg.do")public ModelAndView show(HttpServletRequest request){ModelAndView mv=new ModelAndView();String name=request.getParameter("username");request.setAttribute("uname",name);mv.setViewName("ok.jsp");return mv;}
}

6,创建index.jsp页面

<body><form action="reg.do" method="post">用户名:<input type="text" name="username"><br/>密码:<input type="password" name="password"/><br/><input type="submit" value="提交"></form>
</body>

7,创建success.jsp页面

<body>req:${uname}
</body>

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com