JAVA程序员面试笔试宝典4
1.HTTP中GET与POST方法有什么区别?
- GET方法上传数据时,数据添加在URL后面。同时,数据大小有限制,通常在1024Byte左右。POST方法传递数据是通过HTTP请求的附件进行的,传递的数据量默认是不受限制的。
- GET方法存在安全隐患,而POST方法向服务器提交的内容在URL中并没有明文显示,对用户是不可见的,所以POST安全性更好一些。
2.cookie和session有什么区别
- cookie数据存放在客户的浏览器上,session数据保存在服务器上,因此session安全性更高。
- cookie性能更高一些,session在一定时间内保存在服务器上,因此当访问量增多时,会降低服务器性能。
- 单个cookie保存的数据不能超过4KB,而session不存在此问题。
3.什么是IoC
控制反转,有时也称为依赖注入,是一种降低对象之间耦合关系的设计思想。具体而言IoC有以下两个方面的优点:
- 通过IoC容器,开发人员不需要关注对象如何被创建,同时增加新类也非常方便,只需要修改配置文件即可实现对象的“热插拔”。
- IoC容器通过配置文件来确定需要注入的实例化对象,因此非常便于进行单元测试。
尽管如此,IoC也有自身的缺点:
- 对象通过反射实例化出来,对系统的性能有一定影响
- 创建对象的流程变得复杂
4.内连接与外连接有什么区别
内连接:返回的结果集选取了两个表所有相匹配的数据,舍弃了不匹配的数据。(可能造成信息丢失)
外连接:外连接不仅包含符合条件的所有数据行,而且还包括左表(左外连接)、右表(右外连接)或连个连接表中的所有数据行(全外连接)。
5.什么是事务
事务必须满足4个属性:
- 原子性:即当数据修改时,要么全执行,要么全不执行,即不允许事务部分的完成
- 一致性:一个事务执行前和执行之后,数据库数据必须保持一致性状态,例如银行转账
- 隔离性:多个事务并发执行时,将一个事务内部的操作与事务的操作隔离起来,不被其他正在进行的事务看到。例如,对事务T1和T2,T2要么在T1开始之前就已经结束,要么在T1完成之后再开始执行。
- 持久性:事务完成以后,对数据库中的修改是永久性的。
6.什么是游标?
游标提供了一种对从表中检索出的数据进行操作的灵活手段,它实际上是一种能从包含多条数据记录的结果集中每次提取一条记录的机制。
7.如果数据库日志满了,会出现什么情况
只能执行查询等读操作,不能执行更改等写操作,原因是任何写擦做都要记录日志。
8.什么是视图
在数据库中,存放的只是视图的定义,而不存放视图包含的数据项,这些项目仍然存放在原来的表结构中。
- 简化数据查询语句
- 使用户能从多角度看待同一数据
- 提高数据的安全性
- 提供了一定程度的逻辑独立性
JAVA程序员面试笔试宝典4的更多相关文章
- 《Java程序员面试笔试宝典》终于在万众期待中出版啦~
<Java程序员面试笔试宝典>终于在万众期待中出版啦~它是知名畅销书<程序员面试笔试宝典>的姊妹篇,而定价只要48元哦,恰逢求职季节,希望本书的出版能够让更多的求职者能够走进理 ...
- 《Java程序员面试笔试宝典》之为什么需要public static void main(String[] args)这个方法
public staticvoid main(String[] args)为Java程序的入口方法,JVM在运行程序的时候,会首先查找main方法.其中,public是权限修饰符,表明任何类或对象都可 ...
- 《Java程序员面试笔试宝典》之Java程序初始化的顺序是怎样的
在Java语言中,当实例化对象时,对象所在类的所有成员变量首先要进行初始化,只有当所有类成员完成初始化后,才会调用对象所在类的构造函数创建对象. Java程序的初始化一般遵循以下三个原则(以下三原则优 ...
- JAVA程序员面试笔试宝典1
1.为什么Java中有些接口没有任何方法? 这些没有任何方法声明的接口又被称为标识接口,标识接口对于实现它的类没有任何语义上的要求,它仅仅充当一个标识的作用,用来表明它的类属于一个特定的类型. 2.j ...
- 《Java程序员面试笔试宝典》之Static关键字有哪些作用
static关键字主要有两种作用:第一,只想为某特定数据类型或对象分配单一的存储空间,而与创建对象的个数无关.第二,希望某个方法或属性与类而不是对象关联在一起,也就是说,在不创建对象的情况下就可以通过 ...
- 《Java程序员面试笔试宝典》之字符串创建与存储的机制是什么
在Java语言中,字符串起着非常重要的作用,字符串的声明与初始化主要有如下两种情况: (1) 对于String s1=new String("abc")语句与Strin ...
- 《Java程序员面试笔试宝典》之Java与C/C++有什么异同
Java与C++都是面向对象语言,都使用了面向对象思想(例如封装.继承.多态等),由于面向对象有许多非常好的特性(继承.组合等),使得二者都有很好的可重用性. 需要注意的是,二者并非完全一样,下面主要 ...
- 《Java程序员面试笔试宝典》之为什么Java中有些接口没有任何方法
由于Java不支持多重继承,即一个类只能有一个父类,为了克服单继承的缺点,Java语言引入了接口这一概念.接口是抽象方法定义的集合(接口中也可以定义一些常量值),是一种特殊的抽象类.接口中只包含方法的 ...
- 《Java程序员面试笔试宝典》之组合与继承有什么区别
组合和继承是面向对象中两种代码复用的方式.组合是指在新类里面创建原有类的对象,重复利用已有类的功能.继承是面向对象的主要特性之一,它允许设计人员根据其它类的实现来定义一个类的实现.组合和继承都允许在新 ...
- 《Java程序员面试笔试宝典》之switch使用时有哪些注意事项
switch语句用于多分支选择,在使用switch(expr)的时候,expr只能是一个枚举常量(内部也是由整型或字符类型实现)或一个整数表达式,其中整数表达式可以是基本类型int或其对应的包装类In ...
随机推荐
- Java 编码 UTF-8
近期在处理文件时发现了相同类型的文件使用的编码可能是不同的.所以想将文件的格式统一一下(由于UTF-8的通用性,决定往UTF-8统一),遇见的第一个问题是:怎样查看现有文件的编码方式. 文件编码问题集 ...
- MongoDB升级导致启动失败
起因 最近项目使用MongoDB,但是作为一个技术菜鸟,NoSQL数据库我还真不会用,于是我就在自己的阿里云服务器上安装了一个MongoDB4.0.9. 现象 但是当我使用yum -y update升 ...
- Python爬虫开发【第1篇】【正则表达式】
非结构化数据:HTML(正则表达式.XPath.CSS选择器) 结构化数据:JSON文件(JSON Path.转化为Python类型进行操作) XML文件(转化成Python类型.XPath.CSS选 ...
- 常用Lunix命令
计算机 1.硬件系统 输入单元.输出单元.算术逻辑单元.控制单元.记忆单元 中央处理单元:CPU(算术逻辑单元.控制单元) 电源.主板.CPU.内存(RAM).硬盘.(声卡.显卡.网卡)(集成在主板上 ...
- Java String常见问题
一.怎样推断两个String是否相等??使用"=="还是使用"equals()"? 对String来说."=="是用来推断两个字符串(对象) ...
- ios33--线程安全
// // ViewController.m // 05-掌握-线程安全 // // 多线程下载文件:每个线程下的部分可能是交错的,到时候就拼接不了.除非每个线程下载的不是交错的,而是从头到尾依次分开 ...
- SVN导出指定版本差异文件 ***
当一个项目进入运营维护阶段以后,不会再频繁地更新全部源文件到服务器,这个时间的修改大多是局部的,因此更新文件只需更新修改过的文件,其他 没有修改过的文件就没有必要上载到服务器.但一个稍微上规模的项目文 ...
- bzoj1085骑士精神(搜索)
1085: [SCOI2005]骑士精神 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 1893 Solved: 1051 Description ...
- uva 11292 The Dragon of Loowater(贪心)
题目大意: 你的王国里有一条n个头的恶龙,你希望雇一些骑士把它杀死(即砍掉所有头).村里有m个骑士可以雇佣,一个能力值为x的骑士可以砍掉恶龙一个直径不超过x的头,且需要支付x个金币.如何雇佣骑士才 ...
- c++ strcmp函数
用法:加头文件 #include <string.h> 功能:比较字符串s1和s2. 一般形式:strcmp(字符串1,字符串2) 返回值: 当s1<s2时,返回值<0 当s1 ...