嗐,反正我就一直投一直参加笔试面试什么的,但是基本都没过笔试,就把每次笔试当作知识点的复习了。自己真的基础差,还放弃了这个专业一年,但是一直告诉自己不要怕,要加油啊。

广发银行的笔试题目也分了好几种类型,有单选有编程(?),有基础知识点也有代码阅读,其实过了一段时间了,又有些忘记了,只是当时记录了一些选择题的知识点,也没有马上处理,现在整理一下吧。


目录

 

1、&符号的含义

2、SQL注入攻击以及解决方式

3、数据库四大特性(出的题目较多)

4、SetTimeout()方法

5、数组遍历

6、死锁处理


1、&符号的含义

如a和a-1两个值进行按位与运算。如a=10,则a&(a-1)=10&9=1010 & 1001=1000=8。一般用来计数。

 

2、SQL注入攻击以及解决方式

用户可以提交一段数据库查询代码作为输入,传递到服务器解析并执行的一种攻击手法,就是所谓的SQL Injection,即SQL注入。使用该手段,用户可以不输入密码或输入错误密码,即可登录账号,设置用户权限是无法解决问题的(这不是用户权限层面的问题)。

解决方式:

  1. 严格检查输入变量的类型和格式;
  2. 过滤和转义特殊字符;
  3. 利用mysql的预编译机制;
  4. 为特定的表设置特定的权限,如:某段程序对某表只需具备select权限即可;等。

 

3、数据库四大特性(出的题目较多)

原子性(Atomicity):原子性指的指的就是这个操作,要么全部成功,要么全部失败回滚。不存在其他的情况。

一致性(Consistency):一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。举个例子。就是A和B的钱是1000元,A给B100元,无论最后双方转了多少次,总的钱一定是1000元。

隔离性(Isolation):隔离性是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个用户开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。

持久性(Durability):持久性是指一个事务一旦被提交了,那么对数据库中的数据的改变就是永久性的,即便是在数据库系统遇到故障的情况下也不会丢失提交事务的操作。

(有个题目直接问,数据库事务的特性ACID中的C是指?我当时满脑子问号,真没记过单词)

 

4、SetTimeout()方法

setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。如,setTimeout(alert("Hello!"), 3000);作用为3 秒(3000 毫秒)后弹出 "Hello" 。要与setInterval()进行区分,setInterval用于从载入后,每隔指定的时间就执行一次表达式。

 

5、数组遍历

目前所学编程语言数组下标都是从0开始的,如C++、Java等都是,其中python数组下标也是从0开始,但可以使用负数遍历,表示从后往前,JavaScript也是从0开始!(没学过JavaScript当时憨的一匹以为是从1开始)

 

6、死锁处理

死锁预防机制中,静态资源分配可预防死锁,因为资源静态分配策略要求每个过程在开始执行前申请所需的全部资源,仅在系统为之分配了所需的全部资源后,该进程才开始执行。  银行家算法是死锁避免的算法,采用的是动态资源分配,分配前先检查。