spring框架以及MVC思想:

一:spring框架:
spring框架是一种很优秀的框架,它可以帮助开发人员简化组件与组件之间耦合,管理对象。
1:创建对象和管理对象之间的关系,可以在配置文件通过bean元素创建对象,管理对象之间的关系
则可以通过注入的方式。
2:spring可以和其他的第三方框架进行整合,比如Struts、hibernate等组成SSH框架。也可以和ibatis
或者mybatis组成框架。

二:名称解释
IOC:inversion of control 控制翻转,创建对象权利的转移,将通过new对象转换为第三方容器配置。
DI:denpence injection 依赖注入,通过注解的方式将需要依赖的对象注入到另一个类中,这样降低
了对象与对象之间的耦合,方便以后的扩展和维护。

三:常用注解
@Controller 将该类标注为控制层,控制层是视图层和业务层的桥梁,负责接收前台的请求,并且将
后台处理数据传送给前台。
@Service 将该类标注为业务层,开发人员可以在这一层编写业务逻辑,而不需要更多的关注如何
与数据库进行交互。
@Component 将该类定义类DAO层,负责与数据库进行数据交互。
@RequestMapping 匹配前台请求路径,可以标注在类之上,也可以标注在方法上面,然后类与方法进行
路径拼接。
@Resource 对象的注入,可以将容器创建的对象直接注入到需要的类中。@Autowired是按照类型注入,
而@Resource的装配顺序是如果指定名称或者没有指定时,按照名称装配;如果指定类型时,按照类型
装配。
@ResponseBody 这个注解很好用,是将后台需要返回的Map、list、字符串或者对象自动封装成json格式,
但是后台需要引入对应的jar包,jackson-all.jar、jackson-mapping.jar等。
@Transactional 这个注解标注方法为事务,保持操作的原子性,如果成功就提交;如果抛出异常,就
回滚。但是在容器的配置文件中需要配置事务。

四:MVC思想
MVC是一种设计思想,M代表model,模型。V代表view,视图,C代表controller控制层。M主要是业务层
以及数据实体类。V负责与用户交互,前台jsp等。C负责调度分配作用。从浏览器发出请求到收到响应
显现在页面的顺序。
a:用户在浏览器输入请求地址:http://主机:端口/应用名/index.do,请求协议是http超文本传输协议。
b:webContent下web.xml中配置访问地址,如果默认welcome-list元素,那么访问默认 页面index.jsp
如果配置servelt和server-mapping元素,那么会自动分发。
c:请求路径通过SimpleHandleMapping类自动匹配到后台的RequestMapping中的路径。如果配置MVC,那么
需要配置mvc驱动。
d:在控制层调用业务层,处理完数据后,返回页面和处理完的数据。
e:页面重定向到页面和配置文件ViewRevoler的拼接,可以使用tiles框架(如果jsp页面过多的情况)
同时将数据也带过去,然后将响应返回浏览器。
f:浏览器显示给用户。

