发表于: 2016-07-24 17:01:58

1 2606


【完成工作】

Springmvc

mvc属于web编程,通过浏览器访问所写的web工程,访问时需要启动服务器。常用的服务器有tomcatjetty

Jettyhttp://wiki.eclipse.org/Jetty/Feature/Jetty_Jspc_Maven_Plugin

Tomcathttp://tomcat.apache.org/tomcat-7.0-doc/index.html

源码链接:http://yun.baidu.com/share/link?shareid=3840469671&uk=437074692

Springmvc项目工程结构如下:

Springmvc入门程序流程如下

1.      Jar

Spring 3.2.0-RELEASE (springwebmvc模块)

2.      配置web.xml

web工程的所有请求都是由servlet接收的,spingmvc框架提供dispatcherServlet作为前端控制器接收来自前端的请求。在web.xml中配置dispatcheerServlet的基本信息。包括引入DispatcherServlet类,spring配置文件路径和拦截前端请求。

3.      配置applicationContext.xml

1)配置处理器映射器(handlerMapping)和处理器(controller)路径

DispatcherServlet收到请求后回去找处理请求的controllerhandler),不过dispatcherServlet自己不能映射到controller,得通过处理器映射器去帮它找到controller,所以dispatcherServlet将请求交给applicationContext.xml中配置的处理器映射器(handlerMapping),然后处理器映射器根据applicationContext.xml中配置的controller地址找到一系列的controller(可以配置多个).

BeanNameUrlHandlerMapping可以根据配置controllerbeanname找到controller(Name必须是url)

SimpleUrlHandlerMapping可以根据配置的controllerbeanid找到controllerkey为请求的url)。

2)配置处理器适配器(handlerAdapter

HandlerMapping将找到的controller交给dispatcherServlet dispatcherServlet得运行controller去处理用户的请求,这时候它就需要将controller交给处理器适配器让它运行controller。处理器适配器配置如下。

3)编写controller

handleradapter拿到controller后就要运行controller处理用户请求。这里编写的controller继承了controller类,它将响应的数据都存入modelAndView返给handlerAdapterhandlerAdapter再将modelAndView返给dispatcherServlet

这里自己写了一个student的实例传入modelAndView,将springmvcmybatis整合后就可以将数据库中的数据传入modelAndView

4)配置视图解析器(ViewResolver

DispatcherServlet拿到响应的modelAndView后需要将它展现给用户,直接将modelAndView展现给用户看那是不可能滴。这时候需要通过viewResolvermodelAndView中的数据解析出来装入将要展示的页面,然后将可以直接展示的页面返给dispatcherDispatcher

a)      如果controller中设置了返回页面的前后缀,视图解析器就配置个类就完事

b)      如果在controller中只设置了返回页面的逻辑视图名,在视图解析器中就需要配置前后缀名。

5)配置jsp

viewResolver将拿到的modelAndView中的数据解析填充到jsp页面,然后返给dispatcherServletdispatcherServlet将拿到的jsp页面响应给用户。

6)启动服务器访问(示例用jetty启动)

通过处理器适配器配置的url就就可以访问。

 

PS:上文中的处理器映射器和处理器适配器在实际开发中并不常用,而注解开发更为常用。

首先需要配置注解开发映射器和注解开发适配器,它们必须成对使用。在此之前同样需要配置controller的路径,也可以用扫描器对指定包进行扫描,扫描到带有@controller注解的类均认为是controller

然后再controller类的方法名上添加一个@RequestMapping的注解,后面跟上请求的url

这里指定的url”/querystudents”web.xml里配置的访问url格式是*.action.所谓访问地址为

【遇到问题】

tomcat启动的时候报找不到DispatcherServlet

原因:tomcat发布项目的时候maven引的jar包没有一起发布到webapps下面

解决方法:右击项目-Properties-Deployment Assembly   将Maven Dependencies 添加到其中,保存然后重新发布。

【任务收获】

1.      学习了springmvc,了解了web访问流程。

【后续计划】

1.      整理springmvc+mybatis



返回列表 返回列表
评论

    分享到