发表于: 2017-03-03 00:33:55
1 1521
一.今天完成的:
1.了解rest架构风格
2.学习springMVC基础,编写实例
3.完成task1中的mybatis与springMVC集成
4.使用SpringMVC完成REST接口。
二.明天计划:
1.学习使用注解处理器映射器,处理器适配器进行springMVC编程
2.
三.今天的收获
1.REST即Representational State Transfer的缩写,可译为"表现层状态转化”。REST最大的几个特点为:资源、统一接口、URI和无状态。
2.REST与ROA,SOA,RPC关系
RESTful 架构风格的服务通常被称之为ROA架构,很少提及SOA架构,以便更加显式的与RPC区分。进入移动互联网时代后,RPC风格的服务很难在移动终端使用,而RESTful风格的服务,由于可以直接以json或xml为载体承载数据,以HTTP方法为统一接口完成数据操作,客户端的开发不依赖于服务实现的技术,移动终端也可以轻松使用服务,这也加剧了REST取代RPC成为web service的主导。
3.本真rest和hybrid风格
本真REST即我上文阐述的RESTful架构风格,具有上述的4个特点,是真正意义上的RESTful风格;而hybrid风格,只是借鉴了RESTful的一些优点,具有一部分RESTful的特点,但对外依然宣称是RESTful风格的服务。
开发RESTful 服务,如果没有历史包袱,不建议使用hybrid风格
4.mybatis与springMVC集成步骤
在mybatis与spring集成之后,我们的工程还不算是web工程,虽然我们创建的是web工程,所以我们需要将mybatis与springMVC集成实现真正意义上的web 工程
1.需要在web.xml中配置 spring dispatchservlet,比如mvn-dispacher
2.建立mvn-dispatcher-servlet.xml,并配置
3.修改spring配置文件applicationContext.xml,与mybatis
sqlSessionFaction 整合,扫描所有mybatis mapper 文件等
4.编写controller类
5.spirng mvc响应用户请求顺序
1.发起请求到前端控制器(DispatcherServlet)
2.前端控制器请求HandlerMapping查找Handler
可以根据XML配置,注解进行查找
3.处理器映射器HandleMapping向前端控制器返回Handler
4.前端控制器调用处理器适配器执行Handler
5.处理器适配器去执行Handler
6.Handler执行完给适配器返回ModelAndView
7.处理器适配器向前端控制器返回ModelAndView
ModelAndView是springmvc框架的一个底层对象,包括Model和view
8.前端控制器请求视图解析器去进行视图解析
根据逻辑视图名解析成真正的视图(jsp)
9.视图解析器向前端控制器返回view
10.前端控制器进行视图渲染
视图渲染将模型数据(在ModelAndView中)填充到request
11.前端控制器向用户响应结果
6.spring响应影虎请求涉及的组件:
1.前端控制器DispatcherServlet(一般不需要程序员开发)
作用:接收请求,返回结果,相当于转发器,中央处理器
所有交互都跟他交互,有了DispatcherServlet减少了组件之间的耦合度
2.处理器映射器HandleMapping(一般不需要程序员开发)
作用:根据请求的URL查找Handler
3.处理器适配器HandlerAdapter
作用:按照特定规则(HandlerAdapter要求)去执行Handler
4.处理器Handler(需要程序员开发)
注意:在编写/开发Handler的时候要按照HandlerAdapter的要求去做,这样适配器才可以去
5.视图解析器View resolver(不需要程序员开发)
作用:进行视图解析,根据逻辑视图名解析成真正的视图(View)
6.视图(View)(需要程序员开发jsp)
View是一个借口,实现类支持不同的View类型(jsp,freemarker,pdf..)
7.springMVC编程顺序(使用非注解处理器映射器,处理器适配器)
1.创建web工程
2.配置前端控制器(在web.xml中配置,它就是一个servlet)
3.配置处理器适配器
4.处理器开发
5.配置处理器映射器
7处理器配置
8视图解析器
9.视图开发
10.部署在Tomcat部署
四.遇到的问题
1.学习顺序颠倒,一开始还不知道springMVC的时候,对着一堆rest的资料一顿猛读,结果还是不会设计rest风格,后来发现似乎要先了解springMVC才行,而师兄也告诉我最好先学习springMVC并且完成与mybatis集成会更好,遂开始了解springMVC,慢慢地了解了springmvc开发顺序以及涉及的一些知识点,感觉又像是进入了一个全新的世界,看来我之前没有用springMVC时创建的是假web工程
评论