SpringMVC的初始

1:其实一开始对SSH和SSM并不是很熟悉的,对SSH可能熟悉些(Struts,Spring,Hibernate)这三个框架。但是由于框架的更新,和出现了更好的框架,一些老框架就被淘汰了,但是呢,一些老公司依旧在用,所以学习的时候最好学习了,这样去公司还可以进行维护,甚至开发。但对于SSM呢(Spring,SpringMVC,MyBatis),LZ就不是很熟悉,所以就学习呗,今天记录一下SpringMVC入门,方便以后lz自己脑补。

2:使用框架呢,第一步肯定是导包了,而SpringMVC框架算是Spring的子项目吧,直接去Spring的libs里面找包就行了,开发步骤如下所示:

  2.1:第一步:导包,导入Spring-core(IoC)包 ,Spring-web包,Spring-mvc的包,如下所示:

    commons-logging-1.1.3.jar【Spring-core(IoC)包】     spring-beans-3.2.5.RELEASE.jar【Spring-core(IoC)包】     spring-context-3.2.5.RELEASE.jar【Spring-core(IoC)包】     spring-core-3.2.5.RELEASE.jar【Spring-core(IoC)包】     spring-expression-3.2.5.RELEASE.jar【Spring-core(IoC)包】  spring-web-3.2.5.RELEASE.jar【Spring-web包】     spring-webmvc-3.2.5.RELEASE.jar【Spring-mvc的包】

  2.2:在/WEB-INF/下面创建一个web.xml文件,内容如下所示:

    注意: servlet-name:这个名字需要特别注意一下,后面会用到;           servlet-class:ctrl+t+shift 搜索DispatcherServlet

          或者Libraries/Web App Libraries/spring-webmvc-3.2.5.RELEASE.jar/DispatcherServlet.class              url-pattern:注意命名格式,不是/*,是*.action/*.do 

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
 3   <display-name>springMVC01_20170408</display-name>
 4   <welcome-file-list>
 5     <welcome-file>index.html</welcome-file>
 6     <welcome-file>index.htm</welcome-file>
 7     <welcome-file>index.jsp</welcome-file>
 8     <welcome-file>default.html</welcome-file>
 9     <welcome-file>default.htm</welcome-file>
10     <welcome-file>default.jsp</welcome-file>
11   </welcome-file-list>
12   
13   <!-- 注册Spring MVC的核心控制器 -->
14   <servlet>
15       <servlet-name>DispatcherServlet</servlet-name>
16       <!-- ctrl+shift+t 搜索DispatcherServlet -->
17       <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
18   </servlet>
19   <servlet-mapping>
20       <servlet-name>DispatcherServlet</servlet-name>
21       <url-pattern>*.action</url-pattern>
22   </servlet-mapping>
23   
24   
25 </web-app>

 2.3:创建HelloAction.java控制器类

 1 package com.bie.action;
 2 
 3 import javax.servlet.http.HttpServletRequest;
 4 import javax.servlet.http.HttpServletResponse;
 5 
 6 import org.springframework.web.servlet.ModelAndView;
 7 import org.springframework.web.servlet.mvc.Controller;
 8 
 9 /** 
10 * @author BieHongLi 
11 * @version 创建时间:2017年4月8日 下午3:39:12 
12 * 控制器Action
13 * 处理器Action
14 */
15 public class HelloAction implements Controller{
16 
17     //业务方法
18     @Override
19     public ModelAndView handleRequest(HttpServletRequest httpServletRequest, 
20             HttpServletResponse httpServletResponse) throws Exception {
21         //ModelAndView表示向视图封装的数据和路径
22         ModelAndView modelAndView = new ModelAndView();
23         
24         modelAndView.addObject("message","这是我的第一个SpringMVC程序,映射器,适配器,视图解析器都可以省略");
25         //真实路径
26         modelAndView.setViewName("/success.jsp");
27         return modelAndView;
28     }
29 
30     
31 }

2.4:创建一个success.jsp

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 7 <title>成功的页面</title>
 8 </head>
 9 <body>
