面试移动游戏基地

最近一直打算重新换家公司,因为工作挺忙,也没有来得及刷题,就是接到了中移动的游戏的面试,下面是几个问题,有的简单,有的难,纯粹是分享一下,下次面试的时候,同样的问题,也心里有低点儿。
1、webservice如何保证通信的数据完整性。 老实说,这个问题,我没有考虑过,只记得以前学习webservice的时候,看过好像是jdk底层,已经是保证了webservice的信息完整,叫CRC的,希望知道的朋友,能够在下面回复下,谢谢。 2、spring Aop集成的类是哪个? Advice ,我回答的就是这一个,同样知道的大神说明一下。 3、poi大数据量的处理速度,如何提升? 利用POI我最多只到如过四五万条的,所以对于十万条以上的数据没有验证过,也不太清楚具体如何完成的,说了一下,我在处理小数据量时候的方法:采用了批量提交的方法,先将数据保存到集合,最后再100个子批次提交,速度快了近10倍,当然测试用数据是5W 条左右,更大数据量按理说应该也是可以的。 4、linux服务下,修改日期时间的命令。 老实说,这个真的没有用过,所以也没有关注过,当时并没有回答出来,还是百度出来的: 修改日期:  时间设定成2009年5月10日的命令如下:  #date -s 05/10/2009  修改时间:  将系统时间设定成上午10点18分0秒的命令如下。  #date -s 10:18:00  5、spring的属性注入和构造器注入的优劣。 这个问题,也没有思考过,平时就是使用了一下,简单的说了一下我的理解,下面是给出的spring的文档说明: 属性注入的优势 1. 对于习惯了传统JavaBean开发的程序员而言,通过setter方法设定依赖关系显得更加直 观,更加自然。 2. 如果依赖关系(或继承关系)较为复杂,那么Type3模式的构造函数也会相当庞大(我们需 要在构造函数中设定所有依赖关系),此时Type2模式往往更为简洁。 3. 对于某些第三方类库而言,可能要求我们的组件必须提供一个默认的构造函数(如Struts 中的Action),此时Type3类型的依赖注入机制就体现出其局限性,难以完成我们期望的功 能。 构造器注入的优势: 1. “在构造期即创建一个完整、合法的对象”,对于这条Java设计原则,Type3无疑是最好的 响应者。 2. 避免了繁琐的setter方法的编写,所有依赖关系均在构造函数中设定,依赖关系集中呈现, 更加易读。 3. 由于没有setter方法,依赖关系在构造时由容器一次性设定,因此组件在被创建之后即处于 相对“不变”的稳定状态,无需担心上层代码在调用过程中执行setter方法对组件依赖关系 产生破坏,特别是对于Singleton模式的组件而言,这可能对整个系统产生重大的影响。 4. 同样,由于关联关系仅在构造函数中表达,只有组件创建者需要关心组件内部的依赖关系。 对调用者而言,组件中的依赖关系处于黑盒之中。对上层屏蔽不必要的信息,也为系统的 层次清晰性提供了保证。 5. 通过构造子注入,意味着我们可以在构造函数中决定依赖关系的注入顺序,对于一个大量 依赖外部服务的组件而言,依赖关系的获得顺序可能非常重要,比如某个依赖关系注入的 先决条件是组件的DataSource及相关资源已经被设定。 6、Set和List的区别 List接口  List是有序的Collection,使用此接口能够精确的控制每个元素插入的位置。用户能够使用索引(元素在List中的位置,类似于数组下标)来访问List中的元素,这类似于Java的数组。和下面要提到的Set不同,List允许有相同的元素。 Set接口  Set是一种不包含重复的元素的Collection,即任意的两个元素e1和e2都有e1.equals(e2)=false,Set最多有一个null元素。  很明显,Set的构造函数有一个约束条件,传入的Collection参数不能包含重复的元素 List和Set都是接口。他们各自有自己的实现类,有无顺序的实现类,也有有顺序的实现类。最大的不同就是List是可以重复的。而Set是不能重复的。List适合经常追加数据,插入,删除数据。但随即取数效率比较低。Set适合经常地随即储存,插入,删除。但是在遍历时效率比较低。  list,set都是可以使用collections.sort()排序的 7、spring集成struts的区别

 

Struts只是一个MVC框架(Framework),用于快速开发Java Web应用。Struts实现的重点在C(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V(View)提供了一系列定制标签(Custom Tag)。但Struts几乎没有涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。

 
 
Spring是一个轻型容器(light-weight container),其核心是Bean工厂(Bean Factory),用以构造我们所需要的M(Model)。在此基础之上,Spring提供了AOP(Aspect-Oriented Programming, 面向层面的编程)的实现,用它来提供非管理环境下申明方式的事务、安全等服务;对Bean工厂的扩展ApplicationContext更加方便我们实现J2EE的应用;DAO/ORM的实现方便我们进行数据库的开发;Web MVC和Spring Web提供了Java Web应用的框架或与其他流行的Web框架进行集成。J2EE的应用;DAO/ORM的实现方便我们进行数据库的开发;Web MVC和Spring Web提供了Java Web应用的框架或与其他流行的Web框架进行集成。

 

 

 

 

 

 

  

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值