`
空指针异常
  • 浏览: 22615 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

springmvc知识点

阅读更多
一、web.xml配置
<web-app>
    <servlet>
        <servlet-name>example</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>example</servlet-name>
        <url-pattern>/example/*</url-pattern>
    </servlet-mapping>
</web-app>

注:Spring MVC looks for a file named [servlet-name]-servlet.xml in the WEB-INF directory of your web application and creates the beans defined there。如上例所示,如果名字不是examplep-servlet.xml,则可以加初始化参数,如下:
<servlet>
		<servlet-name>example</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<load-on-startup>1</load-on-startup>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>classpath*:spring_servlet.xml</param-value>
		</init-param>
	</servlet>


或者
public class MyWebApplicationInitializer implements WebApplicationInitializer {

    @Override
    public void onStartup(ServletContext container) {
        ServletRegistration.Dynamic registration = container.addServlet("dispatcher", new DispatcherServlet());
        registration.setLoadOnStartup(1);
        registration.addMapping("/example/*");
    }

}


二、Special Bean Types In the WebApplicationContext。配置在[servlet-name]-servlet.xml文件中。
1.HandlerMapping:HandlerMapping 将会把请求映射为 HandlerExecutionChain 对象(包含一个 Handler 处理器、多个 HandlerInterceptor 拦截器)对象。
2.HandlerAdapter:把处理器包装为适器配,从而支持多种类型的处理器。我的理解Controller上有多个@RequestMapping注解,但每一个Controller对应一个adapter,因此每次@RequestMapping请求会取对应的处理器处理。
3.HandlerExceptionResolver:对应异常处理
4.ViewResolver:把逻辑视图名解析为具体的 View
5.LocaleResolver:国际化处理
6.ThemeResolver:主题处理
7.MultipartResolver:文件上传
注:As mentioned in the previous section for each special bean the DispatcherServlet maintains a list of implementations to use by default. This information is kept in the file DispatcherServlet.properties in the package org.springframework.web.servlet

三、example-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:tx="http://www.springframework.org/schema/mvc" 
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
	                    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd         
	                    http://www.springframework.org/schema/mvc
	                    http://www.springframework.org/schema/tx/spring-mvc-3.0.xsd
	                    http://www.springframework.org/schema/context 
	                    http://www.springframework.org/schema/context/spring-context-3.0.xsd">
        <!-- 
            搜索org.test.web.controller包下实现了Controller接口或者
            带有@Controller注解的类。(@Compnent,@Service,@Repository等)  
          -->
	<context:component-scan base-package="org.test.web.controller"/>                    
	                    
        <!-- 视图为根目录下,且后缀为JSP -->
	<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
 		<property name="suffix" value=".jsp"/>
	</bean>
</beans>


四、Controller
//标志为spring组件
@Controller
//请求路径为http://ip:port/projectName/controller
@RequestMapping("/controller")
public class HelloWorldController {
    //接受请求为/helloworld的请求,
    //请求路径为http://ip:port/projectName/controller/helloworld
    @RequestMapping("/helloWorld")
    public String helloWorld(Model model) {
        model.addAttribute("message", "Hello World!");
        return "helloWorld";
    }
}


五、其它注解
@Controller:用于标识是处理器类;
@RequestMapping:请求到处理器功能方法的映射规则;
@PathVariable: 请求URI中的模板变量部分到处理器功能处理方法的方法参数上的绑定,从而支持RESTful架构风格的URI;
@RequestParam:请求参数到处理器功能处理方法的方法参数上的绑定;
@ModelAttribute:请求参数到命令对象的绑定;
@SessionAttributes : 用于声 明 session 级别存 储 的 属性, 放 置 在 处 理器 类 上 , 通 常 列 出 模型 属性(如
@ModelAttribute)对应的名称,则这些属性会透明的保存到 session 中;
@InitBinder:自定义数据绑定注册支持,用于将请求参数转换到命令对象属性的对应类型
@CookieValue:cookie 数据到处理器功能处理方法的方法参数上的绑定;
@RequestHeader:请求头(header)数据到处理器功能处理方法的方法参数上的绑定;
@RequestBody:请求的 body 体的绑定(通过 HttpMessageConverter 进行类型转换) ;
@ResponseBody:处理器功能处理方法的返回值作为响应体(通过 HttpMessageConverter 进行类型转换) ;
@ResponseStatus:定义处理器功能处理方法/异常处理器返回的状态码和原因;
@ExceptionHandler:注解式声明异常处理器;

具体问题可参考附件文档,从此处下载:
http://jinnianshilongnian.iteye.com/blog/1752171
分享到:
评论

相关推荐

    Springmvc知识点所有的详细总结

    最详细的Springmvc知识点的 总结 小到 给你举列子说明

    sturts2、springmvc知识点

    ### Struts2与SpringMVC知识点详解 #### Struts2简介 Struts2是一个用于构建企业级Java Web应用的强大框架,它遵循MVC(Model-View-Controller)设计模式,旨在简化Web应用的开发和维护过程。Struts2的核心优势在于...

    SpringMVC知识点.doc

    1. MVC 基础知识 在 MVC 模式中,Model(数据模型)负责处理业务逻辑和数据管理,View(视图)负责展示数据,而 Controller(控制器)作为两者之间的桥梁,接收用户的请求并调用 Model 处理,最后将结果传递给 View ...

    java工程师之springMVC知识点

    MVC知识点总结

    SpringMVC 学习总结

    SpringMVC 是一款基于 Java 的轻量级 Web 开发框架,它是 Spring 框架的一部分,主要用于构建 MVC(Model-View-Controller)架构的应用程序。SpringMVC 的核心是 DispatcherServlet,它作为前端控制器,负责接收请求...

    吴天雄--SpringMVC笔记.doc

    【SpringMVC 知识点详解】 SpringMVC 是一个基于 Java 的轻量级 Web 请求驱动框架,它属于 Spring Framework 的一部分,旨在简化 Web 应用的开发。SpringMVC 以其灵活性、高性能和易用性,成为了当今最主流的 MVC ...

    AngularJS+springmvc的demo

    ### SpringMVC 知识点 1. **模型-视图-控制器架构**: SpringMVC 是基于MVC设计模式的,负责处理请求、处理业务逻辑和返回响应。 2. **配置**: 通常使用`@Controller`注解标记控制器类,`@RequestMapping`处理HTTP...

    springMvc 燕青 springmvc课程 2天源代码

    【SpringMVC 知识点详解】 SpringMVC 是 Spring 框架的一部分,它是一个用于构建 Web 应用程序的轻量级、模型-视图-控制器(MVC)框架。SpringMVC 以其强大的功能和灵活性,成为了Java开发者的首选工具之一,尤其在...

    23道SpringMVC常见面试题.docx

    【SpringMVC 知识点详解】 SpringMVC 是 Spring 框架的一个核心模块,主要负责处理 Web 请求。作为一个基于 MVC(Model-View-Controller)设计模式的框架,SpringMVC 具备以下特点: 1. **组件化**:SpringMVC 的...

    Maven SpringMVC

    ** Maven SpringMVC 知识点详解 ** Maven 是一个强大的项目管理和构建工具,它在Java开发领域中被广泛使用。Maven通过提供统一的构建过程和依赖管理,简化了项目的构建、测试和部署流程。它使用XML格式的配置文件...

    springmvc_mybatis集成干净框架

    **SpringMVC 知识点** 1. **MVC 模式**:SpringMVC 提供了一个 MVC 设计模式的实现,将应用程序分为模型、视图和控制器三个部分,使得代码结构清晰,易于维护。 2. **DispatcherServlet**:它是 SpringMVC 的核心...

    SpringMVC配置.docx

    **SpringMVC 知识点详解** SpringMVC 是 Spring 框架的一部分,它作为一个 Model-View-Controller (MVC) 模式实现,旨在简化 Web 应用的开发。SpringMVC 提供了优雅的编程模型和高度可定制性,使得开发者能够将业务...

    传智播客springMVC的课件+mybatis的课件以及视频源码

    SpringMVC知识点: 1. **请求处理流程**:SpringMVC通过DispatcherServlet接收HTTP请求,然后通过HandlerMapping找到对应的Controller,Controller处理请求后,通过ModelAndView返回数据和视图名,最后由...

    SpringMVC22问面试真题+答案1

    【SpringMVC 知识点详解】 1. **SpringMvc 的定义**: SpringMvc 是 Spring 框架的一个核心模块,它是一个基于 Model-View-Controller(MVC)设计模式的轻量级 web 开发框架。它使得开发者无需依赖中间件来整合应用...

    SpringMVC笔记

    ### SpringMVC知识点详解 #### 一、SpringMVC简介 1. **MVC概念解析** - **MVC**(Model-View-Controller)是一种软件设计模式,它将应用程序的输入逻辑、业务逻辑和界面展示逻辑分离。 - **M**(Model,模型...

    Angular SpringMVC Demo

    ### SpringMVC 知识点 **SpringMVC** 是Spring框架的一部分,用于构建后端服务器端应用。主要特点包括: 1. **Model-View-Controller**:遵循MVC设计模式,分离业务逻辑、数据和用户界面。 2. **DispatcherServlet...

    springmvc_mybatis

    **SpringMVC 知识点:** 1. **核心组件**:SpringMVC 的核心组件包括 DispatcherServlet(前端控制器)、HandlerMapping(处理器映射器)、HandlerAdapter(处理器适配器)、ViewResolver(视图解析器)等。...

    springmvc集成ibatis

    **SpringMVC 知识点** 1. **DispatcherServlet**: SpringMVC 的核心组件,作为前端控制器接收请求并分发到对应的处理器。 2. **Model-View-Controller**: MVC 设计模式,SpringMVC 通过 Controller 处理请求,Model...

    springmvc shiro框架

    **SpringMVC 知识点:** 1. **DispatcherServlet**:SpringMVC 的核心组件,负责接收请求并分发到相应的处理器。 2. **Model-View-Controller**:设计模式,将业务逻辑、数据和展示分离,提高代码的可维护性。 3. *...

    SpringMVC的知识点总结共7页.pdf.zip

    以下是对SpringMVC关键知识点的详细概述: 1. **MVC架构**:在Web开发中,MVC模式将应用程序分为三个主要组件:模型(Model)、视图(View)和控制器(Controller)。模型处理业务逻辑,视图负责展示,控制器接收...

Global site tag (gtag.js) - Google Analytics