`

初学spring-mvc,做个小demo

阅读更多
初学springMVC,做个简单的例子,太尼玛困难了,好多jar包要么少了,要么冲突,今天总算可以搞了
1.导入这些jar包

2.首先配置web.xml,因为spring-mvc是基于dispatchServlet的MVC框架,dispatchServlet负责转发每一个request请求给相应的Handler处理以后再返回相应的View和Model,返回的视图和模型都可以不指定返回,在使用注解的SpringMvc中,处理器Handler基于@Controller和@RequestMapping这2个注解的,@Controller申明一个处理器类,@RequestMapping申明对应请求的映射关系,这样可以提供一个非常灵活的匹配和处理方式.web.xml配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<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/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

  <servlet>
  	<servlet-name>dispatcherServlet</servlet-name>
  	<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  	<servlet-name>dispatcherServlet</servlet-name>
  	<url-pattern>/</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

3.xml配置好了以后,需要创建一个名字为[servlet-name]-servlet.xml的xml文件,我的servlet名字为dispatcherServlet,所以我创建了一个dispatcherServlet-servlet.xml,配置如下,因为在初始化dispatchServlet的时候springMvc会默认到WEB-INF/下面找一个[servlet-name]-servlet.xml的文件,来初始化里面的bean,该文件中对应的bean对象会覆盖spring配置文件中声明的同名的bean对象,当然也可以通过配置servlet初始化参数来设置contextConfigLocation的值.
<init-param>
	<param-name>contextConfigLocation</param-name>
	<param-value>/WEB-INF/spring-mvc.xml</param-value>
</init-param>


<?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/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd">  
<mvc:annotation-driven /> 

 <mvc:default-servlet-handler />
    <!-- 启动Spring的组件自动扫描机制 -->
  <context:component-scan base-package="test.controller"></context:component-scan>
  
  <!-- 定义JSP --> 
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/WEB-INF/jsp/"/>
		<property name="suffix" value=".jsp"/>
	</bean>
</beans>




4.最后就需要写一个类来测试,也就是相当于写一个controller,不需要继承和实现别的类和接口,只要写注解就可以了,如下

关于控制器返回的视图,是由视图解析器来决定的,在xml中常用的视图解析器是InternalResourceViewResovler


package test.controller;

import java.util.LinkedHashMap;
import java.util.Map;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
@RequestMapping(value="/test")
public class TestController {
	@RequestMapping("/index")
	public ModelAndView index(){
		Map<String,String> testMap = new LinkedHashMap<String, String>();
		testMap.put("test", "Hello");
		testMap.put("test2", "World");
		return new ModelAndView("test").addAllObjects(testMap).addObject("testString", "ssss");
	}
}


5.最后就是写jsp来测试了,因为我在controller中返回的是test,而在配置文件中配置的前缀是web-inf/jsp所以在web-inf下面创建jsp文件夹里面在创建test.jsp,如下

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head></head>
  <body>
  	是从springMVC进来的 偶哈哈哈
  	${test}
  	${testString }
  </body>
</html>

6.最后启动tomcat,访问地址结果为:


总的来说还算幸运,就是很多东西只能自己慢慢摸索!少了jar包报的错只能网上去找去查,然后就是spring-mvc的包官网居然没有了,源代码放到github了!也找了好久 哎 英语不好 搞这种外国人的玩意儿累啊

最后参考了这个地址:http://haohaoxuexi.iteye.com/blog/1343761 这里面的概念还是说的比较详细的
  • 大小: 57.4 KB
  • 大小: 21.3 KB
分享到:
评论

相关推荐

    spring-mvc helloworld demo

    在本"spring-mvc helloworld demo"中,我们可以看到如何设置一个基本的 Spring MVC 项目,以便初学者了解其工作原理和配置步骤。 首先,我们需要理解 MVC 模式的概念。MVC 分为三个主要部分:模型(Model)、视图...

    基于spring-MVC的在线测试系统(客观题)

    **基于Spring-MVC的在线测试系统(客观题)** 该在线测试系统是一个使用Spring-MVC框架构建的简单示例...对于初学者来说,通过分析和修改源码,可以深入理解Spring-MVC的工作原理以及如何构建一个完整的Web应用程序。

    Spring-mvc+mybatis+shiro学习demo

    本示例项目“Spring-mvc+mybatis+shiro学习demo”提供了一个基础框架,帮助初学者了解如何整合这三个核心组件:Spring MVC(用于处理HTTP请求和控制业务逻辑)、MyBatis(一个持久层框架,简化数据库操作)以及Shiro...

    maven spring-mvc demo

    【标题】"maven spring-mvc demo"是一个基于Maven构建的Spring MVC示例项目,旨在帮助开发者理解和学习如何在实际开发中整合这两个强大的Java工具。这个项目是按照某个具体的教程(链接已给出)创建的,它展示了如何...

    spring-mvc-demo.zip

    在“spring-mvc-demo.zip”这个压缩包中,我们可以期待一个基于Spring MVC的示例应用,该应用可能包含以下几个关键部分: 1. **配置文件**:在Spring MVC项目中,主要的配置文件通常为`web.xml`,它是Web应用的部署...

    spring-mvc + hibernate Demo

    这个示例项目对于初学者来说是一个很好的学习资源,因为它展示了如何在实际项目中整合 Spring MVC 和 Hibernate。通过研究这个项目的源码,你可以了解两个框架的基本用法,以及如何将它们集成到一个完整的应用中。...

    spring-mvc-showcase-master

    Spring MVC 是 Spring 框架的重要组成部分,它是一个用于构建 Web 应用程序的模型-视图-控制器(MVC)框架。本项目"spring-mvc-showcase-master"旨在全面展示 Spring MVC 的功能和用法,帮助开发者深入理解和实践这...

    spring4-mvc-gradle

    通过这个DEMO项目,开发者可以学习如何设置Spring MVC的配置,如web.xml(虽然Spring Boot已经允许我们不再需要这个文件),以及如何使用Gradle的插件管理Spring MVC的依赖。同时,它也可以作为一个起点,帮助开发者...

    SpringDemo-master.zip

    通过解压这个文件,我们可以发现其主要包含了一个名为"SpringDemo-master"的项目目录,这通常意味着这个项目是按照Maven或者Gradle等构建工具的结构组织的,其中包括了src/main/java、src/main/resources以及pom.xml...

    spring-boot-learning-demo-master.zip

    在"spring-boot-learning-demo-master.zip"这个压缩包中,我们可以深入学习和探索Spring Boot的各种特性,同时结合RabbitMQ的实践应用,增强微服务间的通信能力。 一、Spring Boot核心特性 1. 自动配置:Spring ...

    spring-mvc-demo:Spring MVC Demo 集成了 Spring Framework、Spring MVC 和 iBATIS

    在"spring-mvc-demo-master"这个项目中,我们可以预期看到以下结构和组成部分: 1. **源码结构**:项目可能包含src/main/java目录,其中包含MVC控制器、服务层、DAO层以及实体类等。 - 控制器(Controller):负责...

    spring-boot-demo

    【标题】"spring-boot-demo" 是一个基于Spring Boot框架的示例项目,旨在演示如何将Spring Boot与Mybatis集成以实现高效、简洁的后端开发。这个项目展示了一个使用注解驱动的配置,使得开发过程更为高效。 【描述】...

    spring-mvc-demo:一个简单的Spring MVC演示

    在"spring-mvc-demo-master"压缩包中,我们通常会看到以下目录结构: - `src/main/java`:存放Java源代码,包括控制器、模型实体和服务等。 - `src/main/resources`:存放配置文件,如Spring的`...

    Spring MVC 简单Demo

    这个"Spring MVC 简单Demo"旨在帮助初学者理解如何设置和运行一个基本的Spring MVC项目。下面,我们将深入探讨Spring MVC的核心概念、工作原理以及如何创建一个简单的示例。 1. **Spring MVC 概述** Spring MVC是...

    Spring mvc+hibernate+mysql Demo

    在这个"Spring mvc+hibernate+mysql Demo"项目中,可能包含了一个简单的示例应用,展示了如何配置和使用这三个技术。"test"文件可能是测试代码或者测试数据,用于验证整个系统的正确性。测试可能涵盖了CRUD操作,...

    spring mvc的一个demo

    这个"spring mvc的一个demo"是一个小型的示例项目,尽管规模不大,但它包含了Spring MVC的基本配置和运行流程,是初学者快速入门的理想教程。 首先,Spring MVC的配置通常包括以下几个部分: 1. **...

    spring mvc rest基础学习demo

    通过"spring mvc rest基础学习demo",初学者可以快速掌握如何使用Spring MVC创建RESTful服务,理解HTTP方法与REST原则,以及如何处理请求和响应。这个项目将涵盖基本的控制器设置、REST端点创建、数据交互和错误处理...

    spring3mvc+ibatis+demo

    【Spring3MVC + iBatis + Demo】项目是一个典型的Java Web开发示例,它结合了Spring MVC作为控制器层、iBatis作为数据访问层,为开发者提供了一个轻量级的框架集成方案。这个项目旨在帮助初学者了解如何在实际应用中...

    spring-mvc-demo:弹簧 mvc 演示

    在这个名为"spring-mvc-demo"的项目中,开发者提供了一个基础的Spring MVC配置示例,旨在帮助初学者理解并实践该框架的核心功能。这个演示包含了基本的CRUD(创建、读取、更新、删除)操作,以及对Redis这种内存数据...

    spring-mahout-demo

    在项目中,"bhagyas-spring-mahout-demo-f25ecc6"这个文件可能是项目的源码仓库,包含了整个示例的完整代码。通过分析这些代码,我们可以学习到以下几点关键知识点: 1. **Spring配置**:Spring配置文件中会包含对...

Global site tag (gtag.js) - Google Analytics