广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >javaweb面试题目(3)
  • 346
分享到

javaweb面试题目(3)

java面试题java 2018-05-15 16:05:19 346人浏览 无得
摘要

AJAX有哪些有优点和缺点?优点:最大的一点是页面无刷新,用户的体验非常好。 (推荐学习:java面试题目)使用异步方式与服务器通信,具有更加迅速的响应能力。可以把以前一些服务器负担的工作转嫁到客户端,利用

AJAX有哪些有优点和缺点?

优点:

最大的一点是页面无刷新,用户的体验非常好。 (推荐学习:java面试题目)

使用异步方式与服务器通信,具有更加迅速的响应能力。

可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。并且减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担。

基于标准化的并被广泛支持的技术,不需要下载插件或者小程序

缺点:

ajax不支持浏览器back按钮。

安全问题 AJAX暴露了与服务器交互的细节。

对搜索引擎的支持比较弱。

破坏了程序的异常机制。

不容易调试。

AJAX应用和传统Web应用有什么不同?

在传统的javascript编程中,如果想得到服务器端数据库或文件上的信息,或者发送客户端信息到服务器,需要建立一个html fORM然后GET或者POST数据到服务器端。

用户需要点击”Submit”按钮来发送或者接受数据信息,然后等待服务器响应请求,页面重新加载。

因为服务器每次都会返回一个新的页面, 所以传统的WEB应用有可能很慢而且用户交互不友好。

使用AJAX技术, 就可以使Javascript通过XMLHttpRequest对象直接与服务器进行交互。

通过HTTP Request, 一个web页面可以发送一个请求到web服务器并且接受web服务器返回的信息(不用重新加载页面),展示给用户的还是同一个页面,用户感觉页面刷新,也看不到到Javascript后台进行的发送请求和接受响应,体验非常好。

Ajax的实现流程是怎样的?

(1)创建XMLHttpRequest对象,也就是创建一个异步调用对象.

(2)创建一个新的HTTP请求,并指定该HTTP请求的方法、URL及验证信息.

(3)设置响应HTTP请求状态变化的函数.

(4)发送HTTP请求.

(5)获取异步调用返回的数据.

(6)使用JavaScript和DOM实现局部刷新.

具体一点:

1,创建XNLHttpRequest对象

(不考虑ie)XMLHttpRequest request = new XMLHttprequest();

2,创建新的Http请求

XMLHttprequest.open(method,url,flag,name,passWord);

3,设置响应Http请求变化的函数

XMLHttprequest.onreadystatechange=getData;
function getData(){
    if(XMLHttprequest.readyState==4){
        //获取数据
    }
}

4,发送http请求

XMLHttprequest.send(data);

5,获取异步调用返回的对象,

function(data){
//异步提交后,交互成功,返回的data便是异步调用返回的对象,该对象是一个string类型的
}

6,使用js、DOM实现局部刷新

myDiv.innerHTML=''这是刷新后的数据''

简单说一下数据库的三范式?

第一范式:数据库表的每一个字段都是不可分割的

第二范式:数据库表中的非主属性只依赖于主键

第三范式:不存在非主属性对关键字的传递函数依赖关系

Java集合框架是什么?说出一些集合框架的优点?

每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。

随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久。它还包括在java并发包中,阻塞接口以及它们的实现。

集合框架的部分优点如下:

(1)使用核心集合类降低开发成本,而非实现我们自己的集合类。

(2)随着使用经过严格测试的集合框架类,代码质量会得到提高。

(3)通过使用jdk附带的集合类,可以降低代码维护成本。

(4)复用性和可操作性。

Java集合框架的基础接口有哪些?

Collection为集合层级的根接口。一个集合代表一组对象,这些对象即为它的元素。Java平台不提供这个接口任何直接的实现。

Set是一个不能包含重复元素的集合。这个接口对数学集合抽象进行建模,被用来代表集合,就如一副牌。

List是一个有序集合,可以包含重复元素。你可以通过它的索引来访问任何元素。List更像长度动态变换的数组

Map是一个将key映射到value的对象.一个Map不能包含重复的key:每个key最多只能映射一个value。

一些其它的接口有Queue、Dequeue、SortedSet、SortedMap和ListIterator。

集合框架中的泛型有什么优点?

Java1.5引入了泛型,所有的集合接口和实现都大量地使用它。泛型允许我们为集合提供一个可以容纳的对象类型。

