`
wen147258
  • 浏览: 27739 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

springmvc详细讲解--从浅及深(一)

阅读更多
这两天在论坛中经常看到有朋友提出关于springmvc的一些问题,我去年的时候也是如此,那会刚毕业,很多东西都一知半解的,加上上一个公司不能上网,所以很多问题都困扰着我。
spring框架就是其中的一个,说起spring,我想很多朋友肯定是对它又爱又恨的,它的功能的确很强大,各种特性,可以集成很多第三方的框架,但功能强大的同时就意味着我们要掌握它就会有些困难,但是我们不能被困难打倒是吧,因为我们是“程序猿”,对吧,哈哈,说了这么多,其实就想告诉大家多发点时间,多思考一下,我想很多问题我们就能想明白。
这段时间我会给大家陆陆续续分享一些springmvc中一些东西,这些东西都是我自己在项目中使用或者自己工作之余研究的或者是查看官方文档得出的东西,希望能给大家带来帮助,
因为我也刚毕业没满一年嘛,所以分享中有什么错误的话,希望大家指正,我们共同进步!今天我给大家带来的springmvc中最简单的也是大家可能会比较迷茫的部分:springmvc
请求中绑定模型数据并返回视图的一些方法。
下面这个例子就是springmvc中我们常用处理请求的方式,这些基本就能满足我们日常的开发了。
@Controller
@RequestMapping("/demo/")
public class DemoAction {

	@RequestMapping("model")
	public String say(Model model){
		model.addAttribute("wen", "vbvv");
		return "demo";
		
	}
	
	@RequestMapping("list")
	public ModelAndView list(){
		ModelAndView mv = new ModelAndView("list");
		mv.addObject("one","ddddddd").addObject("two", "rrrrrrrrrr");
		return mv;
	}
	
	@RequestMapping("modelmap")
	public String say2(ModelMap model){
		model.addAttribute("wen", "ddddvbgfff");
		return "demo";
		
	}
	
	@RequestMapping("modelmap2")
	public String say3(){
		return "redirect:modelmap.action";
		
	}
	
	@RequestMapping("modelmap3")
	public ModelAndView say4(){
		
		return new ModelAndView("redirect:list.action");
	}

}


在以上这个例子中,前三个方法是url请求后,绑定数据返回至视图中(下面我们都用jsp代表视图,因为这里的视图有很多比如:jsp,velocity等等),
第二个方法我想大家都能理解,首先构建一个ModelAndView对象,list是代表返回页面的物理逻辑名,addObject方法就是在这个对象中绑定(添加)需要返回到页面中的数据。可能大家比较有疑惑的就是第一个和第三个方法,在方法参数中一个Model对象,一个是ModelMap对象。其实,这两个对象的作用都是一样的,就是把需要返回到页面的数据绑定在这两个对象中。其实在底层调用的都是BindingAwareModelMap对象,这个类继承ExtendedModelMap,而ExtendedModelMap集成ModelMap并实现Model,那大家肯定会想为什么在方法中的参数中放入这两个对象,就能绑定数据并返回到页面中呢,这个其实是springmvc的处理机制。大家要是有兴趣可以去看源码或者看官方文档。一般来说,可以利用这三种方式绑定数据并返回到页面中。用过servlet开发的朋友们肯定会想到一个问题,如果我要重定向,springmvc能够处理吗?答案是肯定的,在该例子的后两个方法就是介绍springmvc中重定向方法,其实是很简单的,大家一看就能明白。接下来有一个问题希望大家去思考下,struts2和springmvc处理请求的方式的区别,还有strtus2和springmvc中调用request和response的方法有哪些,有何不同,为何不同,希望大家好好思考,对于我们理解struts2和springmvc有很大的帮助,接下来我会给大家分享关于springmvc中参数的传递,已经spring和第三方的框架的集成的一些知识,另外大家可以一起讨论sshi框架的一些用法及对它们的理解哦,尤其是我们这些刚参加工作不久的童鞋们哦。
http://docs.spring.io/spring/docs/4.0.5.RELEASE/spring-framework-reference/htmlsingle/#mvc springmvc的官方文档,有兴趣的朋友们可以去看看哦,又能学到知识又能提高英语
水平,何乐不为呢?赶紧行动吧!
0
1
分享到:
评论

相关推荐

    SpringMVC ---- HelloWorld ---- 代码

    SpringMVC ---- HelloWorld ---- 代码 SpringMVC ---- HelloWorld ---- 代码 SpringMVC ---- HelloWorld ---- 代码 SpringMVC ---- HelloWorld ---- 代码 SpringMVC ---- HelloWorld ---- 代码 SpringMVC ---- Hello...

    SpringMVC-Mybatis-Shiro-redis

    总的来说,SpringMVC-Mybatis-Shiro-Redis的组合为开发者提供了一个强大且灵活的工具箱,帮助他们构建出安全、高效且易于扩展的Web应用程序。理解并掌握这些核心技术,对于提升开发者的技能和项目成功率具有重大意义...

    SpringMVC-Mybatis-Shiro-redis-0.2-master

    基于SpringMVC Mybatis Shiro Redis 的权限管理系统,该系统已经部署到线上,线上访问地址:http://shiro.itboy.net,登录账号:admin 密码:sojson,,详细教程参考sojson.com/shiro

    SpringMVC-Mybatis-Shiro-redis-master

    【标题】"SpringMVC-Mybatis-Shiro-redis-master" 涉及的是一个集成框架项目,这个项目集成了四个关键的技术组件:SpringMVC、MyBatis、Shiro和Redis。这些技术在现代Java Web开发中扮演着重要角色。 **SpringMVC**...

    springMVC集成spring-data-redis

    SpringMVC是一个强大的Java web应用程序框架,用于处理HTTP请求和响应。它主要负责视图控制器的职责,使得业务逻辑和视图分离。而Spring Data Redis是Spring Framework的一个模块,专门用于简化与Redis键值存储系统...

    SpringMVC------从HelloWorld开始

    让我们从一个简单的"HelloWorld"示例开始,深入了解SpringMVC的工作原理。 首先,创建一个`HelloWorld`控制器是开始任何SpringMVC项目的第一步。在Java中,我们通常会创建一个继承自`org.springframework....

    SpringMVC精品资源--JAX-RS & SpringMVC supported maven buil.zip

    这个压缩包"SpringMVC精品资源--JAX-RS & SpringMVC supported maven build.zip"显然是一个关于这两个框架的学习资源集合,特别是针对使用Maven构建的项目。 首先,SpringMVC是Spring框架的一部分,它是基于模型-...

    SpringMVC4教程-.pptx

    SpringMVC4教程-.pptx SpringMVC4教程-.pptx SpringMVC4教程-.pptx SpringMVC4教程-.pptx SpringMVC4教程-.pptx

    springmvc_exception-1.0-SNAPSHOT.war

    SpringMVC文件上传war包

    SpringMVC精品资源--SpringMVC+Mybatis 脚手架.zip

    这个压缩包资源对于初学者和有经验的开发者都是宝贵的,它可能包含详细的教程、实例代码和最佳实践,帮助他们理解和掌握SpringMVC与Mybatis的集成应用。如果你正在学习或工作中使用这两个框架,那么这个资源包将是一...

    springmvc-high-other-05.rar

    《SpringMVC高级应用探索——其他重要...以上只是SpringMVC高级特性的一部分,通过深入学习和实践"springmvc-high-other-05.rar"中的内容,我们可以进一步提升SpringMVC的使用技巧,构建出更高效、更健壮的Web应用。

    SpringMVC-Mybatis-Shiro-redis-0.2_baichengzhou.tar.gz

    《SpringMVC-Mybatis-Shiro-Redis整合实践详解》 在现代Web开发中,SpringMVC、Mybatis、Shiro以及Redis等技术是构建高效、安全、可扩展的Web应用的重要组件。本文将深入探讨这些技术的集成与应用,以"SpringMVC-...

    SpringMVC精品资源--JAX-RS & SpringMVC supported gradle bui.zip

    【标题】"SpringMVC精品资源--JAX-RS & SpringMVC supported gradle bui.zip" 提供的是一份关于使用Gradle构建支持JAX-RS和SpringMVC的项目资源。这涉及到两个关键的技术栈:SpringMVC,一个用于构建Web应用程序的...

    maven-springmvc-mybatis-memcached

    【标题】"maven-springmvc-mybatis-memcached"是一个基于Maven、SpringMVC、MyBatis和Memcached的项目示例。这个项目整合了这些技术,为开发高效、可扩展的Web应用程序提供了基础架构。 【描述】"maven-springmvc-...

    SpringMVC4教程-超权威--超详细

    - **SpringMVC简介**:SpringMVC作为Spring框架的一部分,是基于MVC(Model-View-Controller)设计模式的一种轻量级Web框架。它利用了Spring的核心功能如IoC(Inversion of Control)容器和AOP(Aspect Oriented ...

    springMVC学习--基本的几个例子

    SpringMVC是Spring框架的一部分,专门用于构建Web应用程序。它是一个模型-视图-控制器(MVC)架构的实现,提供了强大的数据绑定、验证、国际化等功能,极大地简化了Java Web开发。在“springMVC学习--基本的几个例子...

    springmvc-json-lib.rar

    在本例中,"springmvc-json-lib.rar"可能包含了一个完整的SpringMVC项目,其中包含了配置文件、源代码和JSON库的依赖。为了使用这个项目,你需要将其解压,导入到IDE中,配置好项目的依赖,然后就可以运行和调试了。...

    springmvc-maven-webapp-helloworld 源码

    通过分析这个"springmvc-maven-webapp-helloworld"项目,我们可以深入理解每个组件的作用,以及它们如何协同工作来构建一个完整的Web应用程序。同时,这也是一个很好的起点,可以帮助开发者逐步掌握SpringMVC、Maven...

    SpringMVC4教程-超权威__超详细

    SpringMVC4教程-超权威__超详细,

Global site tag (gtag.js) - Google Analytics