ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:29.53KB ,
资源ID:7355331      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7355331.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(答辩可能会问的.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

答辩可能会问的.docx

1、答辩可能会问的什么是Servlet?是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。最早支持Servlet标准的是JavaSoft的Java Web Server,此后,一些其它的基于Java的Web服务器开始支持标准的Servl

2、et。Servlet是JSP技术的基础,JSP本身是预编译成Servlet,然后运行,而开发大型Web应用程序需要Java Servlet和JSP来完成。 Servlet和传统的CGI程序和ISAPI,NSAPI等Web应用程序开发工具是一样的,在使用Java Servlet以后,用户不必使用低效的CGI方式,不必仅在固定的Web服务器平台上使用运行API方式动态生成网页。许多Web服务器支持servlet,即使不直接支持servlet的Web服务器也可以通过其他应用程序服务器和模块来支持servlet。 JSP(JavaServer Pages)是一种基于Java的脚本技术。在JSP的许多优

3、点之中,其中之一就是可以将HTML代码从Web页面的业务逻辑中分离出来。使用JSP访问可重用的组件,如servlet,JavaBeans和基于Java的Web应用程序。 JSP还支持将Java代码直接嵌入到Web页面中。有两种访问JSP文件的方法:浏览器发送一个JSP文件请求并将其发送到servlet请求。 J2EE?J2EE技术是应用于JAVA网络的技术,在企业级开发中广泛应用。J2EE技术的组成是一套建立在J2SE平台上的规范(shannin,2001)的以及应用编程接口。J2EE技术还拥有Sun的公司免费的开发工具包,叫做J2EE软件开发工具包(SDK)。J2EE这种技术的组合是一种Ja

4、va网络应用技术,包括远程方法调用(RMI),Java消息服务(JMS),JavaMail等通信服务,JDBC,Java命名和目录接口(Java Naming和目录接口(JNDI),Java 连接器架构(JCA),Java事务API / Java事务服务(JTA / JTS),XML处理API和Servlet,Java服务器页面(JSP),企业级JavaBean(EJB)和其他组件技术任何J2EE实现必须 在其特定容器中实现。Hibernate工作原理!1.配置好hibernate的配置文件和与类对应的配置文件后,启动服务器2.服务器通过实例化Configeration对象,读取hiberna

5、te.cfg.xml文件的配置内容,并根据相关的需求建好表或者和表建立好映射关系3.通过实例化的Configeration对象就可以建立sessionFactory实例,进一步,通过sessionFactory实例可以创建session对象4.得到session之后,便可以对数据库进行增删改查操作了,除了比较复杂的全文搜索外,简单的操作都可以通过hibernate封装好的session内置方法来实现5.此外,还可以通过事物管理,表的关联来实现较为复杂的数据库设计优点:hibernate相当于java类和数据库表之间沟通的桥梁,通过这座桥我们就可以做很多事情了1.Hibernate是如何连接数据

6、库主要是通过hibernate.cfg.xml配置文件中的配置在这个文件中定义了数据库进行连接所需要的信息,包括JDBC驱动、用户名、密码、数据库等,configuration类借助dom4j的XML解析器解析设置环境,然后使用这些环境属性来生成 SessionFactory。这样这个sessionFactory生成的session就能成功获得数据库的连接。2.Hibernate是如何进行数据库写操作对数据库的写操作包括保存、更新和删除,当保存一个POJO持久对象时,触发Hibernate的保存事件监听器进行处理。Hibernate通过映射文件获得对象对应数据库表名以及属性所对应的表中的列名,

7、然后通过反射机制持久化对象(实体对象)的各个属性,最终组织成向数据库插入新对象的SQL insert语句。调用了session.save方法后,这个对象会标识成持久化状态存放在session中,对于Hibernate来说它就是一个持久化了的对象,但这个时候Hibernate还不会真正的执行insert语句,当进行session的刷新同部或事务提交时,Hibernate会把session缓存中的所有SQL语句一起执行,对于更新、删除操作也是采用类似的机制。然后,提交事务并事务提交成功后,这些写操作就会被永久地保存进数据库中,所以,使用session对数据库操作还依赖于Hibernate事务的处理

8、。如果设置了二级缓存,那么这些操作会被同步到二级缓存中,Hibernate对数据库最终操作也是依赖于底层JDBC对数据库进行。3.Hibernate如何从数据库中载入对象当使用session.load载入对象时,可以设置是否采用延迟加载,如果延迟加载,那么load返回的对象实际是CGLIB或javassist返回的代理类,它的非主键属性都是空的,这对于对象集合属性很有效。 Hibernate以此来节约内存,当真正需要读取对象时,Hibernate会先尝试从session缓存中读取,如果session缓存中数据不存在或者是脏数据并且配置了二级缓存,Hibernate尝试从二级缓存中检索数据,否则

9、Hibernate会根据对象类型,主键等信息组织select语句到数据中读取,再把select结果组织成对象返回。4.Hibernate如何进行数据库查询操作Hibernate提供SQL HQL Criteria查询方式。HQL是其中运用最广泛的查询方式。用户使用session.createQuery方法以一条HQL语句为参数创建 Query查询对象后,Hibernate会使用Anltr库把HQL语句解析成JDBC可以识别的SQL语句,如果设置了查询缓存,那么执行 Query.list时,Hibernate会先对查询缓存进行查询,如果查询缓存不存在,再使用select语句查询数据库。umrUM

10、L-Unified Model Language统一建模语言,又称标准建模语言。是用来对软件密集系统进行可视化建模的一种语言。UML的定义包括UML语义和UML表示法两个元素。UML是在开发阶段,说明、可视化、构建和书写一个面向对象软件密集系统的制品的开放方法。最佳的应用是工程实践,对大规模,复杂系统进行建模方面,特别是在软件架构层次,已经被验证有效。统一建模语言(UML)是一种模型化语言。模型大多以图表的方式表现出来。一份典型的建模图表通常包含几个块或框,连接线和作为模型附加信息之2用的文本。这些虽简单却非常重要,在UML规则中相互联系和扩展。类图(Class Diagram): 类图是面向

11、对象系统建模中最常用和最重要的图,是定义其它图的基础。类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。你是如何实现人气商品模块的?每个物品信息都有一个message.top_value,再点击物品信息链接后 MessageDetailAction会获取message id ,对当前的message.top_value +1,后再返回。关键字搜索查询将关键字提交到searchConditionForm系统搜索时也用ActionForm(searchConditionForm)接收搜索表单,在Action中用Dao对象操作ActionFrom返回搜索结果。用户登录校验

12、除了基本的密码校验之外,LoginAction 对用户的权限进行判断,如果数据库中当前用户role为0,则为管理员。if(null!=user) session.removeAttribute(user); session.setAttribute(user, user); if(user.getRole()=0) session.setAttribute(role, admin); 实名制提前在数据库中存储学生学号,每个学生注册需要一对一的学号,每人只能注册一个账号,在RegisterAction中有checkUserAndStu方法对注册信息进行校验,出现用户名存在、学号不存在、该学号已经

13、注册这三种情况则注册失败。if(userList.size()!=0 ) System.out.println(用户名已经存在!); return 1; /user hase been exist!; Student stu = sDao.findById(form.getStu_id(); if(stu=null) System.out.println(没有此学号的学生); return 2; userList = uDao.findByStu_id(stu_id); if(userList.size()!=0 ) System.out.println(该学号已经注册); return 3;

14、 else return 0;注册成功进入下一个页面,注册失败返回到注册页面。1. C/S架构与B/S架构的区别硬件环境不同、对安全要求不同、对程序架构不同、软件重用不同、系统维护不同、处理问题不同、用户接口不同。C/S又称Client/Server或客户/服务器模式。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或 SQL Server。客户端需要安装专用的客户端软件。 B/S是Brower/Server的缩写,客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explor

15、er,服务器安装Oracle、Sybase、Informix或 SQL Server等数据库。浏览器通过Web Server 同数据库进行数据交互。 C/S的优点是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。缺点主要有以下几个: 只适用于局域网。而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。 客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有

16、很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。 对客户端的操作系统一般也会有限制。可能适应于Win98, 但不能用于win2000或Windows XP。或者不适用于微软新的操作系统等等,更不用说Linux、Unix等。 B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一

17、个账号进入系统。2. SSH框架集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理struts和hibernate。具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO(Data Access Objects)接口,并给出Hibernate的DAO实现,采用Hib

18、ernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring做管理,管理struts和hibernate。统的基本业务流程是: 在表示层中,首先通过JSP页面实现交互界面,负责接收请求(Request)和传送响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。在业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升

19、系统性能和保证数据的完整性。而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。采用上述开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。3. MVCMVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:1 Model(模型)表示应用程序核心(比如数据库

20、记录列表)。 View(视图)显示数据(数据库记录)。 Controller(控制器)处理输入(写入数据库记录)。MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。MVC 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。例如,您可以在不依赖业务逻

21、辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。4. JavaScript技术javaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。31. 是一种解释性脚本语言(代码不进行预编译)。42. 主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。43. 可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。44.

22、跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如Windows、Linux、Mac、Android、iOS等)。Javascript脚本语言同其他语言一样,有它自身的基本数据类型,表达式和算术运算符及程序的基本程序框架。Javascript提供了四种基本的数据类型和两种特殊数据类型用来处理数据和文字。而变量提供存放信息的地方,表达式则可以完成较复杂的信息处理。55. JSP和JS的区别6. 名字:JS:JavaScriptJSP:Java Server Pages7. 执行过程:JSP先翻译,翻译成Servlet执行如: test.jsp 要变成 test_jsp.java 然后

23、编译成 test_jsp.class而 test_jsp.java 本身就是一个servlet.所以 jsp只是servlet的一个变种,方便书写html内容才出现的。servlet是根本,所有jsp能做的,servlet全能做。JS:是一种基于对象的客户端脚本语言。目的是解决服务器端语言。如:Perl,遗留的速度问题,为客户提供更流畅的浏览效果。JS可以直接嵌入到html代码中进行解析执行,非常简单易学,可以产生很多动态的效果。8. 形象比较:JS是在客户端执行的,需要浏览器支持JavaScript。JSP是在服务器端执行的,需要服务器上部署支持Servlet的服务器程序。JS代码能够直接从

24、服务器上download得到,对外是可见的,jsp(和翻译后的Servlet代码)是对外不可见的。9. JS和JSP相比较:虽然JS可以再客户端动态生成HTML,但是很难与服务器交互,因此不能提供复杂的服务。如:访问数据库和图像处理等等。JSP在HTML中用里面实现。JS在HTML中用实现。10. 执行过程:JSP:1、JSP文件在用户第一次请求时,会被编译成Servlet,然后由这个Servlet处理用户的请求,所以Servlet可以看成是运行时的Servlet。2、JSP容器也就是Servlet容器管理JSP页面生命周期分为两个阶段,即转换阶段和执行阶段。3、转换阶段:当有一个对JSP页面

25、的请求到来时,JSP容器检查JSP页面的语法是否正确,将JSP页面转换为Servlet源文件,然后调用javac命令编译Servlet源文件生成字节码文件。4、执行阶段:Servlet容器加载转换后的Servlet类。JS:JavaScript 通常是运行在前台,即运行于用户浏览器的,通常不需要服务器的后台支持(AJAX交互例外),混合在HTML中的JavaScript脚本程序直接被浏览器解释执行,以提高页面的美观性和UI操作响应速度为基本目标。(运行位置的不同)11. 运行位置不同:JSP运行在后台服务器上,混合在HTML中的java程序段用于控制HTML的动态生成,并且通常负责调用后台数据

26、库中的数据,形成能够根据使用情况的变化的,具有丰富数据交互效果的页面。5. 需求分析阶段的主要任务1.问题识别 (1) 功能需求:明确所开发的软件必须具备什么样的功能。 (2) 性能需求:明确待开发的软件的技术性能指标。 (3) 环境需求:明确软件运行时所需要的软、硬件的要求。 (4) 用户界面需求:明确人机交互方式、输入输出数据格式。 2. 分析与综合,导出软件的逻辑模型 分析人员对获取的需求,进行一致性的分析检查,在分析、综合中逐步细化软件功能,划分成各个子功能。用图文结合的形式,建立起新系统的逻辑模型。 3. 编写文档 (1) 编写“需求规格说明书”,把双方共同的理解与分析结果用规范的方

27、式描述出来,作为今后各项工作的基础。 (2) 编写初步用户使用手册,着重反映被开发软件的用户功能界面和用户使用的具体要求,用户手册能强制分析人员从用户使用的观点考虑软件。 (3) 编写确认测试计划,作为今后确认和验收的依据。 (4) 修改完善软件开发计划。在需求分析阶段对待开发的系统有了更进一步的了解,所以能更准确地估计开发成本、进度及资源要求,因此对原计划要进行适当修正。6. 数据库的设计步骤7. 1、需求分析:了解用户的数据需求、处理需求、安全性及完整性要求;2、概念设计:通过数据抽象,设计系统概念模型,一般为E-R模型;3、逻辑结构设计:设计系统的模式和外模式,对于关系模型主要是基本表和

28、视图;4、物理结构设计:设计数据的存储结构和存取方法,如索引的设计;5、系统实施:组织数据入库、编制应用程序、试运行;6、运行维护:系统投入运行,长期的维护工作。8. MyEclipse和Eclipse的区别Eclipse与MyEclipse的联系和区别Eclipse 是一个IDE(Integrated Developing Environment),而这个IDE是允许安装第三方开发的插件来使自身的功能得到扩展和增强的,而Myeclipse就是其中的一种有名的插件集之一,主要是为J2EE开发;MyEclipse将开发者常用到的一些有用的插件都集合起来,提供一种高级编程环境,可以比较轻松完成st

29、ruts,Hibernate,Spring布局,编写strtus-config.xml;但它是收费的,没Eclipse MyEclipse是没用的。lomboz也是类似MyEclipse的插件,不过是免费的,当然功能没有MyEclipse好。Eclipse是一个开放源代码,基于Java的可扩张的开发平台,多数人都是将Eclipse作为Java的集成开发环境使用,虽然Eclipse使用Java开发:但Eclipse不仅仅局限于Java开发,还可用于其它语言的开发,如C/C+;Eclipse是一个框架和一组服务,它通过各种插件来构建开发环境,因此只要提供支持C/C+ 插件便能进行相应语言的开发Ec

30、lipse最早是由IBM开发的,后来将Eclipse作为一个开发源代码的项目,献给了开源组织Eclipse.org但仍由IBM的子公司(主要从事Eclipse开发的人员)继续Eclipse的开发.(1)MyEclipse 把所有的插件都配好了,直接可以用,比例写jsp,struts,spring之类的,当然包也相当大, 机子不好的话开发程序比较慢, Eclipse 什么都没有,要开发什么就自己配什么插件而已。(2)严格的说,MyEclipse 只是 Eclipse 体系中的一种插件,只是由于 MyEclipse 经常和 Eclipse 一起安装使用,所以通常也将安装了MyEclipse 插件后

31、的Eclipse叫做MyEclipse,二者可以单独安装,即先装Eclipse之后,再以插件方式安装MyEclipse。另一种方法则是在同时安装二者,即安装MyEclipse,时已经同时安装了Eclipse(他们已经整合在一起)。MyEclipse为Eclipse提供了一个大量私有和开源的Java工具的集合,这解决了各种开源工具的不一致和缺点。NitroX是一个繁杂而强大的加速Java Web应用开发的工具,还包含了一个强大且能够编译所有JSP和Struts Web应用的工具AppXRay。这些工具解析Java和XML配置文件.MyEclipse的实际价值来自包含的发布包中的大量的工具。如CCS/JS/HTML/XML的编辑器,帮助创建EJB和Struts项目的向导并产生项目的所有主要的组件如action/session bean/form等。还包含编辑Hib

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1