初学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 项目,以便初学者了解其工作原理和配置步骤。 首先,我们需要理解 MVC 模式的概念。MVC 分为三个主要部分:模型(Model)、视图...
**基于Spring-MVC的在线测试系统(客观题)** 该在线测试系统是一个使用Spring-MVC框架构建的简单示例...对于初学者来说,通过分析和修改源码,可以深入理解Spring-MVC的工作原理以及如何构建一个完整的Web应用程序。
本示例项目“Spring-mvc+mybatis+shiro学习demo”提供了一个基础框架,帮助初学者了解如何整合这三个核心组件:Spring MVC(用于处理HTTP请求和控制业务逻辑)、MyBatis(一个持久层框架,简化数据库操作)以及Shiro...
【标题】"maven spring-mvc demo"是一个基于Maven构建的Spring MVC示例项目,旨在帮助开发者理解和学习如何在实际开发中整合这两个强大的Java工具。这个项目是按照某个具体的教程(链接已给出)创建的,它展示了如何...
在“spring-mvc-demo.zip”这个压缩包中,我们可以期待一个基于Spring MVC的示例应用,该应用可能包含以下几个关键部分: 1. **配置文件**:在Spring MVC项目中,主要的配置文件通常为`web.xml`,它是Web应用的部署...
这个示例项目对于初学者来说是一个很好的学习资源,因为它展示了如何在实际项目中整合 Spring MVC 和 Hibernate。通过研究这个项目的源码,你可以了解两个框架的基本用法,以及如何将它们集成到一个完整的应用中。...
Spring MVC 是 Spring 框架的重要组成部分,它是一个用于构建 Web 应用程序的模型-视图-控制器(MVC)框架。本项目"spring-mvc-showcase-master"旨在全面展示 Spring MVC 的功能和用法,帮助开发者深入理解和实践这...
通过这个DEMO项目,开发者可以学习如何设置Spring MVC的配置,如web.xml(虽然Spring Boot已经允许我们不再需要这个文件),以及如何使用Gradle的插件管理Spring MVC的依赖。同时,它也可以作为一个起点,帮助开发者...
通过解压这个文件,我们可以发现其主要包含了一个名为"SpringDemo-master"的项目目录,这通常意味着这个项目是按照Maven或者Gradle等构建工具的结构组织的,其中包括了src/main/java、src/main/resources以及pom.xml...
在"spring-boot-learning-demo-master.zip"这个压缩包中,我们可以深入学习和探索Spring Boot的各种特性,同时结合RabbitMQ的实践应用,增强微服务间的通信能力。 一、Spring Boot核心特性 1. 自动配置:Spring ...
在"spring-mvc-demo-master"这个项目中,我们可以预期看到以下结构和组成部分: 1. **源码结构**:项目可能包含src/main/java目录,其中包含MVC控制器、服务层、DAO层以及实体类等。 - 控制器(Controller):负责...
【标题】"spring-boot-demo" 是一个基于Spring Boot框架的示例项目,旨在演示如何将Spring Boot与Mybatis集成以实现高效、简洁的后端开发。这个项目展示了一个使用注解驱动的配置,使得开发过程更为高效。 【描述】...
在"spring-mvc-demo-master"压缩包中,我们通常会看到以下目录结构: - `src/main/java`:存放Java源代码,包括控制器、模型实体和服务等。 - `src/main/resources`:存放配置文件,如Spring的`...
这个"Spring MVC 简单Demo"旨在帮助初学者理解如何设置和运行一个基本的Spring MVC项目。下面,我们将深入探讨Spring MVC的核心概念、工作原理以及如何创建一个简单的示例。 1. **Spring MVC 概述** Spring MVC是...
在这个"Spring mvc+hibernate+mysql Demo"项目中,可能包含了一个简单的示例应用,展示了如何配置和使用这三个技术。"test"文件可能是测试代码或者测试数据,用于验证整个系统的正确性。测试可能涵盖了CRUD操作,...
这个"spring mvc的一个demo"是一个小型的示例项目,尽管规模不大,但它包含了Spring MVC的基本配置和运行流程,是初学者快速入门的理想教程。 首先,Spring MVC的配置通常包括以下几个部分: 1. **...
通过"spring mvc rest基础学习demo",初学者可以快速掌握如何使用Spring MVC创建RESTful服务,理解HTTP方法与REST原则,以及如何处理请求和响应。这个项目将涵盖基本的控制器设置、REST端点创建、数据交互和错误处理...
【Spring3MVC + iBatis + Demo】项目是一个典型的Java Web开发示例,它结合了Spring MVC作为控制器层、iBatis作为数据访问层,为开发者提供了一个轻量级的框架集成方案。这个项目旨在帮助初学者了解如何在实际应用中...
在这个名为"spring-mvc-demo"的项目中,开发者提供了一个基础的Spring MVC配置示例,旨在帮助初学者理解并实践该框架的核心功能。这个演示包含了基本的CRUD(创建、读取、更新、删除)操作,以及对Redis这种内存数据...
在项目中,"bhagyas-spring-mahout-demo-f25ecc6"这个文件可能是项目的源码仓库,包含了整个示例的完整代码。通过分析这些代码,我们可以学习到以下几点关键知识点: 1. **Spring配置**:Spring配置文件中会包含对...