
本文共 2272 字,大约阅读时间需要 7 分钟。
一、把我能想到的写下来:
MVC是一种设计模式。
在web开发中,为了解耦,实现轻量级开发,有经典三层构造:[改:Web经典三层构造: 1.表现层 User Interface 主要接受用户的请求和把对应的页面响应给用户浏览器。 对应MVC中的View。 2.业务逻辑层 Business Logic Layer 对应MVC中Model的Service层,与数据库联动,增删改查。 3.数据访问层/持久层 Data Access Layer 对应MVC中Model的Dao层,提供接口支持]
[改:传统MVC]
V(View视图层),如浏览器端显示的HTTP响应与请求;
M(model)模型层,用来管理类与类之间的关系。 [处理数据逻辑,Model层分为Service层和Dao层, Service层用来和数据库联动,放置业务逻辑代码,处置数据库的增删改查。 Dao层用来放各种接口以供调用。C(Control)控制层,用来调用相应的构造。
这样不同功能的模块不会相互耦合。Spring用于M层,管理类与类之间的关系,而SpringMVC则是用于C层。
SpringMVC包括以下部分:
(首先需要在pom.xml中导入各种SpringMVC有关的)方法一:通过XML配置:
前端控制器(Front Controler), 实现Disapeter接口。
[改:继承DispatcherServlet类]
[前端控制器的作用:1.接受Web请求 2.转发到其他Web组件]
是个servlet,当用户在浏览器输入 url ,可以通过servlet mapping中的映射,编译该 ur l对应的 servlet ,进而接受HttpRequedt,响应HttpResponse。这个前端控制器可以通过 web.xml 中
...
[这里还需要设置初始化参数:]
contextConfigLocation classpath:applicationContext.xml
接下来,需要交给处理器(handler),由处理器决定将请求交由哪个具体处理类进行处理,处理器是我们写的一个普通的类。在处理器之前,需要处理器映射器和处理器适配器。是在applicationContext.xml中通过声明Bean。
处理器的适配器的作用就是将需要实现的功能提取出来。
接下来还需要视图解析器,将逻辑视图(是一个字符串)转换为物理视图,(通常是JSP)进而返还给 HttpResponse 响应。
JSP:Java Server Page,运行在服务器端的 Java 代码,用 JTEL 和 el 表达式代替了 Java 部分。
需要Dao层、service层、Po层(持久层)。
方法二:通过注解配置
需要在 applicationContext,xml 中
scan.package(xxx.xxx) 扫描…@Servlet ("/......")
在类上使用注解 @Controler,它将会被Spring容器识别为控制器。
@Autowired 自动装配。
@Conpent???
二、复习后的补充:
在 web.xml 中用<servlet >和<servlet-mapping>
来声明前端控制器,它继承了DispatcherServlet类,可以通过url地址映射到该类。
public ModelAndView HandleRequest(HttpRequest req,HttpResponse res){ ModelAndView moandv=new ModelAndView();moandv.addObject(key,value);moandv.setModelAndView("xxxx.jsp");}
[改:第二个方法是setViewName(“xxx.jsp”); 第一个方法相当于 request.setAttribute(key,value); 第二个方法相当于 request.getRequestDispatcher(“xxxx.jsp”).forward(request,response); 会跳转到该JSP页面,并做key,value的存储。 ]
其中key,value在JSP中有用到。
这里返回的视图ModelAndView是逻辑视图,只是字符串,需要解析为物理视图,需要在applicationContext.xml中配置视图解析器。 [( InternalResourceViewResolver类中有getViewClass方法。因此可以通过<property>
赋值。 还可通过前缀、后缀属性赋值,这样在处理器类中的setViewName(“xxxx”)传入的参数不需要前后缀了。) ]
需要处理器适配器和映射器,使之可以处理HttpRequest和HttpResponse。
发表评论
最新留言
关于作者