因此,如果你添加其它类型的任何元素,它会在编译时报错。这避免了在运行时出现ClassCastException,因为你将会在编译时得到报错信息。

泛型也使得代码整洁,我们不需要使用显式转换和instanceOf操作符。它也给运行时带来好处,因为不会产生类型检查的字节码指令。

Enumeration和Iterator接口的区别?

Enumeration的速度是Iterator的两倍,也使用更少的内存。Enumeration是非常基础的,也满足了基础的需要。

但是,与Enumeration相比,Iterator更加安全,因为当一个集合正在被遍历的时候,它会阻止其它线程去修改集合。

迭代器取代了Java集合框架中的Enumeration。迭代器允许调用者从集合中移除元素,而Enumeration不能做到。为了使它的功能更加清晰,迭代器方法名已经经过改善。

Iterater和ListIterator之间有什么区别?

1,我们可以使用Iterator来遍历Set和List集合,而ListIterator只能遍历List。

2,Iterator只可以向前遍历,而LIstIterator可以双向遍历。

3,ListIterator从Iterator接口继承,然后添加了一些额外的功能,比如添加一个元素、替换一个元素、获取前面或后面元素的索引位置。

我们如何对一组对象进行排序?

如果我们需要对一个对象数组进行排序,我们可以使用Arrays.sort()方法。如果我们需要排序一个对象列表,我们可以使用Collection.sort()方法。

两个类都有用于自然排序(使用Comparable)或基于标准的排序(使用Comparator)的重载方法sort()。

Collections内部使用数组排序方法,所有它们两者都有相同的性能,只是Collections需要花时间将列表转换为数组。

与Java集合框架相关的有哪些最好的实践?

1,根据需要选择正确的集合类型。比如,如果指定了大小,我们会选用Array而非ArrayList。如果我们想根据插入顺序遍历一个Map,我们需要使用TreeMap。如果我们不想重复,我们应该使用Set。

2,一些集合类允许指定初始容量,所以如果我们能够估计到存储元素的数量,我们可以使用它,就避免了重新哈希或大小调整。

3,基于接口编程,而非基于实现编程,它允许我们后来轻易地改变实现。

4,总是使用类型安全的泛型,避免在运行时出现ClassCastException。

5,使用JDK提供的不可变类作为Map的key,可以避免自己实现hashCode()和equals()。

6,尽可能使用Collections工具类,或者获取只读、同步或空的集合,而非编写自己的实现。它将会提供代码重用性,它有着更好的稳定性和可维护性。

什么是事务?

事务是恢复和并发控制的基本单位

事务的四个基本特征

原子性,一致性,隔离性,持久性

原子性和一致性差不多,意思是要么全部成功,要么就失败

一致性是说,从一个一致性状态到另一个一致性状态

隔离性是说一个事务执行的过程中不能被另一个事务干扰

持久性也就是事务一旦提交,他对数据库中数据的改变就应该是永久的,不能变的(这里只是面试简单的说一下理解,详细理解问度娘)

--结束END--

本文标题: javaweb面试题目(3)

