`

初学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+mybatis+shiro学习demo

    spring-mvc 整合了shiro 和mybatis的小demo 初学者可以看看

    Spring MVC最简单demo

    Spring MVC最简单demo 初学者 MVC

    spring mvc rest基础学习demo

    spring mvc基础开发 最基础类 一目了然 适合初学者

    springmvc spring hibernate整合Demo

    springmvc spring hibernate整合Demo 包含了CRUD 帮助初学者快速学习springmvc

    Spring mvc 注解Demo

    Spring mvc 注解Demo,适合初学者。下载即可用

    Spring-Security3 demo及文档+3.0.1_中文官方文档

    实现了一把spring-mvc + security 来实现用户登录及权限控制。并且写了下实现的文档。以及附件内提供Spring_Security-3.0.1_中文官方文档.pdf 对初学者来大致了解security 还是有一定的作用的,想自己拓展的就别看了...

    Spring + Spring MVC + Mybatis demo

    自己搭建的简单的Spring + Spring MVC + Mybatis框架 功能比较简单但是比较实用 初学者适用 需项目使用的请自行添加功能 集成功能 1.提供分页参数自动查询总数 2.实体校验(hibernate-validator) 3.单用户登录(监听...

    spring mvc完整demo

    spring mvc个人取其精华总结的比较完整的一个demo,对初学者来说绝代强大...

    spring mvc demo

    该demo 完成了一个spring mvc 的案例,对初学spring mvc的朋友有帮助哦 轻松了解 spring mvc

    springmvc demo

    spring mvc 入门,适合初学者如果没有积分留言 我发给你

    spring mvc freemarker 自定义标签

    spring mvc freemarker 自定义标签demo spring mvc 通过自定义的标签在jsp页面调用,初学,记录下做个备忘

    springmvc01.zip_DEMO_JSON校验_spring mvc

    这个是入门spring mvc的Demo,是我学习spring mvc时写的,实现了spring mvc的输入校验,上传文件,和返回json数据时的配置,感觉对于初学者很有帮助

    spring mvc Demo

    基于 spring mvc +hibernate 的用户权限管理模块实例,包含数据库角本和所有jar包,...希望给初学spring mvc的友友有所帮助。后续我将上传一个自己做的项目(springmvc+hibernate+DWZ)的收入查询平台供大家学习交流。

    Springmvc+mybatis+spring 系统demo下载

    Springmvc+mybatis+spring 系统demo下载,基于myeclipse + tomcat 开发完成,下载后根据一份简单的使用说明就可以直接运行,代码实现简单的数据增删改查,希望给初学者参考

    spring4+springmvc+hibernate3 整合demo

    spring4+springmvc+hibernate3 demo,前端jsp,能正常运行,包含数据库person.sql,适合初学者学习,大家共同进步!

    ZK+spring+hibernate的整合

    在自个学习zk和其他两个框架整合的时候,总是找不到合适的整合demo进行参考,希望此次上传能对初学者有用

Global site tag (gtag.js) - Google Analytics