10 
11 <h1>成功的页面Success.jsp</h1>
12 ${requestScope.message }
13 </body>
14 </html>

 2.5:配置:DispatcherServlet-servlet.xml

    在/WEB-INF/创建DispatcherServlet-servlet.xml配置文件;         (1)xml头部信息与spring.xml相同         (2)注意:该配置文件的命名规则:             web.xml文件中配置的<servlet-name>的值-servlet.xml             比如:DispatcherServlet-servlet.xml【注意大小写】

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 4     xmlns:p="http://www.springframework.org/schema/p"
 5     xmlns:context="http://www.springframework.org/schema/context"
 6     xsi:schemaLocation="http://www.springframework.org/schema/beans
 7          http://www.springframework.org/schema/beans/spring-beans.xsd
 8           http://www.springframework.org/schema/context
 9          http://www.springframework.org/schema/context/spring-context.xsd
10          http://www.springframework.org/schema/aop
11          http://www.springframework.org/schema/aop/spring-aop.xsd
12          http://www.springframework.org/schema/tx
13           http://www.springframework.org/schema/tx/spring-tx.xsd">
14      
15      
16      <!-- 
17          必写
18          1:注册Action
19              name:表示请求的路径
20              class:表示处理的全路径
21       -->
22      <bean name="/HelloAction.action" class="com.bie.action.HelloAction">
23      
24      </bean>
25      
26      
27      <!-- 
28          可选的:映射器,适配器,视图解析器
29       -->
30      <!--可选 
31          映射器
32          org.springframework.web.servlet/handler/BeanNameUrlHandlerMapping.class
33          BeanNameUrlHandlerMapping:表示将Bean标签的name属性当作Url请求
34       -->
35      <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping">
36      
37      </bean>
38      
39      <!--可选 
40          适配器
41          org.springframework.web.servlet/mvc/SimpleControllerHandlerAdapter.class
42          SimpleControllerHandlerAdapter:表示用于寻找实现了Controller借口的Action类
43       -->
44      <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter">
45      
46      </bean>
47      
48      
49      <!--可选 
50          视图解析器
51          org.springframework.web.servlet/view/InternalResourceViewResolver.class
52           InternalResourceViewResolver:表示通过ModelAndView对象中封装的视图名找到真正的页面
53       
54       -->
55      <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
56      
57      </bean>
58      
59      
60      
61 </beans>    

最后运行即可,输入就是DispatcherServlet-servlet.xml的bean的name的值,如下所示:

<bean name="/HelloAction.action" class="com.bie.action.HelloAction"> </bean>  

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏学习力

《Java从入门到放弃》框架入门篇:springMVC数据传递 (二)

1554
来自专栏JackieZheng

学习SpringMVC——拦截器

  拦截器,顾名思义就是用来拦截的。   那什么是拦截,又为什么要拦截。对于Spring MVC来说,拦截器主要的工作对象就是用户的请求,拦截下来之后,我们可以...

1948
来自专栏IT可乐

SpringMVC详解(三)------基于注解的入门实例

  前两篇博客我们讲解了基于XML 的入门实例,以及SpringMVC运行的详细流程。但是我们发现基于 XML 的配置还是比较麻烦的,而且,每个 Handler...

1995
来自专栏pangguoming

SpringMVC工作原理

2、  DispatcherServlet收到请求调用HandlerMapping处理器映射器。

955
来自专栏weixuqin 的专栏

springMVC 学习笔记(一):spring 入门

springMVC 是 spring 框架的一个模块,springMVC 和 spring 无需通过中间整合层进行整合。springMVC 是一个基于 mvc ...

742
来自专栏静默虚空的博客

JAVA 设计模式 状态模式

用途 状态模式 (State) 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 状态模式是一种行为型模式。 结构 ? 图-状态模式结...

1896
来自专栏云霄雨霁

SpringMVC--处理器映射器和处理器适配器笔记

1220
来自专栏菩提树下的杨过

Spring Security笔记:自定义登录页

以下内容参考了 http://www.mkyong.com/spring-security/spring-security-form-login-example...

1747
来自专栏JAVA烂猪皮

深入理解springMVC

Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的...

723
来自专栏IT可乐

SpringMVC详解(二)------详细架构

  通过上篇博客,我们能编写一个 SpringMVC 的入门实例,但是为什么要这样写?这样写有啥好处?通过这篇博客我们会有详细的了解。    本篇博客源码下载链...

1907

扫码关注云+社区