java前端知识点整理
1.jsp内置对象?作⽤?
request :客户端请求,包含来⾃ GET/POST,提供了⼏个⽤于获取 cookie, 和 session 的⽅法
response :⽹页传回⽤户端的回应
pageContext :⽹页的属性是在这⾥管理,获取上下⽂对象
session :与请求有关的会话期,表⽰⼀个请求的HttpSession 对象。Session 可以存贮⽤户的信息
application :servlet 正在执⾏的内容
out :⽤来传送回应的输出
config: servlet 的构架部件
page: JSP ⽹页本⾝
exception:针对错误⽹页,未捕捉的例外
2.描述servlet的⽣命周期和基本框架
Servlet是Java编写的程序,此程序是在服务器端运⾏的,处理客户端的请求,并将处理结果以响应的⽅式返回给客户端。
⽣命周期:加载和实例化、初始化、处理请求和服务结束。
Servlet被实例化后à容器运⾏init⽅法初始化à请求到达时,运⾏service⽅法à⾃动派遣与请求对应的doxxx⽅法à服务器调⽤destroy⽅法销毁实例。
jsp用什么前端框架基本框架:
3.使⽤过哪些javascript库和前端框架?
库:
Jquery:它封装JavaScript常⽤的功能代码,提供⼀种简便的JavaScript设计模式,优化HTML⽂档操作、事件处理、动画设计和Ajax交互。Lodash:提供了数百个功能性的JavaScript实⽤程序来补充原⽣字符串、数字、数组和其它原始对象⽅法。
React:⽤于构建⽤户界⾯的JavaScript类库,也是去年最受关注的类库。它专注于Model-View-Controller(MVC)开发的“View”部分,使⽤它可以轻松创建保留状态的UI组件。它是实现虚拟DOM的⾸选类库之⼀,它的内存结构能够有效地计算差异,页⾯更新也更加有效。⼩巧,⾼效,快捷灵活简单的组件模型
框架:
AngularJS :它使⽤双向数据绑定扩展HTML,同时解耦了DOM操作和应⽤程序逻辑。
Vue.js:⽤于构建⽤户界⾯的轻量级渐进框架。它提供了⼀个类似React的虚拟DOM驱动视图层,可以与其它类库集成,⽤于构建强⼤的单页⾯应⽤。该框架是由之前在AngularJS⼯作过的Evan You创建的,他提取了AngularJS中⾃⼰喜欢的部分。Vue.js使⽤HTML模板语法
将DOM绑定到实例数据。Model是在数据改变时更新view的纯JavaScript对象。
Knockout.js:是最早的MVVM框架之⼀,它确保了UI与底层数据保持同步,具有模板和依赖关系跟踪。
4.Label标签的作⽤是什么?如何使⽤?
Label标签来定义表单控制间的关系,当⽤户选择该标签时,浏览器会⾃动将焦点转到和标签相关的表单控件上。
FOR属性功能:表⽰Label标签要绑定的HTML元素,你点击这个标签的时候,所绑定的元素将获取焦点。
ACCESSKEY属性功能:表⽰访问Label标签所绑定的元素的热键,当您按下热键,所绑定的元素将获取焦点。
5.如何规避javascript多⼈开发函数重命名的问题,列出所有的解决办法,举例说明?命名空间、封闭空间、js模块化mvc(数据层、表现层、控制层)、变量转换成对象的属性、对象化。
6.编写⼀个⽅法,实现对象的深度克隆?
function deepClone(obj) {
var o = obj instanceof Array ? [] : {};
for(var k in obj)
o[k] = typeof obj[k] === Object ? deepClone(obj[k]) : obj[k];
return o;
}
var a = [[1, 2, 3], [4, 5, 6, 7]];
var b = deepClone(a);
alert(b);//输出1、2、3、4、5、6、7
7.Http中get和post⽅式的区别?
get⽅法:
GET请求能够被缓存
GET请求会保存在浏览器的浏览记录中
GET请求的URL能够保存为浏览器书签
GET请求有长度限制
GET请求主要⽤以获取数据
post⽅法:
POST请求不能被缓存下来
POST请求不会保存在浏览器浏览记录中
POST请求的URL⽆法保存为浏览器书签
POST请求没有长度限制
8.XML⽂档定义有⼏种形式?它们之间有何本质区别?解析XML⽂档有哪⼏种⽅式及区别?
本题三个答题点:
a: 两种形式 dtd,schema
b: 本质区别:schema本⾝是xml的,可以被XML解析器解析(这也是从DTD上发展schema的根本⽬的)
c: 两种主要⽅式:dom,sax
区别:DOM:处理⼤型⽂件时其性能下降的⾮常厉害。这个问题是由DOM的树结构所造成的,这种结构占⽤的内存较多,⽽且DOM必须在解析⽂件之前把整个⽂档装⼊内存,适合对XML的随机访问
SAX:不同于DOM,SAX是事件驱动型的XML解析⽅式。它顺序读取XML⽂件,不需要⼀次全部装载整个⽂件。当遇到像⽂件开头,⽂档结束,或者标签开头与标签结束时,它会触发⼀个事件,⽤户通过在其回调事件中写⼊处理代码来处理XML⽂件,适合对XML的顺序访问9.简述 Java Server Page(JSP)和 Servlet 的联系和区别?
Servlet和JSP最主要的不同点在于,Servlet的应⽤逻辑是在Java⽂件中,并且完全从表⽰层中的HTML⾥分离开来。⽽JSP的情况
是Java和HTML可以组合成⼀个扩展名为.jsp的⽂件。JSP侧重于视图,Servlet主要⽤于控制逻辑。
10.jquery的选择器有哪些?
11.javascript有哪些数据类型?
基本类型:Undefined、Null、Boolean、Number
引⽤类型:Object、Array和Function
12.在Jsp中使⽤JavaBean?
JSP技术提供了三个关于JavaBean组件的动作元素,即JSP标签,它们分别为:
<jsp:useBean>标签:⽤于在JSP页⾯中查或实例化⼀个JavaBean组件。
<jsp:setProperty>标签:⽤于在JSP页⾯中设置⼀个JavaBean组件的属性。
<jsp:getProperty>标签:⽤于在JSP页⾯中获取⼀个JavaBean组件的属性。
13.谈谈我对Ajax的原理的理解
(同步,是发送⽅发送数据之后,必须等接收⽅接收数据必须做出回应之后,才可以进⾏下⼀步。
异步的话则是发送⽅发送数据之后不需等接收⽅做出回应,可以进⾏下⼀步操作。)
Ajax的原理简单来说,实际上就是⽤javascript的⽅式,通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后
⽤javascript来操作DOM⽽更新页⾯。
Ajax原理过程 :
利⽤XMLHttpRequest对象发送简单请求的基本步骤:
1)创建XMLHttpRequest对象实例
2)设定XMLHttpRequest对象的回调函数,利⽤onreadystatechange属性
3)设定请求属性:设定HTTP⽅法(GET或POST);设定⽬标URL,利⽤open()⽅法
4)将请求发送给服务器。利⽤send()⽅法
利⽤DOM对服务器响应进⾏处理
Ajax优点:
1.⽆刷新更新数据,减少⽤户等到时间,更好的⽤户体验
2.异步与服务器通信,⽆需打断⽤户,响应更加迅速
3.可以把服务器的⼀些负担转到客户端,利⽤客户端闲置的能⼒来处理,减轻服务器和带宽的负担,节约空间和宽带租⽤成本。并且减轻服务器的负担,AJAX的原则是“按需取数据”,可以最⼤程度的减少冗余请求和响应对服务器造成的负担,提升站点性能。
5.基于标准化,⼴泛被⽀持
Ajax缺点:
1.破坏了前进后退功能,⽤户往往通过后退按钮来取消上⼀步操作,但是使⽤ajax⽆法实现。可以使⽤Gmail来解决这个问题,它只是采⽤的⼀个⽐较笨但是有效的办法,即⽤户单击后退按钮访问历史记录时,通过创建或使⽤⼀个隐藏的IFRAME来重现页⾯上的变更。
2.安全问题。ajax技术就如同对企业数据建⽴了⼀个直接通道。这使得开发者在不经意间会暴露⽐以前更多的数据和服务器逻辑。ajax的逻辑可以对客户端的安全扫描技术隐藏起来,允许⿊客从远端服务器上建⽴新的攻击。还有⾃⾝受到如跨站脚本攻击,SQL注⼊等攻击。
3.对搜索引擎⽀持较弱
4.⼀些⼿持设备不能很好的⽀持等
14.对easyUi的理解?
基于jquery框架,主要前端视图。
easyui在封装组件的时候,是以对象的思想封装,以函数调⽤的⽅式实现。easyui的组件⼤量使⽤了继承。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论