JavaWeb高级编程考试大纲答案整理版
JavaWeb考试大纲
一、Action组件
1.Action接口,ActionSupport类
答:Validateable和ValidationAware接口提供验证功能;TextProvider和LocaleProvide接口对本地化和国际化的支持。
2.Action对web请求的处理步骤
答:(1)获取web请求中的信息
(2)在execute()方法中根据获取的Web请求信息进行业务逻辑处理
(3)返回一个代表处理的字符串
3.在Action中如何自动获取web请求参数
答:(1)Action组件基本类型属性的自动填充
(2)Action组件复杂类型属性的自动填充
(3)基于业务模型获取请求信息
4.定义逻辑Action
答:通过method P61
5.在配置文件中使用通配符
答:name class method支持通配符
6.Action的处理结果P62
7.Action的组织P63
答:在一个web应用中可以有多个Action组件,为了方便Action组件的管理,struts2框架提出了package的概念,package像对象,可以继承其他的package也可以被其他package继承,使用package可以将逻辑上相关的一组Action,Result,Interceptor等组件分为一组,一般形式如下
...
...
...
二、拦截器
1.为什么使用拦截器
答:面向方面编程AOD 存在与核心业务无关的公共行为,普遍和重要,开发人员无法
回避
2.开发自己的拦截器
答:方法:实现接口com.opensymphony.xwork2.interceptor.Interceptor
继承类com.opensymphony.xwork2.interceptor.AbstracInterceptor (1)创建Struts2组件
(2)创建拦截器
(3)配置拦截器
3.创建拦截器
答:定义组件继承com.opensymphony.xwork2.interceptor.Interceptor
在Interceptor接口中有如下三个方法需要实现:void destroy() void init()
String intercept(ActionInvocation invocation) throws Exception 核心方法
4.配置拦截器
答:在配置文件的节点
5.拦截器执行顺序
答:第一个拦截器最先进入而最后退出,第二个拦截器后被调用执行,而先完成执行过程。
三、标记库
1.值栈
答:ValueStack作用先是一个数据仓库,分为两部分
ObjectStack用来存储与请求处理县官的Action组件以及对象,存储的是与本次请求相关的临时变量和处理结果数据,采用堆栈的形式
Stack Context用来存储本次请求相关的Web运行环境信息
2.OGNL访问值栈和栈上下文的方式
3.使用标记库
答:在JSP中使用Struts2的标记库,在页面顶部增加代码
<%@taglib prefix=”s” uri=”/struts2-tags”>
4.Iterator标记
答:Iterator迭代控制
5.数据标记
答:提供各种数据访问的相关功能action property debug bean set push include param url date
四、结果视图类型
1.dispatcher chain redirect stream redirect redirectAction的意义及
使用方式
答:diapatcher:用来转向JSP页面,这是默认的结果类型
Chain:构成一条动作链。前一个动作将控制权转交给后一个动作,而钱一个动作的状态在后一个动作里仍然保持着。动作链由Chaining拦截器负责处理,因为这个拦
截器是defaultStack拦截器的一份子,随时可以使用动作链。
redirect:重定向一个URL
redirectAction:重定向到一个Action
stream:向浏览器发送InputSream对象,通常用来处理文件下载,可用来返回AJAX数据。
五、类型转换
1.框架内置的类型转换处理P130
答:两个条件:(1)视图组件采用OGNL表达式引用Action组件的属性。(2)Action 组件提供相应的setter/getter方法来允许框架设置属性的值。
2.自定义对象的类型转换P138
答:必须实现ognl.TypeConverter接口,它要求转换器必须实现以下接口方法:https://www.360docs.net/doc/483221101.html,ng.Object converValue(java.util.Map context, https://www.360docs.net/doc/483221101.html,ng.Object target, https://www.360docs.net/doc/483221101.html,ng.reflect.Member member, java.String propertyName, https://www.360docs.net/doc/483221101.html,ng.Object value, https://www.360docs.net/doc/483221101.html,ng.Class.toType);
Struts2框架还为接口提供了一个实现类:DefaultTypeConverter,通过继承该类来实现自己类型转换器,继承DefaultTypeConverter类需要重写convertValue方法除此之外,Struts2为我们提供了org.apach.struts2.until.StrutsTypeConverter 来帮助开发人员制定自己的转换器,要继承StrutsTypeConerter,实现方法:
public Object convertFromString(Map context, String[] values, Class toClass)
public String convertToString(Map context,Object o)
对应将字符串转换为对象将对象转换为字符串
六、输入校验
1.校验器配置风格
答:主要判断某个字段属性的输入是否有效——字段校验器——字段校验风格针对多个字段输入值之间的逻辑关系进行校验——非字段校验器内置的expression校验器——非字段校验
2.自定义校验器开发步骤
答:(1)定义校验器实现类。实现类须要继承validate接口,最简单方法:字段校验器直接继承FieldValidatorSupport,非字段校验器直接继承ValidatorSuppore (2)注册校验类。在风目录下穿件一个名为validators.xml的配置文件,然后添加自定义校验器的注册信息。框架默认校验器声明不在其作用,将xwork_core_2.1.6.jar文件中的package路径com.opensymphony.xwork2.validator下名为default.xml的配置文件中的内容复制到文件中。
3.手动校验P181
答:通过继承ActionSupport类,然后重写vlidate()方法,在validate()方法中就可以对输入的字段信息进行校验,数据校验失败,调用addFieldError()方法线系统的FieldError添加信息,校验失败,Struts2自动转发到名为input的result这个结果页面上,在input视图上可以通过
七、国际化
1.资源文件命名方式
答:basename+”_”+language+”_”+country+”_”+variant+”.properties”
basename+”_”+language+”_”+country+”_”+”.proeperties”
basename+”_”+language+”_”+”.properties”
basename+”.porperties”//默认情况
basename资源文件基础文件名,由用户自定义,language语言名称两个小写字母en,zh ;country国家名称,两个大写字母US CN;variant特定开发商或者浏览器WIN MAC POSIX
例如Message_zh_CN.properties Message_en_US.properties
2.Struts2对国际化的支持
答:自动完成以下工作:
(1)Action组件的基类ActionSupport默认实现了TextProvider接口,TextProvider接口有一个强制方法gerText(string key),他用来从
ResourceBoudle中获取制定信息资源
(2)对于每个Action组件名不需要动手创建ResourceBundles,鲁昂家将自动创建一个ResourceBundles的实例
(3)不需要编码获取也能够用的Local属性,框架自动检测Web请求的Local属性并根据它通过ResourceBunldes动态绑定资源属性文件
(4)提供了
3.p206页总结
答:Struts2访问国际化消息以下三种方式
(1)JSP页面:
(2)Action类中:使用ActionSupport类的getText方法
(3)表单元素的Label里:为表单元素指定一个key属性。
Struts2框架允许输出带占位符的国际化消息,两种方式来田中消息字符串中的占位符(1)JSP页面,在
(2)Action中,在调用getText方法时使用getText(String aTextName,Listargs)或getText(String key,String[]args)方法来填充占
位符。
加载资源文件的方式
(1)加载全局资源文件
(3)Action范围资源文件:在Action类文件所在的路径建立多个文件名为ActionName_language_country.properties的文件
(4)临时指定资源文件:
八、Ajax
1.什么是Ajax
答:Ajax是 Asynchronous JavaScript and XML(以及DHTML等)的英文缩写。
Ajax本质上是一个新的技术体系框架。它主要采用一下基本技术:
(1)HTML 用于建立Web表单并确定应用程序其他部分使用的字段。
(2)JavaScript代码是运行Ajax应用程序的核心代码,帮助改进与与服务器应用程序的通信。
(3)DHTML用于动态更新表单。开发人员将使用div、span和其他动态HTML元
素来标记HTML、
(4)文档对象模型DOM用于(通过JavaScript代码)处理HTML结构和(某些情况下)服务器返回的XML
2.使用Ajax标记
答:(1)将Struts2框架lib目录下的dojo插件包添加到Web项目的库路径下
(2)在JSP的顶部引入标记库指令
<%@ taglib prefix=”sx” uri=”/struts-dojo-tags”%>
(3)在JSP的head元素间插入
框架提供的标记包括head, div, submit, a, bind, tabbedpanel, tree, treenode, textarea, datetimepicker
【考试题型及试卷结构】:
考试题型:填空题,选择题,简答题,编程题。
试卷结构:填空题30分,选择题20分,简答题20分,编程题30分
最新javaweb学习课程总结
总结一:javaweb课程总结刚开始学的时候,感觉这两门课程好高大上的样子,因为自从学软件工程这个专业以来,一直都是学的理论性、框架性的东西,就没有接触到编程的实质性的部分,终于开始学编程了,感觉蛮兴奋的,也是精神饱满,信心十足,怀着一腔热血来听课。 由于JAVAWEB和JSP两门课是同时上的,而且每次都是一整上午,上课时间很长,老师一直有条不紊的讲着,虽然时间很长,但是每当大家上完课,心中都是有一种充实的感觉,大家都觉得有所收获,所以也就不曾觉得累了。 JAVAWEB这门课让我认识了以前见所未见闻所未闻的专业术语,Web应用程序的概述。我从中了解到Web应用程序的三层体系结构:表示层、业务层、数据存取层。从而想到了学数据库设计时的数据库设计三大范式,它们同是叙述在编写代码时应做的规划和应遵循的规则,这种规划在以后的学习中时有出现,说明编程并不是一味地进行循环判断、死记硬背,而需要在技术上有所加强、在效率上有所提高。做任何事都是如此,事先必须有目标、有计划,有统筹,这样执行时才不会盲目,才不会事倍功半。学习编程对综合能力都是一种培养。 接下来是JSP知识。要学JSP,就必须会HTML,如果HTML学不通,这对以后的学习都是一个瓶颈。基础一定要打扎实,吃透,否则上层建筑的建起就不会很顺利甚至没法起步。然后是JavaBean。以下是个人对JavaBean的一点学习体会。JavaBean里有set()和get()方法,用这些方法能很容易地传值,逻辑上更标准,代码看起来也更规范。但set()和get()方法只是用来对属性进行操作的,所以如果是进行复杂的逻辑或对数据库进行操作等,那么就不要写成set()和get()方法,只用一个有返回值的方法就足以。这样直观方便,且符合规范。总之,set()和get()方法不要没有效率地滥定义。 接着是Servlet。Servlet是一个用Java编写的应用程序,在服务器上运行,用来处理请求和响应,也可以单独做为一个Web页面。然后讲的是标签,包括自定义标签和JSP标准标签库。用一般的Java代码都几乎能实现它们的功能。它们的好处是提高了代码的重用性。 我们需要配置的坏境有JDK,Tomcat,还要用到Myeclips这一基础的编程工具。在学习JSP之前,由于没有网页编程的基础,便学习了HTML这种文本标记语言,自己试着去做简单的静态网站。后来学做JSP动态网站时,就涉及到了多方面的知识,JSP内部对象及内部对象所涉及的方法,JSP与数据库连接,如何去引用数据库。这门课更是巩固了JAVA 这一基础编程语言,要求对JAVA掌握的要透彻,每门语言要学扎实,深入理解,都要花费很大的功夫,不是容易的事情。 Jsp与servlet有一定的区别,Servlet可以看作是HTML的Java代码,而JSP可看作是包含Java代码的HTML。共同点:JSP和Servlet实际上是一回事。JSP页面最终要转换成Servlet,并进行编译,在请求期间执行的实际上是编译后的Servlet。因此,JSP页面不过是编写Servlet的另一种方式。各自应用的范围:Servlet比较适合于做处理任务,如做业务逻辑;JSP适合于表示任务,如网页制作,生成动态网页。 对JAVAWEB和JSP课程的知识就简单介绍到这里,本学期的这两门课程让我对软件工程这门课有了一个全新的认识,我真切的学到了能用的东西,大学里的很多课是浪费时间,而
JAVAWEB期末复习题
第1章WEB开发环境 (1)下列关于WEB开发说法正确的是。 ABCD A)Web是图形化的和易于导航的 B)Web与平台无关 C)Web是分布式的 D)Web 是动态的 (2)下列关于Tomcat说法正确的是。 ABCD A) Tomcat是一种编程语言 B) Tomcat是一种开发工具 C) Tomcat是一种编程思想 D) Tomcat是一种开编程规范 (3)下列关于Tomcat个目录说法错误的是。 E E) work目录——包含web项目示例,当发布web应用时,默认情况下把web 文件夹放于此目录下 (4)下列关于HTTP协议说法正确的是。 ABCDE A) HTTP是一种请求/响应式的协议 B) HTTP请求消息中Accept表示浏览器可接受的MIME类型 C) HTTP请求消息中Accept-Encoding表示浏览器能够进行解码的数据编码方式 D) HTTP请求消息中Accept-Language表示浏览器所希望的语言种类 E) HTTP请求消息中Host表示初始URL中的主机和端口。 (5)下列对于JSP说法中正确的是。ABCDE A) JSP是Sun公司推出的新一代站点开发语言 B) JSP完全解决了目前ASP、PHP的一个通病——脚本级执行 C) JSP将内容的生成和显示进行分离 D) JSP强调可重用的组件 E) JSP采用标识简化页面开发 第2章JSP编译指令 (1)下列关于JSP编译指令说法错误的是。 C C)编译指令向客户端产生任何输出 (2)下面关于page指令说法中错误的是。 B B)一个JSP页面只能包含一个page指令 (3)下面关于page指令的属性说法错误的是。 DE D)session属性制定此页面是否参与HTTP会话。默认值false E)errorpage属性指示当前页面是否为其他页的errorpage目标 (4)下列说法中正确的是。 ABDE A)include指令通知容器将当前的JSP页面中内嵌的、在指定位置上的资源内容包含 B)include指令中file属性指定要包含的文件名 D)Taglib指令允许页面使用者自定义标签 E)你必须在使用自定义标签之前使用<% @ taglib %>指令 (5)下列说法中错误的是。 B B)<%-- This comment will not be visible in the page source --%>会在客户端的HTML源代码中产生和上面一样的数据
最新《公共基础知识》重点归纳
法理 ●法的概念:特定物质生活条件决定的统治阶级意志的体现,由国家制定认可,由国家强制力保证实施的行为规范的综合 ●法的特征:1、调整人的行为或社会关系2、国家制定或认可、并具有普遍约束力3、以国家强制力保护实施4、规定权利和义务 ●法的本质:统治阶级意志的表现 ●法的规范作用:指引、评价、预测、教育和强制 法的作用 ●法的社会作用:维护统治阶级的阶级统治;执行社会公共事务。 ●法与经济基础的关系:经济基础决定法,法又反作用于经济基础。 ●法与生产力的关系:生产力发展的水平直接影响法的发展水平。法律离开社会生产力的发展,既无存在的可能,也无存在的必要。 ●法对市场经济宏观调控的作用:引导;促进;保障;制约。 ●法对微观经济的作用:确认经济活动主体的法律地位,调节经济活动中的各种关系,解决经济活动中哦的各种纠纷,维持正常的经济秩序 ●法与政治的关系:法受政治制约(政治关系发展、整体改革、政治活动的内容),法服务于政治(调节阶级间、阶级内关系,维护社会关系、社会秩序;打击制裁违法犯罪,调整公共事务关系,维护公共秩序) ●法与党的政策的关系: 相同点(内容实质方面联系):阶级本质、指导思想、基本原则、经济基础、社会目标等 区别:意志属性、规范形式、调整范围(不尽同)、实施方式、稳定性程序化程度 ●法与党的政策相互作用: 一、法的制定:1、政策是立法的依据和指导思想 2、发将政策转为形式合理效力普遍的行为规范 二.发的实施:1、政策变法,使正统,又反之约束政治活动 2、法的实施借助政策作用 ●社会主义民主与法制是相互依存、相互作用、紧密联系、不可分割的。 ●民主是法制的前提和基础,因为:民主是法制产生的依据、力量源泉,决定了法制的性质和内容 ●法的渊源的专有含义:法律规范的形式上的来源和其外在表现形式 ●法律效力等级为:宪法-法律-行政法规-地方性法规-规章(部门和地方政府)。 ●宪法:根本大法,最高法律效力 ●法律:由全国人大或其常务委员会制定、颁布;全国范围内生效;规范性法律文件 ●行政法规:国务院为领导和管理国家各项行政事务根据为宪法、法律 国务院发布的决定、命令,凡具有规范性的也属于发的渊源 ●地方性法规:地方人大及常委会制定(省、自治区、直辖市、省政府所在市、国批的较大市),适用本地方。 ●规章:1、部门规章:指由国务院各部委+中银+审计署+具有行政管理职能的直属机构;依据为:宪法、法律、国务院的行政法规、决定、命令 2、地方规章:政府制定(省、自治区、直辖市、省自治区政府所在市、经济特区所在市、国的较大市)依据:宪法、法律、行政法规 ●自治条例和单行条例:民族自治地方人大制定,区域内生效 ●特别行政区法:在特别行政区内实行的制度由全国人大以法律规定。 ●国际条约:与民法规定不同的,适用国际条约,但声明保留的条款除外。 ●规定是规范性文件,不属于法律范畴,效力低于法律。 ●广义的法律包括法律、行政法规、地方性法规和规章。 ●法律关系三要素(法律规范在调整人们行为过程中形成的权利义务关系):主体(法律关系的参加者)、客体(权利义务指向的对象:物、精神产品、人身、行为)、内容(权利义务) ●权利能力:能够才加一定的法律关系,依法享有权利承担义务的主体能力; 行为能力:法律关系的主体能够通过自己的行为实际取得权利和承担义务的能力 行为能力必须以权利能力为前提,无权利能力就无法谈行为能力。 ●法人的权利能力:生于成立,终于解体 公民的权利能力:始于出生,终于死亡 ●自然人有权利能力,未必有行为能力,根据年龄和精神状况,分为:完全、限制、无行为能力人
JavaWeb期末总结
第一章Web开发基础知识(简单描述)表单(续) 表单元素