`
linzx0212
  • 浏览: 7431 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

Spring MVC纯注解配置工程简单实例——Hello World

阅读更多

JDK:1.8

Tomcat:8.5.x

 

工程目录结构



 

 

pom.xml配置

<project xmlns="http://maven.apache.org/POM/4.0.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.linzx.test</groupId>
	<artifactId>test-springannotationconfig</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>war</packaging>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<java.version>1.8</java.version>
		<org.springframework.version>4.3.3.RELEASE</org.springframework.version>
	</properties>

	<dependencies>
		<!-- spring mvc -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>${org.springframework.version}</version>
		</dependency>

		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<version>4.0.1</version>
			<scope>provided</scope>
		</dependency>

		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.12</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.7.0</version>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-war-plugin</artifactId>
				<version>3.2.2</version>
			</plugin>
		</plugins>
	</build>
</project>

 

web.xml的注解配置类

package com.linzx.test.springweb.config;

import javax.servlet.FilterRegistration.Dynamic;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;

import org.springframework.web.filter.CharacterEncodingFilter;
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;

/**
 * web.xml
 * 继承AbstractAnnotationConfigDispatcherServletInitializer,会同时创建DispatcherServlet和ContextLoaderListener
 */
public class WebInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {

    @Override
    protected Class<?>[] getRootConfigClasses() {
        return new Class[] { ApplicationConfig.class };
    }

    @Override
    protected Class<?>[] getServletConfigClasses() {
        return new Class[] { WebMvcConfig.class };
    }

    @Override
    protected String[] getServletMappings() {
        return new String[] { "/" };
    }

    @Override
    public void onStartup(ServletContext servletContext) throws ServletException {
        super.onStartup(servletContext);
        
        Dynamic characterEncoding = servletContext.addFilter("characterEncoding", CharacterEncodingFilter.class);
        characterEncoding.setInitParameter("forceEncoding", "true");
        characterEncoding.setInitParameter("encoding", "UTF-8");
        characterEncoding.addMappingForUrlPatterns(null, true, "/*");
    }
}

 

spring-mvc.xml的注解配置类

package com.linzx.test.springweb.config;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.ComponentScan.Filter;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Controller;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

/**
 * Spring-MVC配置,相当于spring-mvc.xml
 */
@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "com.linzx.test.springweb.controller", includeFilters = @Filter(classes = Controller.class), useDefaultFilters = false)
public class WebMvcConfig extends WebMvcConfigurerAdapter {

}

 

application.xml的注解配置类

package com.linzx.test.springweb.config;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.ComponentScan.Filter;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Controller;

/**
 * 业务类配置,相当于application.xml
 */
@Configuration
@ComponentScan(basePackages = { "com.linzx.test.springweb" }, excludeFilters = { @Filter(classes = Controller.class) })
public class ApplicationConfig {

}

 

Controller

package com.linzx.test.springweb.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @RequestMapping("/")
    public String hello() {
        return "Hello World!";
    }
}

 

访问结果



 

  • 大小: 77.7 KB
  • 大小: 6.4 KB
分享到:
评论

相关推荐

    spring MVC的HelloWorld完整实例

    总的来说,"spring MVC的HelloWorld完整实例"提供了一个简单的起点,帮助开发者了解Spring MVC的工作原理和基本配置。通过这个实例,你可以学习到如何创建控制器、配置Spring MVC、处理请求和返回响应,以及如何在...

    Spring MVC Helloworld实例

    在这个“Spring MVC Helloworld实例”中,我们将会探讨如何利用Spring MVC 3.0.5版本创建一个简单的Hello World应用程序。这个实例包括了所有必要的jar包,使开发者能够快速地开始他们的开发工作。 首先,了解...

    spring學習筆記——Helloworld

    在本篇“Spring学习笔记——HelloWorld”中,我们将探讨Spring框架的基础知识,以及如何创建一个简单的Spring应用程序。Spring是一个广泛使用的Java企业级应用开发框架,它提供了丰富的功能,包括依赖注入、AOP...

    Spring3MVC-REST-HelloWorld 实例简单代码

    Spring3MVC-REST-HelloWorld 是一个基础的示例,用于展示如何在Spring框架的MVC模块中实现RESTful Web服务。这个实例是初学者理解Spring MVC与REST结合使用的理想起点。REST(Representational State Transfer)是一...

    spring5.0_mvc_maven项目_HelloWorld实例

    这个“HelloWorld”实例展示了Spring 5.0 MVC的基础用法,包括如何配置MVC环境、编写Controller以及展示结果。随着对Spring MVC的深入了解,你可以添加更多的功能,如处理POST请求、使用ModelAndView对象传递复杂...

    基于xml配置的spring mvc Helloworld实例

    在这个基于XML配置的Spring MVC HelloWorld实例中,我们将深入理解如何设置并运行一个基本的Spring MVC项目。 首先,Spring MVC的核心在于DispatcherServlet,它是整个应用的入口点,负责处理所有的HTTP请求。在`...

    Spring MVC HelloWorld Maven实例

    **Spring MVC HelloWorld Maven实例** Spring MVC是Spring框架的一部分,它是一个用于构建Web应用程序的模型-视图-控制器(MVC)架构。在这个实例中,我们将深入理解如何使用Maven构建一个基本的“Hello, World!”...

    Spring MVC 入门实例

    这篇文章将教你快速地上手使用 Spring 框架. 如果你手上有一本《Spring in Action》, 那么你最好从第三部分"Spring 在 Web 层的应用--建立 Web 层"开始看, 否则那将是一场恶梦! 首先, 我需要在你心里建立起 Spring...

    spring MVC Helloworld

    **Spring MVC HelloWorld 实例详解** 在Java Web开发中,Spring MVC框架被广泛使用,它为构建基于模型-视图-控制器(MVC)模式的Web应用程序提供了强大的支持。本篇文章将详细讲解如何在MyEclipse2013环境中创建一...

    spring MVC HelloWorld

    我自己写的Spring MVC的一个HelloWold,从建HelloWorld工程,搭建环境Install spring,配置web.xml,配置SpringMVC的配置文件springDispatcherServlet-servlet.xml,添加控制器类,建jsp页面,部署 Tomcat,最后运行...

    Spring MVC+hibernate helloworld

    这个简单的HelloWorld实例展示了Spring MVC和Hibernate的集成,以及如何进行基本的数据验证。 通过这个实例,你可以了解到如何将Spring MVC用于处理HTTP请求,使用Hibernate进行数据库操作,以及如何结合Spring的...

    Springmvc的helloWorld实例

    **Spring MVC HelloWorld 实例详解** 在Java Web开发中,Spring MVC是一个非常重要的框架,它用于构建灵活、可扩展的Web应用程序。本实例将带你深入理解Spring MVC 4.0的基本用法,通过一个简单的"Hello World"应用...

    Spring mvc、 Spring、 Mybatis、 注解实例、 项目实例 从入门到项目实战

    5. **项目实例**:这些实例可能包括创建简单的Hello World应用,到构建完整的CRUD操作,再到实现复杂的业务流程。项目实战通常会涵盖如何设置环境、配置文件、数据库连接、控制器编写、服务接口实现、DAO操作以及...

    spring mvc web demo(helloworld)

    《Spring MVC Web应用初探:HelloWorld实例》 在IT领域,Spring MVC是Java开发者广泛使用的Web应用程序框架,它提供了模型-视图-控制器(MVC)架构模式,便于开发和管理复杂的Web应用。本教程将围绕“spring mvc ...

    Spring4 HelloWorld

    9. **运行和测试**:完成配置后,通过运行一个简单的Java程序,加载`ApplicationContext`,获取并调用`HelloWorld` Bean的方法,就能看到“Hello, Spring4!”这样的输出,从而验证配置是否正确。 10. **Spring的...

    spring mvc demo实例

    本实例是一个基础的Spring MVC "Hello, World!" 示例,旨在帮助初学者理解Spring MVC的核心概念和工作流程。 ### 1. MVC架构 MVC架构将应用程序分为三个主要组件:模型(Model)、视图(View)和控制器...

    Spring MVC 基础实例,能明白SpringMVC是怎么回事

    在这个基础实例中,我们将探讨如何使用Spring MVC的核心组件,如`@RequestMapping`和`@Controller`注解,来创建一个简单的"Hello, World!"应用,以深入理解其工作原理。 首先,我们需要在项目中引入Spring MVC的...

    spring3.0 mvc中文实例教程

    2. **创建Hello World应用程序**:引导读者完成第一个简单的Spring MVC应用。 3. **表单处理**:讲解如何在Spring MVC中处理用户输入的表单数据。 4. **Tiles支持与Eclipse插件教程**:介绍使用Tiles布局系统和...

    Spring MVC入门实例

    在开始 Spring MVC 实例之前,首先需要配置 Spring MVC。这包括在 `web.xml` 文件中配置 DispatcherServlet 和 Spring 的上下文配置文件。例如: ```xml &lt;!-- web.xml --&gt; &lt;servlet-name&gt;dispatcher ...

Global site tag (gtag.js) - Google Analytics