对日Java面试总结

上传人:第*** 文档编号:121896791 上传时间:2020-02-27 格式:DOC 页数:33 大小:64KB
返回 下载 相关 举报
对日Java面试总结_第1页
第1页 / 共33页
对日Java面试总结_第2页
第2页 / 共33页
对日Java面试总结_第3页
第3页 / 共33页
对日Java面试总结_第4页
第4页 / 共33页
对日Java面试总结_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《对日Java面试总结》由会员分享,可在线阅读,更多相关《对日Java面试总结(33页珍藏版)》请在金锄头文库上搜索。

1、对日项目流程对 日 项 目 的 工 作 流 程一、 在作对日项目之前程序员会拿到相应程序的式样书,程序员将对式样书进行具体的分析。二、 程序员根据式样书的指示写出程序代码。三、 当程序员根据式样书出程序代码时出现问题无法继续进行应马上向上级报告,待上级批准后发出式样错误记录票(简称:QA票),由日本公司修正后返回给程序员继续写程序代码。四、 当程序员完成一本程序代码后并向上级报告由上级进行第一轮的视察。五、 视察结束后又程序员进行单体测试,将程序代码交给上级由上级整和进行整体测试。六、 整体测试结束会交给日本由日本公司测试如有错误,则发回程序错误记录票(简称:bug票),由上级交给程序员进行程

2、序修改,完成后交回给上级进行测试。以上是对日项目的工作手法及流程。对日工作的流程图:程序员发现式样书有错误向上级报告并发出QA票程序员日本公司上级领导上级领导将QA票发给日本公司,由日本公司修正后返回给上级领导程序完成上级领导进行视察上级领导整合进行整体测试视察结束由程序员进行单体测试如有错误由程序员修改并进行单体测试1:介绍一下自己刚做过的项目;2:struts和struts2的工作流程;答:struts工作流程:在web应用启动时就会加载初始化ActionServlet,ActionServlet从struts-config.xml文件中读取配置信息,把它们存放到各种配置对象当Action

3、Servlet接收到一个客户请求时,将执行如下流程.(1)检索和用户请求匹配的ActionMapping实例,如果不存在,就返回请求路径无效信息;(2)如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中;(3)根据配置信息决定是否需要表单验证.如果需要验证,就调用ActionForm的validate()方法;(4)如果ActionForm的validate()方法返回null或返回一个不包含ActionMessage的ActuibErrors对象, 就表示表单验证成功;(5)ActionServlet根据ActionM

4、apping所包含的映射信息决定将请求转发给哪个Action,如果相应的Action实例不存在,就先创建这个实例,然后调用Action的execute()方法;(6)Action的execute()方法返回一个ActionForward对象,ActionServlet在把客户请求转发给ActionForward对象指向的JSP组件;(7)ActionForward对象指向JSP组件生成动态网页,返回给客户;Struts2工作流程:用户发送请求,在struts.xml文件中找到相应的action请求,根据相应的class类,处理相应的请求,然后返回string字符串,在struts.xml文件中

5、配置的result找到该字符串,到相应的页面。3:Ajax异步请求;答:核心是xmlHttpRequest,页面不刷新,直接请求服务器,并返回数据。4:jquery验证:答:用js验证,首先编写好要验证的js代码,在jsp页面引入js验证代码,在需要验证的输入框或选择框中用class=“validate.”写入验证的需求。5:struts2 返回什么类型答:返回string类型,例如”success”,”fail”。6你会什么技术?7介绍自己情况?中文自我介绍。8项目介绍,自己担当模块。9自己担当模块如何实现10项目用到的框架,原理ssi11Hibernate与Ibatis区别1.出身hibe

6、rnate 是当前最流行的o/r mapping框架,它出身于,现在已经成为jboss的一部分了。ibatis 是另外一种优秀的o/r mapping框架,目前属于apache的一个子项目了。2.原理相对hibernate“o/r”而言,ibatis是一种“sql mapping”的orm实现。hibernate 对数据库结构提供了较为完整的封装,hibernate的o/r mapping实现了pojo 和数据库表之间的映射,以及sql 的自动生成和执行。程序员往往只需定义好了pojo 到数据库表的映射关系,即可通过hibernate 提供的方法完成持久层操作。程序员甚至不需要对sql 的熟练

7、掌握, hibernate/ojb 会根据制定的存储逻辑,自动生成对应的sql 并调用jdbc 接口加以执行。而ibatis 的着力点,则在于pojo 与sql之间的映射关系。也就是说,ibatis并不会为程序员在运行期自动生成sql 执行。具体的sql 需要程序员编写,然后通过映射配置文件,将sql所需的参数,以及返回的结果字段映射到指定pojo。3.机制使用ibatis 提供的orm机制,对业务逻辑实现人员而言,面对的是纯粹的java对象。这一层与通过hibernate 实现orm 而言基本一致,而对于具体的数据操作,hibernate会自动生成sql 语句,而ibatis 则要求开发者编

8、写具体的sql 语句。相对hibernate而言,ibatis 以sql开发的工作量和数据库移植性上的让步,为系统设计提供了更大的自由空间。hibernate与ibatis的对比:4.学习成本ibatis非常简单易学,hibernate相对较复杂,门槛较高。5.开源软件二者都是比较优秀的开源产品6.二次开发当系统属于二次开发,无法对数据库结构做到控制和修改,那ibatis的灵活性将比hibernate更适合7.海量数据系统数据处理量巨大,性能要求极为苛刻,这往往意味着我们必须通过经过高度优化的sql语句(或存储过程)才能达到系统性能设计指标。在这种情况下ibatis会有更好的可控性和表现。8.

