AJAX基础和MVC个人总结
? 近期一直在学习WEB方面的知识,渐渐的开始接触并熟悉一些网页设计方面的技术和思想:CSS,JS,JSP,AJAX,这些都是一个java网页编程者必须熟悉并且精通的技术,现在对近两天学习的AJAX和MVC做一个简单的总结。
??一 ?AJAX部分
? 1.首先来介绍一些AJAX技术吧,说到底AJAX也不能称得上一门真正的技术,它其实就是某些技术的综合利用,包含了JS,XMLRequest异步请求,CSS,DOM组件操作以及XML,HTML语言等等。它使用XMLRequest异步请求对象进行数据的读取传输,通过DOM组件的操作来刷新网页的内容。当你注册用户时,如何神奇的不用刷新网页就能在数据库中查找出这个用户名是否已注册,在你使用百度搜索是,如何实时的将你要搜索的内容用下拉框显示出来,这些都是AJAX的应用,不算很神奇,但足够的神秘。
?2. 如何来实现AJAX技术,即如何创建和使用XMLRequest异步请求对象,才是他神秘的地方。传统的WEB技术就是简单的请求处理,而AJAX打破了这种束缚,它通过获取网页中的数据然后通过AJAX代码块进行处理来局部刷新这个网页,并不是一个网页的跳转,这些都归功于XMLRequest,下面来具体说明其实现:
?要使用异步请求对象,当然首先要有一个对象,显然我们需要去创建这样一个对象,下面给出创建异步请求对象的代码:
?????????? 4 = completeStatus返回的是服务器的状态,200代表服务器完成处理。onreadystatechange就是指回调函数。open(method,url,async),method是指表单的提交的方法,有get和post两种方法,当要发送的数据大于
512字节时,最好使用post方法,使用post方式时一定要在后面带上request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");这段代码。async有true和false两个值,使用true代表使用的是异步请求方式,就是发送数据后不需要响应就可以继续执行。
?以上就是关于AJAX部分的总结。
?二 ?MVC部分
? 总的来说,MVC是一种模式设计思想,模型(Model),视图(View)和控制Controller)。MVC模式的目的就是实现Web系统的职能分工。Model层实现系统中的业务逻辑,通常能用JavaBean或EJB来实现。View层用于和用户的交互,通常用JSP来实现,Controller层是Model和View之间沟通的桥梁,他能分派用户的请求并选择恰当的视图以用于显示,同时他也能解释用户的输入并将他们映射为模型层可执行的操作。
?MVC主要是将一个项目分离成三个部分,三个层各司其职,每个人只需要完成自己要完成的部分,很多时候我们写代码到一半时候发现要添加某些东西,这时候很容易就牵一发而动全身,然而MVC模式中如果某些需求发生改变,只需要每个人修改自己相应的代码块,而不用去管其他层的代码。
?? 在WEB开发方面,jsp,html页面属于我们要给用户show的,即view,而那些servlet就是控制器,它接收请求,将数据封装成数据模型并且对这些模型进行处理,Model就是我们对数据库的操作,从数据库中取出数据,修改数据库内容。我们的每一个请求都通过一个servlet来根据请求的类型生成相应的servlet,即将以前所有的servlet包中的类综合起来,这些类都由我们页面发送的请求来生成,这些类的生成我们来通过一个ActionFacrory来实现。
下面给出生成servlet的代码:
写道package cn.netjava.action;?
Action接口的定义如下:
写道public interface Action {?
通过String来返回要跳转的页面。之后去通过这个ActionFactory来处理请求。
对于MVC经典设计模式,个人也是刚刚接触到,还要在以后的使用中深入的理解。对于一种思想关键的是要去理解,并在以后遇到一个问题去分析它的过程中去运用你所掌握的思想,而不是为了运用这种思想去刻意编写那种代码。