java银行面试_记-应届生一次银行外包java面试

博主分享了自己初次正经的技术面试经历,涉及线程创建方式、Socket在网络协议中的位置、Servlet的单例特性及SQL查询问题。面试中讨论了线程安全、Servlet实例化以及如何用一条SQL获取每门成绩的最高和最低分。虽然自我感觉表现不佳,但收获了宝贵的经验。面试后,外包公司仍提出二次面试邀请,但博主决定拒绝。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

人生第一次正经技术面。。。感觉自己挺蠢的。。。纯涨经验了吧

Q:

1.线程创建的方式?

2.socket在哪一层?osi七层。为什么。

3.servlet是单例还是多例?

4.一张表五条记录,分别有三门不同的成绩,用一条sql语句求出每门成绩最高和最低的和对应的学生姓名。

5.java解析xml的方式?

A:

1.比较简单,继承thread重写Run方法、实现runnable、callable接口

2.传输层和网络层。tcp和ip,也就是让这个ip网络层和tcp/udp传输层能够完美的结合。所以socket是这两层的概括。

数据链路层通过物理网络链路提供数据传输。不同的数据链路层定义了不同的网络和协议特征,其中包括物理编址、网络拓扑结构、错误校验、数据帧序列以及流控。

3.servlet是单例的,严格地说是一个ServletMapping对应一个单例实例(如果一个Servlet被映射了两个URL地址,会生成两个实例)。早期的CGI模式是原型式的,例如同时并发2000次请求一个Servlet,如果不是单例的,内存瞬间要创建2000个对象,同时为了线程安全还得阻塞对方线程,其性能非常之差。

要维护Servlet线程安全有很多办法,通常是使用同步块(或方法)来保护共享数据,其次可以volatile、Lock一些锁机制,还可以使用ThreadLocal来打通安全通道,另外还有原子操作也是用来保护数据安全,有非常多的选择。

4.SELECT "最高分",student.*

FROM student ,(SELECT MAX(score) AS score,subject FROM student GROUP BY subject)b

WHERE student.score = b.score

AND student.subject = b.subject

UNION

SELECT "最低分",student.*

FROM student ,(SELECT MIN(score) AS score,subject FROM student GROUP BY subject)b

WHERE student.score = b.score

AND student.subject = b.subject;

SELECT L.C# As 课程ID,L.score AS 最高分,R.score AS 最低分

FROM SC L ,SC AS R

WHERE L.C# = R.C# and

L.score = (SELECT MAX(IL.score)

FROM SC AS IL,Student AS IM

WHERE L.C# = IL.C# and IM.S#=IL.S#

GROUP BY IL.C#)

AND

R.Score = (SELECT MIN(IR.score)

FROM SC AS IR

WHERE R.C# = IR.C#

GROUP BY IR.C#

);

select c# ,max(score)as 最高分 ,min(score) as 最低分 from dbo.sc group by c#

5.(1)DOM解析(2)SAX解析(3)JDOM解析(4)DOM4J解析 前两种属于基础方法;后面两种是扩展方法,只适用于java平台。

后续,由于是外包感觉招不到人的样子。。面成那样居然下午打电话说还要再面一次。。。直接拒了。因为感觉拿到offer也不会去。还有几个题记不清了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值