9、自动化程度ibatis需要手写sql语句,也可以生成一部分,hibernate则基本上可以自动生成,偶尔会写一些hql。同样的需求,ibatis的工作量比 hibernate要大很多。类似的,如果涉及到数据库字段的修改,hibernate修改的地方很少,而ibatis要把那些sql mapping的地方一一修改。9.与数据映射关系ibatis以数据库字段一一对应映射得到的po和hibernte这种对象化映射得到的po是截然不同的,本质区别在于这种po是扁平化的,不像hibernate映射的po是可以表达立体的对象继承,聚合等等关系的,这将会直接影响到你的整个软件系统的设计思路。10.技术支持h

10、ibernate现在已经是主流o/r mapping框架,从文档的丰富性,产品的完善性,版本的开发速度都要强于ibatis12事务如何理解数据库事务是指作为单个逻辑工作单元执行的一系列操作。 设想网上购物的一次交易,其付款过程至少包括以下几步数据库操作: 更新客户所购商品的库存信息 保存客户付款信息-可能包括与银行系统的交互 生成订单并且保存到数据库中 更新用户相关信息,例如购物数量等等 正常的情况下,这些操作将顺利进行,最终交易成功,与交易相关的所有数据库信息也成功地更新。但是,如果在这一系列过程中任何一个环节出了差错,例如在更新商品库存信息时发生异常、该顾客银行帐户存款不足等,都将导致交易

11、失败。一旦交易失败,数据库中所有信息都必须保持交易前的状态不变,比如最后一步更新用户信息时失败而导致交易失败,那么必须保证这笔失败的交易不影响数据库的状态-库存信息没有被更新、用户也没有付款,订单也没有生成。否则,数据库的信息将会一片混乱而不可预测。 数据库事务正是用来保证这种情况下交易的平稳性和可预测性的技术。13对框架的认识14针对自己模块操作,在检索按钮摁下时,页面如何进行。(表单验证提交,验证的几种方式,ssi如何整合到一块的)15项目中properties文件如何处理的16项目框架怎样处理的,(系统已搭建好的,自己模块sourse的dao实现自己配置)17Db是否熟悉18日语式样书翻

12、译一句话。19验证都验证些什么?必填项,长度,类型,符合一定的规则(例如email,网址,电话号码等)20证书问题,考证?三级如何评定。21用日语进行自我介绍22汉译日23你写过单体测试书吗24根据什么进行单体测试的单体测试的目的是发现软件设计人员在设计单体时错误和漏洞,以及开发人员的Bug和漏洞。不同的公司,不同的项目都具有自己的测试规范和要求,并且以文档的形式记录在案,单体测试人员应该严格按照测试规范和要求进行测试。但是,在实际的测试中,即使测试人员拿着具体的测试要求往往好多基本问题仍然没有发现,那么原因何在呢?不是他的测试方法不对,也不是测试时间不充分,而是测试人员不够严谨和仔细。软件测

13、试是一件很辛苦的工作,有些项目会专门配有测试团队,有些可能是因为项目规模不大或者团队人员不足而没有专门的测试人员,开发人员之间相互进行单体测试。这时候可能是相互之间由于个人关系存在私心,导致测试结果不理想不能达到预期的要求,因为大多数软件开发公司都会将测试出来的Bug记录在案,在项目结束时要统计分析,甚至年终时评定年终奖作为重要的指标。因此如果条件允许尽可能建立独立的测试团队,实在没有这样的资源,那么对测试人员必须有严格的要求,至少做到以下几点: 单体测试时测试人员首先要根据测试式样书看逐项检查开发者是否实现;其次要按照开发式样书的要求测试开发人员所有功能和需求是否全部实现;最后要提交测试结果

14、报告书,开发人员修改后再测试。项目管理者要对测试结果进行抽查,如果发现Bug没有测试出来的原因是测试人员不够认真,这时要建立相应的处罚机制,比如说这个Bug不仅要记在开发人员身上,同时也要记在对应的测试人员身上单体测试时需要注意几点:1、建立测试计划2、测试结果文档化 3、测试数据规范化 4、修改及时性。25有一个收费金额的入力框,进行check时,你如何写这个测试case非法字符,入力框的长度,边界值,是否为空,纯数字校验,入力值为最大值,及入力值大于最大值,及大于最大值加1;26在这个项目中,你只写单体测试吗27首先自我介绍28谈谈对对日项目开发的理解29谈谈SSH框架30谈谈hibern

15、ate的理解1. 面向对象设计的软件内部运行过程可以理解成就是在不断创建各种新对象、建立对象之间的关系,调用对象的方法来改变各个对象的状态和对象消亡的过程,不管程序运行的过程和操作怎么样,本质上都是要得到一个结果,程序上一个时刻和下一个时刻的运行结果的差异就表现在内存中的对象状态发生了变化。2.为了在关机和内存空间不够的状况下,保持程序的运行状态,需要将内存中的对象状态保存到持久化设备和从持久化设备中恢复出对象的状态,通常都是保存到关系数据库来保存大量对象信息。从Java程序的运行功能上来讲,保存对象状态的功能相比系统运行的其他功能来说,应该是一个很不起眼的附属功能,java采用jdbc来实现这个功能,这个不起眼的功能却要编写大量的代码,而做的事情仅仅是保存对象和恢复对象,并且那些大量的jdbc代码并没有什么技术含量,基本上是采用一套例行公事的标准代码模板来编写,是一种苦活和重复性的工作。3.通过数据库保存java程序运行时产生的对象和恢复对象,其实就是实现了java对象与关系数据库记录的映射关系,称为ORM(即ObjectRelation Mapping),人们可以通过封装JDBC代码来实现了这种功能,封装出来的产品称之为ORM框架,Hibernate就是其中的一种流行ORM框架。使用Hibernate框架,不用写JDBC代码,仅仅是调

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作范文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号