对springMVC的简单理解的更多相关文章

  1. springmvc springJDBC 简单实训银行账户管理系统

    springmvc springJDBC 简单实训银行账户管理系统 1.简单介绍一下,在校时每周结束都会有一次学习总结,简称“实训”,这次实训内容是spring,因为是最近热门框架,我就先从基础方面开 ...

  2. Java 层级的简单理解

    在J2EE项目中,开发的都是分层来做的: 1.service层:用于暴露给网络调用 2.Impl层:统一规范接口 3.bean层:实体对象,也就是表 4.DAO(Data Access Object) ...

  3. springMVC的简单了解和环境搭建

    一,什么mvc 模型-视图-控制器(MVC)是一个众所周知的以设计界面应用程序为基础的设计思想.它主要通过 分离模型.视图及控制器在应用程序中的角色 将业务逻辑从界面中解耦.通常, 模型负责封装应用程 ...

  4. git的简单理解及基础操作命令

    前端小白一枚,最近开始使用git,于是花了2天看了廖雪峰的git教程(偏实践,对于学习git的基础操作很有帮助哦),也在看<git版本控制管理>这本书(偏理论,内容完善,很不错),针对所学 ...

  5. 简单理解Struts2中拦截器与过滤器的区别及执行顺序

    简单理解Struts2中拦截器与过滤器的区别及执行顺序 当接收到一个httprequest , a) 当外部的httpservletrequest到来时 b) 初始到了servlet容器 传递给一个标 ...

  6. [转]简单理解Socket

    简单理解Socket 转自 http://www.cnblogs.com/dolphinX/p/3460545.html  题外话 前几天和朋友聊天,朋友问我怎么最近不写博客了,一个是因为最近在忙着公 ...

  7. Js 职责链模式 简单理解

    js 职责链模式 的简单理解.大叔的代码太高深了,不好理解. function Handler(s) { this.successor = s || null; this.handle = funct ...

  8. Deep learning:四十六(DropConnect简单理解)

    和maxout(maxout简单理解)一样,DropConnect也是在ICML2013上发表的,同样也是为了提高Deep Network的泛化能力的,两者都号称是对Dropout(Dropout简单 ...

  9. Deep learning:四十二(Denoise Autoencoder简单理解)

    前言: 当采用无监督的方法分层预训练深度网络的权值时,为了学习到较鲁棒的特征,可以在网络的可视层(即数据的输入层)引入随机噪声,这种方法称为Denoise Autoencoder(简称dAE),由Be ...

随机推荐

  1. [BILL WEI]SQL 存储过程学习

    --查看数据库exec sp_databases ;--查看表exec sp_tables ;--查看列exec sp_columns WMS_ASN;--查看索引exec sp_helpindex ...

  2. -Xms 和 -Xmx 不能设置的太大

    之前我一直有一个疑问,就是-Xms 和 -Xmx不是设置的越大越好吗?现在才明白怎么回事. 通过在命令行中执行 java 或者启动某种基于 Java 的中间件来运行 Java 应用程序时,Java 运 ...

  3. zabbix监控域名带宽

    代码地址:https://github.com/Ma-Jing/python/blob/master/ngxv2_traffic_daemon.py READ.md里有使用说明! #!/usr/bin ...

  4. .Net高级技术

    本次课程中讲的有的东西都是根据初学者的认知规律进行了调整,并不是严谨的,比如很多地方在多AppDomain条件下很多说法就不对了,但是说严谨了大家就晕了,因此继续不严谨的讲吧. 很多面试题都在这阶段的 ...

  5. tomcat Connector 连接器

    连接器的核心功能,本文去除非核心功能,留下整个程序的框架,便于理解. 1.接受连接请求 2.创建request,和response. 3.调用容器对应的Invoke方法, 首先看类的依赖结构. 1.C ...

  6. windows内核窥探

    windows是一个非常优秀的OS,从今天开始,我要和大家共同分享windows给我们带来的快乐!本人只所以将自己的学习笔记与大家分享,一是让自己更深入的理解windows,再就是有什么疏漏之处,望大 ...

  7. new和delete为什么要匹配

    operator new和operator delete函数有两个重载版本: void* operator new (size_t); // allocate an object void* oper ...

  8. usb 驱动

    usb 驱动学习总结: usb 采用分层的拓扑结构,金字塔型,最多是7层.usb 是主从结构,主和主或者从和从之间不能交换数据.理论上一个usb主控制器最多可接127个设备,协议规定每个usb设备具有 ...

  9. 转载 VPN介绍

    转载原地址:  http://aajs800.blog.51cto.com/519255/239724  原作者 aajs800 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者 ...

  10. 【Away3D代码解读】其它一些的记录(持续更新)

    查看当前正在使用的AGAL代码可以在程序开始时添加下面的代码,AGAL代码会被trace出来: Debug.active = true; 具体的输出是在MaterialPassBase类的update ...