最近面试题整理(持续更新)
最近面试题整理(持续更新)
错对对 发表于6个月前
最近面试题整理(持续更新)
  • 发表于 6个月前
  • 阅读 2
  • 收藏 0
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

1、string 与stringbuffer 区别
执行速度:stringbuilder>stringbuffer>string
string :字符串常量
stringbuffer stringbuilder:字符串变量
详情:http://www.cnblogs.com/A_ming/archive/2010/04/13/1711395.html

2、MySQL与Oracle的区别
MySQL开源免费Oracle收费
Oracle支持大并发,大访问量
安装所用的空间差别也是很大的

3、外部服务接口加密
http://blog.csdn.net/billfanggs/article/details/51578660

4、@Autowired与@Resource的区别
@Autowired默认按类型装配(这个注解是属业spring的),默认情况下必须要求依赖对象必须存在,
如果要允许null 值,可以设置它的required属性为false,
如:@Autowired(required=false) ,
如果我们想使用名称装配可以结合@Qualifier注解进行使用
@Autowired() @Qualifier("baseDao")     
private BaseDao baseDao;

@Resource(这个注解属于J2EE的),默认安照名称进行装配,名称可以通过name属性进行指定, 
如果没有指定name属性,当注解写在字段上时,默认取字段名进行按照名称查找,
如果注解写在setter方法上默认取属性名进行装配。 当找不到与名称匹配的bean时才按照类型进行装配。
但是需要注意的是,如果name属性一旦指定,就只会按照名称进行装配。
我喜欢用 @Resource注解在字段上,
且这个注解是属于J2EE的,减少了与spring的耦合。

5、@SelectProvider
mybatis3中@SelectProvider的;
@SelectProvider是声明在方法基本上的,这个方法定义在Mapper对应的的interface上。
@SelectProvide中type参数指定的Class类,必须要能够通过无参的构造函数来初始化。
@SelectProvide中method参数指定的方法,必须是public的,返回值必须为String,可以为static。
http://www.blogjava.net/dbstar/archive/2011/08/08/355825.html

6、分页查询

MySQL:SELECT * FROM table LIMIT 5,10;  // 检索记录行 6-15

Oracle:
(1)、SELECT * FROM   
(  
SELECT A.*, ROWNUM RN   
FROM (SELECT * FROM TABLE_NAME) A   
)  
WHERE RN BETWEEN 21 AND 40  
(2)、SELECT * FROM   
(  
SELECT A.*, ROWNUM RN   
FROM (SELECT * FROM TABLE_NAME) A   
WHERE ROWNUM <= 40  
)  
WHERE RN >= 21  
绝大多数的情况下,第2个查询的效率比第1个高得多。
这是由于CBO优化模式下,Oracle可以将外层的查询条件推到内层查询中,以提高内层查询的执行效率。
详解:http://blog.csdn.net/fw0124/article/details/42737671

7、ArrayList、LinkedList、Vector的区别
Arraylist和Vector是采用数组方式存储数据,
此数组元素数大于实际存储的数据以便增加插入元素,
都允许直接序号索引元素,
但是插入数据要涉及到数组元素移动等内存操作,
所以插入数据慢,查找有下标,所以查询数据快,
Vector由于使用了synchronized方法-线程安全,
所以性能上比ArrayList要差,
LinkedList使用双向链表实现存储,
按序号索引数据需要进行向前或向后遍历,
但是插入数据时只需要记录本项前后项即可,插入数据较快。

8、MySql 主从热备份工作原理
简单的说:就是主服务器上执行过的sql语句会保存在binLog里面,
别的从服务器把他同步过来,然后重复执行一遍,
那么它们就能一直同步啦。
整体上来说,复制有3个步骤:
作为主服务器的Master,会把自己的每一次改动(每条sql语句)都记录到二进制日志Binarylog中。
作为从服务器Slave, 会用master上的账号登陆到 master上,读取master的Binarylog,写入到自己的中继日志 Relaylog。
然后从服务器自己的sql线程会负责读取这个中继日志,并执行一遍。
资料:http://blog.csdn.net/sanjay_f/article/details/48916171
 

标签: MySql Oracle myba
共有 人打赏支持
粉丝 0
博文 3
码字总数 1859
×
错对对
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: