备忘

1.数据库中内连接与外连接的区别?

nner join  on :对于左表的每一条记录和右表作乘积,如果满足on条件则加入结果集,最终的记录数>=0

left    join  on :对于左表的每一条记录和右表作乘积,如果不存在满足on条件的记录,则添加一条记录(需要返回的右表列以null表示),最终的记录数>=左表的记录数
right  join on : 对于右表的每一条记录和左表作乘积,如果不存在满足on条件的记录,则添加一条记录(需要返回的左表列以null表示),
最终的记录数>=右表的记录数


2.为什么要使用Spring

个人的感受是使用Spring第一是使用它的IOC功能,在解耦上达到了配置级别。第二是使用它对数据库访问事务相关的封装。第三就是各种其他组件与Spring的融合,在Spring中更加方便快捷的继承其他一些组件。

个人觉得:spring的使用是我们对ejb的另一个选择,由于ejb太全,我们一般项目不需要使用到ejb中的许多特性,所以我们选择了一些轻量框架,spring的一个很大的好处就是当我们需要该项功能的时候,我才配置该项功能,不需要的时候就不必理会。但是个人感觉,当项目庞大到的确需要分布式部署的时候,还是使用ejb更有优势。还有就是spring对其他的一些优秀框架的整合,也使得spring脱颖而出。


3.hashMap是如何实现的?

hashmap中有一个饱和因子的变量,默认上是0.75,实际上也是通常情况下不会产生hash冲突的最佳设置(当然凡事也有例外)。
一般情况下map的size>数组大小*饱和因子时,会做一个扩容的操作,扩容一般为大于原容量的最小的2的n次方,例如:原容量为23,扩容后为32即2的5次方。
这个扩容会重做整个散列数组+链表,代价很大,所以大牛们都建议使用hashmap时最好指定需要的容量大小。
一般需要使用大小为N,new HashMap时最好指定(N/饱和因子)的容量,或者指定大于N的最小的2的幂。


4.你觉得Spring有什么缺点吗

开发效率。Spring这种通过XML配置的方式,很容易配置错误,影响开发效率。当然有些配置可以使用Anotation配置,但是不能完全替代XML,比如包扫描,创建多个实例都需要通过XML来配置。Spring的这种设计是一种通过XML来编程的方式。

测试效率。配置多的话,容器启动时间比较长,影响测试效率。所有有些测试,我们尽量都不启动Spring容器。

有一定的上手成本。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值