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 ...
随机推荐
- Linux bash: scp: command not found的问题记录
,总结 scp成功,须要两个server都安装了scp服务才行.
- muduo源代码分析--Reactor模式在muduo中的使用
一. Reactor模式简单介绍 Reactor释义"反应堆",是一种事件驱动机制.和普通函数调用的不同之处在于:应用程序不是主动的调用某个API完毕处理.而是恰恰相反.React ...
- C中多线程开发
1 引言 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期.solaris是这方面的佼佼者.传统的 Unix也支持线程的概念,可是在一个进程(proce ...
- iOS tableview cell 的展开收缩
iOS tableview cell 的展开收缩 #import "ViewController.h" @interface ViewController ()<UITabl ...
- ios跟踪工具introspy使用
1.cydia安装introspy,前提要安装Applist (雷锋源) 2.设置中有introspy-Apps instrospy-Settings选项. 可以选择需要跟踪的app以及跟踪内 ...
- Codeforces Round #320 (Div. 2) [Bayan Thanks-Round] B. Finding Team Member 排序
B. Finding Team Member ...
- [Codeforces 986E] Prince's Problem
[题目链接] https://codeforces.com/contest/986/problem/E [算法] X到Y的路径积 , 可以转化为X到根的路径积乘Y到根的路径积 , 除以LCA到根的路径 ...
- DTV_SI 汇总 & 兼谈LCN
前言 本章主要对数字广播DVB做一个系统的概况的描述,以及一些spc的相关的内容,虽然流程分析的不多,但是做为后续 章节资料的源泉,也是不可或缺的. 一. ATSC和DVB数字电视系统的比较 本文的主 ...
- JSP-Runoob:JSP 结构
ylbtech-JSP-Runoob:JSP 结构 1.返回顶部 1. JSP 结构 网络服务器需要一个 JSP 引擎,也就是一个容器来处理 JSP 页面.容器负责截获对 JSP 页面的请求.本教程使 ...
- 全分布式的Hadoop虚拟机安装
在集群环境下装机.配置.运行的全过程,梳理总结到本文中. 第一部分:环境规划 •用户 hadoop 密码 hadoop •机器 机器名称 IP地址 Master.Hadoop 192.168.1.10 ...