本文链接: https://www.lsjlt.com/news/3295.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • javaweb面试题目(3)
    AJAX有哪些有优点和缺点?优点:最大的一点是页面无刷新,用户的体验非常好。 (推荐学习:java面试题目)使用异步方式与服务器通信,具有更加迅速的响应能力。可以把以前一些服务器负担的工作转嫁到客户端,利用...
    99+
    2018-05-15
    java面试题 java
  • javaweb面试题目(2)
    JDBC访问数据库的基本步骤是什么? (推荐学习:java面试题目)1,加载驱动2,通过DriverManager对象获取连接对象Connection3,通过连接对象获取会话4,通过会话进行数据的增删改查,封...
    99+
    2014-06-23
    java面试题 java
  • JavaWeb面试题目(1)
    说一说Servlet的生命周期Servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init(),service()和destroy方法表达。 ...
    99+
    2020-02-19
    java面试题 Java
  • Java的基础面试题目(3)
    String s = new String("xyz");创建了几个StringObject?是否可以继承String类两个或一个都有可能,”xyz”对应一个对象,这个对象放在字符串常量缓冲区,常量”xyz”不管出现多少遍,都是缓冲区中的那...
    99+
    2018-01-28
    java面试题 Java
  • 网管面试题3-windows
    51:配置DHCP中继代理时,必须手动配置的参数是(DHCP服务器IP   )。   52:在NTFS文件夹中,可以为用户配置( 6  )种标准权限;在NTFS文件中可以为用户配置( 5  )种标准权限。 解析: 用...
    99+
    2023-01-31
    网管 面试题 windows
  • java多线程和并发面试题目(1~3题,附答案)
    1、DeplayQueue延时无界阻塞队列在谈到DelayQueue的使用和原理的时候,我们首先介绍一下DelayQueue,DelayQueue是一个无界阻塞队列,只有在延迟期满时才能从中提取元素。该队列的头部是延迟期满后保存时间最长的D...
    99+
    2020-08-06
    java面试题 java
  • 3个CCIE出的面试题
    3个CCIE出的面试题 1. 现在的6509及7609,SUP720交换带宽去到720G,是不是可以说7609/6509可以取代一部分GSR的地位?  2. isis level1 的路由表包括哪此路由?有多个level-1-2出口时,其它...
    99+
    2023-01-31
    面试题 CCIE
  • 3、文件管理-面试题
    试题内容 自己写答案(错题标粗并倾斜) 1、 [root@centos7 b]# mv file1 ../../dic 2、 [root@centos7 b]# ln -s /lib64/libc.so /usr/lib64/libc...
    99+
    2023-01-31
    文件管理 面试题
  • Python中的一些面试题(3)
    怎么样在元组和列表间转换list(tuple) tuple(list)如何对一个序列进行反转#方法一: #如果是一个列表 listdata = [1,3,4,5] listdata.reverse() #但是这方法有一个缺点就是直...
    99+
    2023-01-31
    面试题 Python
  • Java泛型面试题目
    Java中的泛型是什么 使用泛型的好处是什么泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。好处: (推...
    99+
    2017-05-28
    java面试题 Java
  • java集合面试题目
    ArrayList和Vector的区别这两个类都实现了List接口(List接口继承了Collection接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素,并...
    99+
    2022-03-24
    java面试题 java
  • C#经典面试题及答案 (3)
    13:大概描述一下ASP。NET服务器控件的生命周期 答:初始化 加载视图状态 处理回发数据 加载 发送回发更改通知 处理回发事件 预呈现 保存状态 呈现 处置 卸载 14:程序设计: 猫大叫一声,所有的老鼠都开始逃跑,主人被惊醒。(C#语...
    99+
    2023-01-31
    面试题 答案 经典
  • awk题目3
    1.http://bbs.chinaunix.net/thread-4157887-1-1.html   cat file:>a11>a111>a1111>a22>a222>b13>b133 将各个...
    99+
    2023-01-31
    题目 awk
  • python 题目3
    磁盘使用情况root@ubuntu:/data/server/spider/面试题# cat 02check_disk.py import timeimport osnew_time = time.strftime('%Y-%m-%d')p...
    99+
    2023-01-31
    题目 python
  • Java持久层面试题目
    什么是ORM? (推荐学习:java面试题目)对象关系映射(Object-Relational Mapping,简称ORM)是一种为了解决程序的面向对象模型与数据库的关系模型互不匹配问题的技术;简单...
    99+
    2021-08-19
    java面试题 Java
  • java框架面试题目(1)
    谈谈你对Struts的理解。struts是一个按MVC模式设计的Web层框架,其实它就是一个Servlet,这个Servlet名为ActionServlet,或是ActionServlet的子类。 (推荐学习:java面试...
    99+
    2019-10-30
    java面试题 java
  • java多线程面试题目
    什么是线程?线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。 (推荐学习:java面试题目)比如,如果一个线程完成一个...
    99+
    2020-08-31
    java面试题 java
  • java框架面试题目(2)
    spring现在无疑是Java中最火的框架,使用范围广,几乎每个公司面试都会涉及spring和数据库,你可以对Struts不熟悉,但一定不能表现出对spring不了解。使用Spring框架的好处是什么? (...
    99+
    2019-04-21
    java面试题 java
  • 2021年最新Redis面试题汇总(3)
    目录1、Redis 怎么保证高可用、有哪些集群模式2、主从复制​3、哨兵1)哨兵故障检测2)哨兵故障转移流程4、集群模式​5、集群选举6、如何保证集群在线扩容...
    99+
    2022-11-12
  • ios 笔试题3
    1.main()  {     int a[5]={1,2,3,4,5};     int *ptr=(int *)(&a+1);      printf("%d,%d",*(a+1),*(ptr-1)); } 答:2,5     ...
    99+
    2023-01-31
    笔试 ios
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作