Java面试题集(四)
二. Java Web基础部分
在js中如何创建一个对象?
var p1={name:”tom”,”age”:12};
function Person(name,age){
this.name=name;
this.age=age;
}
var p2=new Person(“jack”,14);
在js中如何得到对象的属性?
Var age=p2.age;
age=p1[“age”];
Alert(age);
$(document).ready()方法和window.onload()方法的区别?
1.window.onload()方法是在网页中所有的元素完全加载到浏览器后才执行的。
2.$(document).ready()方法可以在dom载入就绪时就对其进行操作,并调用执行绑定的函数。
Xml有哪些解析方式?区别是什么?项目中用到了xml技术的哪些方面?如何实现的?
1.DOM方式:一次性将整个文档加载到内存中,生成一个对象树,在处理大型文件时其性能下降的非常厉害。
2.SAX:基于事件驱动的方法回调机制。每读取一小部分数据时就会回调事件处理器对象的方法,但解析一旦开始就不能停止。
实际运用:用到了数据存贮,信息配置两方面。在做数据交换平台时,将不能数据源的数据组装成XML文件,然后将XML文件压缩打包加密后通过网络传送给接收者,接收解密与解压缩后再同XML文件中还原相关信息进行处理。在做软件配置时,利用XML可以很方便的进行,软件的各种配置参数都存贮在XML文件中。
Servlet的生命周期?
1.初始化阶段调用init()方法。
2.响应客户端请求阶段调用service()方法即doGet()和doPost()方法
3.终止阶段调用destory()方法。
http请求的转发(forward)和重定向(redirect)的区别?
1.地址栏:转发显示的是请求的url而重定向显示的不是请求的url,是指向新的url。
2.浏览器发送请求次数:转发浏览器发送了一次请求,而重定向浏览器发生了2次请求。
3.是否可以进行request数据共享:转发2个资源之间是同一个request对象,可以共享request中数据,而重定向2个资源之间不是同一个request对象,不可以共享。
补充:forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址;
redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。
Http中请求的get和post方式的区别?
Get用于信息获取,而post用于更新信息,
get请求用来从服务器上获得资源,而post是用来向服务器提交数据;
数据查询时用Get方式,而数据添加、修改或删除时用Post方式;
1.携带请求参数的方式
Get:通过请求行携带参数,参数显示在地址栏
Post:通过请求体携带参数,参数不会显示在地址栏
2.服务器端处理请求的方法
Get:会调用servlet的doGet()来处理请求
Post:会调用servlet的doPost()来处理请求
3.数据大小和安全性
Get:大小有显示,不安全
Post:大小没显示,安全
JSP有哪些内置对象?作用分别是什么?
jsp一共有9个内置对象:
Request:用户端请求,此请求会包含来自get/post请求的参数
Reponse:网页传回用户端的回应
Session:与请求有关的会话期,Session可以存贮用户的状态信息
Application: 与当前应用对应的ServletContext对象,应用中只有一个
pageContext:网页的属性在这里管理
Out:用来传送回应的输出{}<%=%>
Page:jsp对应的servlet对象
Exception:针对错误网页,未捕捉的异常对象
Config:与jsp对象
jsp中动态include与静态include的区别?
1.动态包含:用<jsp:include file=”optimal.jsp”>包含动作是在jsp对应的servlet处理请求时去执行,每请求一次执行一次。
2.静态包含:<%@include file=”optimal.jsp”>包含动作在jsp被编译成java文件时执行,只有第一次请求时执行。
注意:在日常开发中会出现这样错误:
The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 bytes limit
则该错误是jsp文件过大编译失败。解决方法是动态引入jsp文件,拆分jsp文件
JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么?
JSP是Servlet技术的扩展,本质上是Servlet的简易方式,更强调应用的外表表达。JSP编译后是"类servlet"。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。
我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串?
Public String translate (String str) {
String tempStr = "";
try {
tempStr = new String(str.getBytes("ISO-8859-1"), "GBK");
tempStr = tempStr.trim();
}
catch (Exception e) {
System.err.println(e.getMessage());
}
return tempStr;
}
Jquery使用好处?为什么使用jquery?
1.轻量级:jquery是轻量级的JavaScript框架.
2:强大的选择器:JQuery不仅支持CSS里的所有选择器,还有JQuery独有的选择器.
3:出色的DOM操作封装:JQuery封装了大量常用的DOM操作。
4.兼容性好:JQuery能够在不同浏览器中兼容,同时还修复了一些浏览器之间的差异.
5.可靠的事件处理机制
6.完善的ajax封装
7.链式操作方式,隐式迭代
8.支持丰富的插件
Ajax发送请求过程?优缺点?应用场景?
优点:
1.最大的一点是页面无刷新,给用户体验非常好。
2.使用异步方式与服务器通信,不需要打断用户操作,具有更加迅速的响应能力
3.Ajax的原则是“按需取数据,最大程度的减少冗余请求,减少服务器的负荷”。
缺点:
1.破坏浏览器后退按钮的正常行为,在动态更新页面后,用户无法回到前一个页面的状态。
2.使用JavaScript作ajax引擎,JavaScript的兼容性和debug本身让人头疼。
应用场景:
1.文本输入提示的场景
2.对数据进行联动过滤场景。
Java面试题集(四)的更多相关文章
- JAVA面试题集之基础知识
JAVA面试题集之基础知识 基础知识: 1.C 或Java中的异常处理机制的简单原理和应用. 当JAVA程序违反了JAVA的语义规则时,JAVA虚拟机就 ...
- 转:Java面试题集(51-70) http://blog.csdn.net/jackfrued/article/details/17403101
Java面试题集(51-70) Java程序员面试题集(51-70) http://blog.csdn.net/jackfrued/article/details/17403101 摘要:这一部分主要 ...
- Java面试题全集(上-中-下)及Java面试题集(1-50/51-70)
阅读量超百万级的文章,收藏并分享一下.感谢原创作者的总结 对初中级java开发人员有特别大的帮助,不论是技术点面试还是知识点总结上. Java面试题全集(上): https://blog.cs ...
- 互联网大厂Java面试题集—Spring boot面试题(一)
Spring Boot 需要独立的容器运行吗? 可以不需要,内置了 Tomcat/ Jetty 等容器.通过pom.xml中导入依赖: <!--spring-boot-starter-web:代 ...
- 转:Java面试题集(1-50)
Java程序员面试题集(1-50) http://blog.csdn.net/jackfrued/article/details/17403101 一.Java基础部分 1.面向对象的特征有哪些方面? ...
- Java面试题集(116-135)
Java程序员面试题集(116-135) 摘要:这一部分讲解基于Java的Web开发相关面试题,即便在Java走向没落的当下,基于Java的Web开发因为拥有非常成熟的解决方案,仍然被广泛应用.不管你 ...
- Java面试题集(71-85)
Java程序员面试题集(71-85) 摘要:这一部分主要包括了UML(统一建模语言).面向对象的设计原则(六原则一法则).GoF设计模式.企业级设计模式.JDBC(Java数据库连接).XML(可扩展 ...
- 大公司的Java面试题集
找工作要面试,有面试就有对付面试的办法.以下一些题目来自我和我朋友痛苦的面试经历,提这些问题的公司包括IBM, E*Trade, Siebel, Motorola, SUN, 以及其它大小公司. 面试 ...
- Java面试题集(51-70)
Java程序员面试题集(51-70) 51.类ExampleA 继承Exception,类ExampleB 继承ExampleA. 有如下代码片断: try{ thrownew ExampleB(“b ...
- Java面试题集(1-50)
下面的内容是对网上原有的面试题集及答案进行了全面修订之后的内容(原来的题目有很多重复无用的题以及错误的答案),参照了JDK最新版本,删除了重复题目以及EJB2.x等无用内容,补充最新面试题.知识点巩固 ...
随机推荐
- javascript基本类型和引用类型,作用域和内存问题
基本类型(null.undefined.boolean.number.string)和引用类型(Object 对象) 1 基本类型:只能不存一个值,一种类型:从一个变量向另一个变量复制基本类型的值, ...
- 关于java中实现在oracle数据库中实现对中文首字母进行排序的解决方案
首先介绍Oracle 9i新增加的一个系统自带的排序函数 1.按首字母排序 在oracle9i中新增了按照拼音.部首.笔画排序功能.设置NLS_SORT值 SCHINESE_RADICAL_M ...
- iOS开发资源:推送通知相关开源项目--PushSharp、APNS-PHP以及Pyapns等
PushSharp (github) PushSharp是一个实现了由服务器端向移动客户端推送消息的开源C#库,支持 iOS (iPhone/iPad APNS). Android (C2DM/GC ...
- CPP-基础:单目运算符重载
关于++运算符前置和后置重载的实现实例: #include <iostream> using namespace std; //创建时钟类 class Clock { public: Cl ...
- Windows MinGW 64-bit boost 踩坑
>g++ -Wall -shared -g -DBUILD_DLL main.cpp -ID:\gcc\boost\include\boost-1_69 -LD:\gcc\boost\lib - ...
- Mysql插入中文时提示:ERROR 1366 (HY000): Incorrect string value: '\xE5\x8F\xB0\xE5\xBC\x8F...' fo
Mysql插入数据时提示:ERROR 1366 (HY000): Incorrect string value: ‘\xE5\x8F\xB0\xE5\xBC\x8F…’ fo 分析如下: 首先通过语句 ...
- UVa-101-木块问题
这题用vector比较好写,我们设置对应的几个函数,然后进行相应的操作来简化代码,这样才不易出错. 对于输入和操作来说我们经分析之后,可以看到最后一个操作时最原始的操作也就是不需要还原任意一个堆任意高 ...
- (3)zabbix用户管理
登陆zabbix 默认账号:Admin,密码:zabbix,这是一个超级管理员.登陆之后在右下角可以看到“connected as Admin“(中文版:连接为Admin). zabbix组介绍 我们 ...
- Linux基础学习-使用Squid部署代理缓存服务
使用Squid部署代理缓存服务 Squid是Linux系统中最为流行的一款高性能代理服务软件,通常作为Web网站的前置缓存服务,能够代替用户向网站服务器请求页面数据并进行缓存.Squid服务配置简单. ...
- 数据结构( Pyhon 语言描述 ) — — 第8章:队列
队列概览 队列是线性的集合 队列的插入限制在队尾,删除限制在队头.支持先进先出协议( FIFIO, first-in first-out ) 两个基本操作 add:在队尾添加一项 pop:从队头弹出一 ...