中南大学软件学院Java WEB 考点
- 格式:docx
- 大小:706.41 KB
- 文档页数:28
●使用Hibernate框架进行ORM,可大幅度减少开发时手工使用SQL和JDBC的出错。
优点:简单。
缺点:多了查询,慢(但实际对于一个JAVA EE应用而言,hibernate通常的处理流程是:从数据看里加载记录->将信息发送到表现层供用户修改或删除->将所做修改重新保存到数据库。
在这种处理流程下,应用本身就需要两条SQL语句)。
●iBats---半自动化ORM框架提供了基于JDBC之上的一层简单抽象,是一种基于SQL语句映射的低级别ORM方案,使用原生态SQL作为查询语言。
●OGNL是Object Graph Navigation Language,对象图导航语言。
ONGL是一种强大的表达式语言,它通过简单一致的表达式语法来读取和设置Java对象的属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转换等功能。
WEB容器是指一种安装在服务端计算机中的特定软件。
此类软件遵循HTTP 协议,主要功能是负责侦听指定端口,接收客户端的请求并解析,然后将指定的响应页面发送到客户端。
EL表达式EL是一种简单而强大的语言,提供了在JSP脚本元素范围外使用运行时表达式的功能。
Web Services应用程序组件,使用开放协议进行通信,独立的并可自我描述,可通过使用UDDI来发现,可以被其他应用程序使用,XML是其基础。
●Mybatis一个持久数据映射框架,提供了基于JDBC之上的一层简单抽象,是一种基于SQL语句映射的低级别ORM方案,使用原生态SQL作为查询语言,用来完成数据持久化MyBaits基本原理:在XML 文件中定义SQL语句,预留参数占位符;在运行时,占位符被指定的参数值取代,参数可能来自参数映射表、JavaBean属性、或者简单的参数对象。
在执行SQL查询时,结果字段被映射到对象,映射的方式与参数映射一样。
●ORM框架ORM, Object-Relational Mapping, 对象-关系数据库映射框架。
1、web服务器(HTTP服务器):访问静态资源。
应用服务器:为组件提供运行环境,调用业务逻辑,提供服务。
Tomcat:别名cataline,即可做web服务器,也可做servlet服务器2、HTTP:①无状态协议②通过Internet发送请求消息和响应消息③使用端口发送或接收信息,默认80端口。
3*、GET方法:不提交大量数据,无敏感、保密数据时使用1)超级链接访问,默认是GET方法2)form提交,不指定method,默认为GET方法3)form提交,制定method=“GET”,很少用这种方式POST方法:需要提交敏感、保密数据,或数据量较大form提交,指定method=“POST”必考*地址栏访问和a标签访问是Get方式4、一个响应由四个部分组成:状态行、响应头标、空行、响应数据–状态行:状态行由三个标记组成:HTTP版本、响应代码和响应描述。
•HTTP版本:向客户端指明其可理解的最高版本。
•响应代码:3位的数字代码,指出请求的成功或失败,如果失败则指出原因。
•响应描述:为响应代码的可读性解释。
例如:HTTP/1.1 200 OK 请求行:请求方式+空格+协议版本号状态行:协议版本号+状态码+ok等状态描述200(响应成功)302(Move temporarily,我找你借钱给你找别人,或我给你从别人借钱,重定向,暂时性转移)304(Not Modified,客户端已经执行了GET,但文件未变化)307(Temporary Redirect,缓存,请求的资源临时从不同的URI 响应请求)403(Forbidden,没权限,服务器已经理解请求,但是拒绝执行它。
)404(Not Found,访问地址错了,连接错了,路径不对)500(Internal Server Error,服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理,服务器端的代码有问题)5、从web.xml配置404跳转的页面,为提高用户体验,创建404报错页面<error-page><error-code>404</error-code><location>【这里配置404页面page的路径】</location></error-page>6、第一行,修改编码格式,保证中文正常显示<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>添加显示IP地址的代码,目前不理解该代码含义,主要是展示动态的功能您的IP地址:<%=request.getRemoteAddr() %><br>7、本质上,Servlet就是一个Java类,不过这个Java类要遵守一定的规范,即继承HttpServle类(一般只覆盖doGet和doPost方法)8、一个servlet可以配置多个servlet-mapping9、HttpServletRequest接口中获得请求中数据的方法1.获得请求参数的方法●getParameter:通过name获得某请求参数的valuegetParameterValues:通过name获得某请求参数的所有value,一般用于checkbox,或多选select等10、HttpServletResponse中定义了响应重定向的方法sendRedirect(String path)响应重定向是向目标资源重新发送请求,生成新的响应。
java web试题及答案一、单选题1. 下面哪个不是Java Web中的三大组件?A. JSPB. ServletC. JDBCD. EJB答案:C2. 在Java Web中,以下哪个是正确的访问Servlet的URL模式?A. /servlet/MyServletB. /MyServletC. servlet/MyServletD. MyServlet答案:B3. 下面哪个选项不是正确的JSP指令?A. <%@ page contentType="text/html;charset=UTF-8" %>B. <%@ include file="header.jsp" %>C. <%! int i = 0; %>D. <% out.println("Hello, World!"); %>答案:C4. 下面哪个选项不是Java Web中常见的部署描述符文件?A. web.xmlB. context.xmlC. server.xmlD. sun-web.xml答案:C5. 在Java Web开发中,以下哪个选项可以用来从客户端接收数据?A. HttpServletRequestB. HttpServletResponseC. HttpSessionD. ServletContext答案:A二、填空题1. Java Web中的MVC模式中,将业务逻辑封装在模型中,实现对数据的访问、处理和操作,用于实现数据的持久化和访问。
这个模型称为_______。
答案:JavaBean2. Java Web中,JSP是Java Server Pages的简称,它是一种动态网页技术,是通过在HTML中插入Java代码片段来生成动态内容的。
JSP文件的扩展名是_______。
答案:.jsp3. 在Java Web中,使用JDBC进行数据库访问的第一步是加载并注册数据库驱动程序,使用的类是_______。
软考java考点总结
软考JAVA考点总结如下:
1. Java的基础语法和面向对象的概念。
包括类、对象、继承、多态、封装等。
2. Java的标准库和API。
例如,集合框架、泛型、异常处理机制等。
3. Java的异常处理机制。
了解如何抛出异常,如何捕获异常,以及异常的类型和处理方式。
4. 多线程编程。
了解线程的概念,如何创建线程,线程的同步和并发控制等。
5. 网络编程。
了解Java的Socket编程,如何进行网络通信等。
6. 数据库编程。
了解JDBC(Java Database Connectivity)的概念,如何使用Java进行数据库操作等。
7. Java的输入输出流和文件操作。
了解如何使用Java进行文件读写,以及如何处理输入输出流等。
8. Java的安全性机制。
了解Java的安全性机制,包括权限控制、加密解密等。
9. Java的Web开发技术。
了解Java的Web开发框架,如Spring、Hibernate等,以及如何使用这些框架进行Web开发等。
10. Java的性能优化和调试技巧。
了解如何优化Java程序的性能,以及如何进行程序的调试和测试等。
javaweb机试题及答案一、单选题1. 在Java Web开发中,以下哪个不是Servlet的生命周期方法?A. init()B. service()C. destroy()D. start()答案:D2. 下列哪个不是JSP的隐式对象?A. requestB. responseC. sessionD. out答案:B3. 在Java Web中,以下哪个不是HTTP请求方法?A. GETB. POSTC. PUTD. DELETE答案:C二、多选题1. 以下哪些是Java Web开发中常用的会话管理技术?A. CookieB. URL重写C. HttpSessionD. 隐藏表单字段答案:A, B, C, D2. 在Java Web应用中,以下哪些可以作为过滤器(Filter)的用途?A. 日志记录B. 权限检查C. 请求修改D. 响应修改答案:A, B, C, D三、简答题1. 简述Java Web中使用Servlet的步骤。
答案:使用Servlet的步骤通常包括:- 创建一个继承自javax.servlet.http.HttpServlet的类。
- 重写doGet()或doPost()方法来处理客户端的请求。
- 在web.xml中配置Servlet映射。
- 启动Web服务器,访问Servlet。
2. 描述JSP页面的生命周期。
答案:JSP页面的生命周期包括:- 翻译:JSP页面被翻译成Servlet源代码。
- 编译:Servlet源代码被编译成class文件。
- 初始化:Servlet实例化并调用init()方法。
- 服务:调用service()方法来处理请求并生成响应。
- 销毁:调用destroy()方法,然后Servlet实例被垃圾回收。
四、编程题1. 编写一个简单的Servlet,用于返回当前日期和时间。
答案:```javaimport java.io.*;import javax.servlet.*;import javax.servlet.http.*;public class DateTimeServlet extends HttpServlet {protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html");PrintWriter out = response.getWriter();out.println("<html><body>");out.println("<p>当前日期和时间是:" + new java.util.Date() + "</p>");out.println("</body></html>");}}```2. 编写一个JSP页面,用于显示用户提交的表单数据。
一、填空题1.SOA结构中,服务提供者向一个或多个服务注册处发布服务描述2.Web服务的实现以及部署平台的细节与调用该服务的程序/方法无关3.Web服务是一商务过程或是商务过程中的业务/操作/步骤,内部的或/和外部的商务伙伴都可经由网络使用这项web服务以达到某种业务目标4.在xml语言分析方面,之所以存在这么多的不同模型,其原因是:必须权衡考虑计算效率编程的容易性和内存效率5.语法分析是一个过程,它将xml文档的正文分解为小的,可识别的片段/节点6.消息传递层封装机制7.DOM定义了一些API,使得应用程序能够浏览xml文档,并操作它们的内容和结构8.Web服务定义了请求和响应处理器,支点处理器负责调用web服务9.SOAP中间节点是应用程序,它位于SOAP消息从源端到目的端的传输路径中,负责处理部分的SOAP消息,中间节点接收消息然后再转发10.XML的分布式的(SOAP声称是一个“普遍适用的XML分布式计算基础结构的规范”)二、简述题1.简述处理xml的基本体系结构上图显示了处理XML的基本体系结构,它由三个关键层次构成。
图中最左边是XML文档,它是应用程序的工作对象;最右边是应用程序;中间是基础设施层,是操作XML文档的地点。
2.简述语法分析的功能对于能够处理XML文档的应用程序而言,首先它必须能对XML文档进行语法分析(parsing)。
语法分析是一个过程,它将XML文档的正文分解为小的、可识别的片段(节点)。
语法分析器(parser)将文档分解为诸如开始标记、结束标记、属性值对、文本内容块、处理指令、注释等小片段,然后通过明确定义的API,将这些小片段传输给应用程序。
常用的语法分析模型有以下4种:拉出式语法分析压入式语法分析一步式语法分析混合式语法分析3.简述什么是面向对象服务的架构SOAWeb服务技术发展之初,我们注意到了一种模式,每当我们把Web服务技术应用到应用集成问题上时,模式就出现了。
javaweb机试题及答案一、单项选择题(每题2分,共20分)1. 在JavaWeb中,用于将客户端请求映射到Servlet的配置方式是:A. 注解B. XMLC. 注解和XMLD. 以上都不是答案:C2. 下列哪个不是Servlet的生命周期方法?A. init()B. service()C. start()D. destroy()答案:C3. 在JSP中,以下哪个标签用于声明变量?A. <%! %>B. <% %>C. <%= %>D. <%@ %>答案:A4. 下列哪个是JavaWeb中用于处理表单数据的接口?A. HttpServletRequestB. HttpServletResponseC. HttpSessionD. ServletContext答案:A5. 在JavaWeb中,以下哪个不是JSP内置对象?A. requestB. responseC. sessionD. database答案:D6. 以下哪个是用于在JSP页面中包含其他JSP页面的指令?A. <jsp:forward page="other.jsp" />B. <jsp:include page="other.jsp" />C. <%@ include file="other.jsp" %>D. <%@ page import="other.jsp" %>答案:C7. 在JavaWeb中,以下哪个不是JSP动作元素?A. <jsp:useBean>B. <jsp:include>C. <jsp:forward>D. <jsp:include>答案:D8. 下列哪个不是JavaWeb中常用的数据库连接池?A. C3P0B. DBCPC. Apache Commons DBCPD. Tomcat JDBC Connection Pool答案:D9. 在JavaWeb中,以下哪个不是JSTL标签库?A. coreB. fmtC. sqlD. xml答案:C10. 在JavaWeb中,以下哪个不是JSP页面的属性?A. pageEncodingB. contentTypeC. sessionTimeoutD. isErrorPage答案:C二、多项选择题(每题3分,共15分)1. Servlet的生命周期包括以下哪些阶段?A. 初始化B. 请求处理C. 销毁D. 编译答案:ABC2. 在JSP中,以下哪些是脚本元素?A. 表达式B. 脚本片段C. 声明D. 指令答案:ABC3. 在JavaWeb中,以下哪些是用于会话管理的技术?A. CookieB. URL重写C. HttpSessionD. ServletContext答案:ABC4. 在JSP中,以下哪些是JSTL标签库?A. coreB. fmtC. sqlD. taglibs答案:ABC5. 在JavaWeb中,以下哪些是用于异常处理的方法?A. try-catchB. finallyC. do-whileD. throw答案:ABD三、简答题(每题5分,共20分)1. 请简述Servlet的工作原理。
第一章Java Web应用概述目前各种主流Web应用程序开发方案:ASP、、Java Web。
1.ASP即活动服务器页面2.ASP是一种基于脚本的解释性程序,其主流脚本是运行于服务器中的JavaScript或VBScript,程序的运行需要有IIS服务器支持。
由于服务器平台的限制,这种技术主要应用于Windows 平台,不能跨平台开发和部署。
3.ASP是一种半过程、半对象化得语言环境,ASP程序开发的主流思想还是过程化方式。
适合开发一些小型内部管理系统。
也是Microsoft推出的B-S系统开发技术,支持完全的面向对象开发技术。
5.Java Web开发技术的优势:A Java Web开发技术是基于特定标准的,标准的核心是JSP标准和Servlet标准。
B Java Web 技术是构建在开放过程和源码基础上的。
(和.NET技术最大的差别)6.JSP是由HTML标记、JavaScript脚本、Java构成的服务器端脚本、JSP内置标记构成的一种动态网页设计技术。
7.Servlet是Java Web开发中最常用的一种程序形式。
8.JavaBean是Java中的组件对象模型,一个JavaBean就是满足JavaBean规范的一个普通Java 类。
9.Java Filter是Java Web技术对切面编程的支持。
Tomcat安装和配置(P4-6)第二章HTML编程技术Web的三要素:文字、图像、超链接。
HTML语言内容从功能上大体可分为:文本结构及其属性设置、列表建立、超链接、图像和多媒体、表格和表单。
1.JSP技术提供了实现网页逻辑的脚本,但JSP无法独立控制网页在IE浏览器中的显示效果。
2.网页显示效果的控制需要通过HTML、CSS和JavaScript实现。
HTML是控制IE浏览器如何显示的标记语言,CSS则为不同的HTML页面提供样式定义技术,Java Script控制浏览器的动态行为可以为网页增加丰富多彩的动态行为。
Java测试题_1一、选择题1、编译Java源程序文件产生的字节码文件的扩展名为( B )。
A、javaB、classC、htmlD、exe2、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( B )?A、public static void main()B、public static void main(String args[])C、public static int main(String [] arg)D、public void main(String arg[])3、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。
A、static void method( )B、public void method( )C、final void method( )D、abstract void method( )4、下列哪个是合法的Java标识符?(B\C )A、Tree&GlassesB、FirstJavaAppletC、_$theLastOneD、273.55、Java Application源程序的主类是指包含有( A )方法的类。
A、main方法B、toString方法C、init方法D、actionPerfromed方法6、若a的值为3时,下列程序段被执行后,c的值是多少?( C )int c = 1;if ( a>0 )if ( a>3 )c = 2;elsec = 3;elsec = 4;A、1B、2C、3D、47、对于构造方法,下列叙述正确的是(ACD )。
A、构造方法是类的一种特殊方法,它的方法名必须与类名相同。
B、构造方法的返回类型只能是void型。
C、构造方法的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造方法。
javaweb机试题及答案JavaWeb机试题及答案一、选择题1. 在JavaWeb中,以下哪个不是Servlet的生命周期方法?A. init()B. doGet()C. service()D. destroy()答案:C2. 以下哪个不是JSP的指令?A. pageB. includeC. taglibD. forward答案:D二、填空题1. 在JavaWeb中,用于将HTTP请求转发到另一个Servlet或JSP页面的方法是_________。
答案:RequestDispatcher2. 在JSP中,用于声明变量的方法是_________。
答案:<%! %>三、简答题1. 请简述JavaWeb中会话管理的几种方式。
答案:- URL重写- Cookie- HttpSession2. 描述JSP和Servlet的区别。
答案:- JSP主要用于页面展示,可以包含HTML和Java代码。
- Servlet主要用于处理业务逻辑,不直接参与页面展示。
四、编程题1. 编写一个Servlet,实现对用户输入的字符串进行反转。
答案:```javapublic class ReverseStringServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String input = request.getParameter("input");String reversed = newStringBuilder(input).reverse().toString();request.setAttribute("reversed", reversed);request.getRequestDispatcher("/result.jsp").forward(request, response);}}```2. 在JSP页面中,使用EL表达式输出当前日期和时间。
javaweb题库及答案选择题1. 在Java Web开发中,以下哪个不是Servlet的生命周期方法?A. init()B. service()C. doGet()D. destroy()答案:C2. 下列哪个不是Java Web中的会话管理技术?A. CookieB. SessionC. URL重写D. JDBC答案:D3. 在Java Web应用中,以下哪个标签用于将Java代码嵌入到JSP页面中?A. `<%= ... %>`B. `<jsp:forward page="..." />`C. `<jsp:include page="..." />`D. `<%@ ... %>`答案:A4. 在Java Web开发中,以下哪个不是JSP内置对象?A. requestB. responseC. outD. jdbc答案:D5. 在Java Web中,以下哪个不是过滤器(Filter)的作用?A. 日志记录B. 请求修改C. 权限检查D. 数据库连接答案:D6. 在Java Web开发中,以下哪个不是MVC模式中的组件?A. ModelB. ViewC. ControllerD. Service答案:D7. 在Java Web应用中,以下哪个不是JSTL(JavaServer Pages Standard Tag Library)的标签库?A. coreB. fmtC. sqlD. xml答案:C8. 在Java Web开发中,以下哪个不是HTTP请求方法?A. GETB. POSTC. PUTD. DELETE答案:C(注:PUT和DELETE也是HTTP请求方法,但若题目环境限制只考虑GET和POST,则C为错误选项)9. 在Java Web开发中,以下哪个不是Web容器提供的服务?A. Servlet容器B. JSP容器C. 数据库连接池D. 网络通信答案:D10. 在Java Web开发中,以下哪个不是JSP页面的指令?A. `<%@ page ... %>`B. `<%@ include file="..." %>`C. `<%@ taglib ... %>`D. `<%@ forward page="..." %>`答案:D请注意,以上题目和答案仅供参考,具体题目可能会根据不同的考试或课程有所变化。
javaweb考试重点一:名词解释:1.XML:(Extensible Markup Language)即:可扩展标记语言。
它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。
XML是Internet环境中跨平台的,简单的数据存储语言。
2.Internet与intranet:Internet是一个开放的,由位于世界不同地方的众多网络和计算机互联而成,依靠TCP/IP协议实现通信的互联网络。
Intranet是一个企业自己的内部网络,不过这个网络同样采用了基于Internet的技术结和服务工具。
3.JSP和JS:JS(JAVASCRIPT)是一种基于对象和事件驱动的嵌在HTML文档中的脚本语言。
主要用于开发交互式的web页面。
JSP:(Java Server Pages)是由SUN公司倡导,许多公司参与建立的一种动态网页技术标准。
它在HTML代码中插入JSP标记和JAVA程序片段,构成JSP页面。
JSP文件的扩展名为.jsp,JSP为构建动态web界面提供了一种简单快捷的方法。
4.JDBC:(Java database connection)是由sun公司提出的一种访问数据库的技术标准。
它是一种通过Java语言访问数据库的应用程序接口(JDBC API),由一组由Java语言编写的类和接口组成,对于访问一些由结构化查询语言SQL的关系型数据库尤为有效。
5.HTML:(HyperText Markup Language)是用于创建基于web的表示内容的最常用得方法,HTML提供了固定的预定义元素集,用户可以使用它们来标记一个典型通用的web页的组成部分。
6.DNS(Domain name system)域名解析系统:因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
●JDBC是用来执行SQL的Java API,开发人员可以使用这些标准API来迎接和操作数据库,实现数据库应用程序的开发。
JDBC是Java的规范,考虑到规范的适应性,JDBC只提供了最直接的数据库操作规范,在Java.sql包中。
2种主要的JDBC连接方式:ODBC桥驱动技术和JDBC纯驱动模式。
ODBC 驱动程序是由微软设计和开发的一种通用的标准的操作数据库的API,也可以认为是一种数据库系统应用程序的接口规范。
纯驱动技术是一种由各个数据库厂商提供的驱动程序,其通过协议的方式,将应用程序的SQL语句直接发送到数据库的DBMS执行,并返回结果。
JDBC 可做三件事:与数据库建立连接执行SQL 语句、处理结果。
使用JDBC直连DB的缺点:1.在某一时刻连接必须服务于一个用户,以免造成事务冲突。
2.创建连接需要耗费时间。
3.保持连接打开状态的代价很大。
使用数据库连接池的优点:1. 资源重用2.更快的系统响应速度3.统一的连接管理,避免数据库连接泄漏●Servlet是一种独立于平台和协议的服务器端的Java应用程序,可以生成动态的Web页面。
Servlet能干什么:1.根椐请求创建并响应整个HTML Web 页面,根据客户请求的性质而具有动态内容。
2.创建HTML Web 页面的动态部分,并嵌入到现有静态HTML 页面中。
3.使用服务器上的其他资源,如数据库、其他Java程序。
4.处理与多个 Web 客户端的连接,接收来自多个 Web 客户端的输入信息。
生命周期包括加载、实例化、处理客户端请求和移除,该生命周期由javax.servlet.Sercvet接口的init、setvlet、destroy方法实现。
该生命周期由部署Servlet的容器来控制。
●JSP是Servlet来编写服务端代码过于繁琐和复杂,所以将响应页面的动态部分和静态部分分开。
JSP与Servlet的关系:1 JSP是一种建立在Servlet规范提供的功能之上的动态网页技术 2. JSP文件在用户第一次请求时,会被编译成Servlet,然后由这个Servlet处理用户的请求 3.JSP可以看成是运行时的Servlet。
什么是URL,什么是URI,它们都由哪几个部分组成,URL和URI之间有什么关系?答:URL称为统一资源定位符,URL通常由4部分组成:协议名称、页面所在主机的DNS名、可选的端口号和资源的名称。
URI称为统一资源标识符,是以特定语法标识一个资源的字符串。
URI由模式和模式特有的部分组成,它们之间用冒号隔开,一般格式如下:schema:schema—specific-partURI是URL和URN的超集。
动态web文档技术有哪些?服务器端动态文档技术的客户端动态文档技术有何不同?答:动态Web文档技术包括服务器端动态文档技术和客户端动态文档技术,前者包括CGI技术、服务器扩展技术和HTML页面中嵌入脚本技术。
其中HTML页面中嵌入脚本技术包括ASP、PHP和JSP技术。
最流行的客户端动态文档技术是在HTML页面中嵌入JavaScript脚本代码.使用JavaScript可以设计交互式页面。
与服务器端动态文档不同,JavaScript脚本是在客户端执行的。
动态web文档技术有哪些?服务器端动态文档技术的客户端动态文档技术有何不同?答:动态Web文档技术包括服务器端动态文档技术和客户端动态文档技术,前者包括CGI技术、服务器扩展技术和HTML页面中嵌入脚本技术。
其中HTML 页面中嵌入脚本技术包括ASP、PHP和JSP技术。
最流行的客户端动态文档技术是在HTML页面中嵌入JavaScript脚本代码。
使用JavaScript可以设计交互式页面。
与服务器端动态文档不同,JavaScript脚本是在客户端执行的。
什么是MVC设计模式?它有什么优点?答:MVC模式称为模型—视图-控制器模式.该模式将Web应用的组件分为模型、视图和控制器,每种组件完成各自的任务。
优点:将业务逻辑和数据访问从表示层分离出来。
简述实现MVC设计模式的一般步骤答:实现MVC模式的一般步骤:(1)定义JavaBeans表示数据;(2)使用Servlet处理请求;(3)填写JavaBeans对象数据;(4)将结果存储在作用域对象中;(5)将请求转发到JSP页面;(6)最后在JSP页面中从JavaBeans中取出数据.通过哪两种方法可以获得ServletConfig对象?答:使用响应对象(即HttpServletResponse接口)的encodeURL()方法或encodeRedirectURL()方法。
选择1.action中的默认方法是execute()方法2.Struts2配置文件中的result标记的默认类型是:dispatcher3.Struts2中定义的action类都直接或间接的实现action接口4.表单或url访问action类中的方法使用.action形式5.Struts2配置文件struts/xml的默认位置在WEB-INF/CLASSES6.在JSP中引入Struts2标签库的指令是:taglib7.Struts2 提供的迭代数据标签是: iterator8.使用Struts2验证框架,若类action的名字是logiaction,则其验证文件的名城必须为:LoginAction-validation.xml9.在struts.xml中配置拦截器使用的标签是:interceptor10.在struts.xml针对某一个action进行转换器配置,则应配置convertor属性11.Hibernate,配置数据库驱动使用的connection.driver-class12.Hibernate配置文件中,配置连接数据驱动的用户名使用的是ername13.Hibernate中,配置Hibernate方言使用的是dialect属性14.要实现Hibernate自动建表,需要将Hibernate.hbm2ddl.auto属性值设为:create15.要设置延迟检索策略,可以讲Lazy属性设置为true填空1、Struts2提供的过滤器是在web.xml 配置文件中进行配置的2、在struts.xml中声明名城空间用到的属性是:namespace3、在Struts2的零配置实现就是在action类中使用(@注解)定义action的资源4、在struts.xml中实现action链要配置的type属性是(chain5、Struts2提供了两种action驱动分别是(模型驱动和属性驱动6、在sturts.xml中声明action类使用的标签是:action7、Struts2拦截器中,首先要定义一个实现Interceptor接口的类8、Struts2提供的两种校验方式是:手动校验和框架校验9、Struts2自定义的全局数据类型转换器要配置到xwork-conversion.properties 配置文件中10、Struts2中获取数据值并直接输出到页面的标签是:property11、Hibernate配置文件中的,mapping resorce/>是用来对(映射文件的完整路径)的配置12、Hibernate设置主键的自增策略为(increment、identity、sequence13、映射java基本类型为string的属性。
JavaWeb应⽤开发考试题库答案⼀、选择题(共10⼩题,每⼩题2分,共20分)1、以下哪种情况是出现500报错的原因?( )A. jsp页⾯出现语法错误导致⽆法编译B.表单中的action地址与处理该表单的servlet映射地址不⼀致C.⽤户访问的url地址不对或不存在D. web应⽤⼯程中的Servlet映射地址有冲突导致tomcat启动失败2、下⾯哪⼀项对Servlet描述错误?( )A. Servlet是⼀个特殊的Java类,它必须直接或间接实现Servlet接⼝B. Servlet接⼝定义了Servelt的⽣命周期⽅法C. 当多个客户请求⼀个Servlet时,服务器为每⼀个客户启动⼀个进程D. Servlet客户线程调⽤service⽅法响应客户的请求3、下列JSP内容运⾏时,其结果是什么?( )<html><body><%for(int i=0;i<3;i++){%>out.print(i*2);<%}%>A.显⽰出0,2,4 B.此JSP因为语法错误,⽆法运⾏ C.显⽰出0,2,4,6 D.显⽰出`out.print(i*2) out.print(i*2) out.print(i*2)` 4、某个客户端浏览器第5次访问以下JSP⽹页,中间服务器重启⼀次,请问输出结果哪项描述正确?( )<%!int a=0;%><%int b=0; a++; b++;%>a=<%= a %> b=<%= b %>选项:A. a值不能确定 b=1B. a=5 b值不能确定C. a=1 b=5D. a=5 b=15、下列变量声明在( )范围内有效。
<%!int countNum;%>A.在整个页⾯内有效,被多个客户共享B.在整个页⾯内有效,客户之间不共享C.从定义开始处有效,客户之间不共享D.从定义开始处有效,被多个客户共享6、将JSP页⾯转化⾄Java⽂件,下述描述错误的是( )A.所有JSP声明都变成Servlet类的⼀部分,变成实例变量或实例⽅法B. 所有JSP⼩脚本都变成_jspService()⽅法的⼀部分,它们被原样拷贝C. 所有的JSP注释被转化为java注释D.模板⽂本都变成_jspService()⽅法的⼀部分,其值使⽤out.write()语句输出7、关于路径设置,下⾯哪种说法是错误的?( )A.在表单属性action中以/开头的路径表⽰以web服务器⽬录为根⽬录B.在SendRedirect参数中以/开头的路径表⽰以应⽤程序⽬录为根⽬录C.在超链接属性Ref中以/开头的路径表⽰以web服务器⽬录为根⽬录D.在getRequestDispatcher参数中以/开头的路径表⽰以应⽤程序⽬录为根⽬录8、在⼀个JSP页⾯中把请求转发到disp.jsp页⾯,下⾯哪个语句是正确的?( )A.<jsp:forward file="disp.jsp"/>B.<jsp:forward page="disp.jsp"/>C.<jsp:include file="disp.jsp"/>D.<jsp:include page="disp.jsp"/>9、执⾏数据库查询后得到5⾏的可滚动结果集对象rs,下⾯哪个表达式不能够移⾄rs的第3⾏?( )A. rs.next(); rs.next(); rs.next();B. st(); rs.relative(-2);C. rs.absolute(3);D. rs.first(); rs.relative(3);10、下列代码⽣成了⼀个结果集conn=DriverManager.getConnection(uri,user,password);stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);rs=stmt.executeQuery("select * from book");下⾯哪项对该rs描述正确的是( )A.只能向下移动的结果集B.可上下滚动的结果集C.只能向上移动的结果集D.不确定是否可以滚动⼆、简答题 (共4⼩题,20分)1、JSP脚本元素有哪⼏个?请请简要说出它们的功能。
javaweb期末复习题库# Java Web 期末复习题库一、选择题1. 在Java Web开发中,以下哪个不是Servlet生命周期中的方法?A. init()B. service()C. destroy()D. start()答案:D2. 下列关于JSP页面的描述,哪个是不正确的?A. JSP页面可以包含Java代码。
B. JSP页面最终会被转换成Servlet。
C. JSP页面可以被客户端直接访问。
D. JSP页面可以包含HTML代码。
答案:C3. 在Java Web应用中,以下哪个不是HTTP请求方法?A. GETB. POSTC. PUTD. DELETE答案:C(注:在HTTP/1.1中,PUT和DELETE是标准的请求方法,但题目可能假设的是更早的HTTP版本)4. Servlet的哪个方法是用来处理客户端请求的?A. init()B. doGet()C. doPost()D. destroy()答案:B(或C,取决于请求类型)5. 下列哪个不是Java Web开发中常用的数据库连接池技术?A. Apache DBCPB. C3P0C. HikariCPD. JDBC答案:D二、简答题1. 解释Servlet的工作原理。
答:Servlet是一个运行在服务器端的Java程序,它遵循Servlet 规范,可以处理客户端的请求并生成响应。
Servlet的生命周期包括初始化(init)、服务(service)、销毁(destroy)等阶段。
当客户端发送请求时,Servlet容器会调用相应的Servlet的service方法,然后根据请求类型调用doGet或doPost等方法来处理请求。
2. 描述JSP和Servlet之间的关系。
答:JSP页面是一种特殊的Servlet,它允许开发者在页面中编写HTML标记和Java代码片段。
当JSP页面被请求时,Servlet容器会将JSP页面转换成一个Servlet类,然后编译并实例化这个类。
软件工程考试重点⏹软件和软件工程概念及相关知识✓软件及软件工程定义✓软件开发生命周期各阶段的目标和任务✓软件生存周期模型: 瀑布模型、演化模型、螺旋模型、增量模型⏹软件需求分析知识✓软件需求分析的目的和任务✓结构化分析方法(数据流图DFD、数据字典DD、实体关系图ERD)✓统一建模语言UML(用例图、类图、状态图)✓需求获取的过程和原则⏹软件设计知识✓软件设计的目的和任务✓结构化设计方法和工具(模块独立性、系统结构图)✓软件总体结构设计(设计原则、模块结构设计)✓软件详细设计(程序流程图、N-S图、PAD图、判断树、判断表)⏹软件实现与测试的知识✓结构化程序设计与基本控制结构(顺序、重复、选择)✓软件测试的目的和原则✓软件测试用例设计方法:等价类划分(黑盒测试)、逻辑覆盖(白盒测试)✓软件测试的阶段划分✓程序调试的方法和原则⏹面向对象开发方法✓面向对象概念(类、对象、属性、服务、封装性、继承性、多态性)✓事物之间的关系(依赖、关联、泛化等)✓参与者、用例、用例模型和事件流描述✓软件体系结构设计和类的设计例题分析:单项选择题1. 软件可用性是指()。
A. 用户界面的友好程度B. 软件结构、实现及文档为用户可用的程度C. 修改软件错误的难易程度D. 符合用户使用习惯的程度解答:可用性是指Availability,而不是Usability。
选B。
因为A、D都属用户友好性Usability,C属于易修改性。
2. 设计阶段的主要任务是()。
A. 给出软件解决方案B. 给出系统模块结构C. 定义需求并建立系统模型D. 定义模块算法解答:选A。
设计阶段任务是进行软件数据设计、模块结构设计、接口设计、出错处理设计、处理过程设计等,不仅仅是模块结构设计或模块算法设计,也不是建立需求模型。
3. 演化模型和增量模型的主要区别是()。
A. 软件工程活动不同B. 针对的项目大小不同C. 针对不同的软件开发方法D. 针对的需求完整性不同解答:选A。
1、HTTP协议请求报文以及响应报文2、JAVA Socket编程Socket以及ServerSocket3、WEB服务器概念Tomcat服务器目录结构和基本配置server.xml文件4、什么是Servlet? 怎样实现一个自定义Servlet?5、Servlet基本配置6、ServletAPI 包括HttpServlet、HttpServletRequest、HttpServletResponse、ServletConfig、ServletContext7、service方法以及doGet和doPost方法8、servlet生命周期9、怎样获取网页提交的参数?10、会话HttpSession和Cookie11、调用一个已定义好的Servlet有哪些方式12、表单提交数据到Servlet 中文乱码处理13、客户端页面向服务端servlet传递参数有哪些方式14、JSP的运行原理以及基本语法15、JSP隐式对象16、JavaScript基本语法17、JavaScript中的对象18、JavaScript与AJAX19、基于对象的Javascript以及继承的实现客户端/服务器的优势在于:服务器和客户端分摊任务,分别负责部分处理工作;服务器可以同时为多台客户端服务;多个客户端可以同时访问服务器上的相同数据。
IP网络ID:网络ID标识了计算机或网络设备所在的网段;主机ID:主机ID标识了特定的主机或网络设备特殊IP地址:0.0.0.0和127.0.0.1就是两个此类地址,第一个称为缺省路由,后一个是环回地址;127.0.0.1被保留用于用户主机的本地IP话务,它被分配给一个特殊接口,即起到闭合电路作用的环回接口端口端口使用一个16位的数字来表示,它的范围是0~65535,1024以下的端口号保留给预定义的服务,如:http使用80端口;包包可以实现Java的网络功能,InetAddress:InetAddress getByName(String host) 在给定主机名的情况下确定主机的IP 地址注:host可以是主机名IP地址或者域名InetAddress getLocalHost() 返回本地主机的InetAddress对象InetAddress[] getAllByName(String host) 在给定主机名的情况下,根据系统上配置的名称服务返回其IP 地址所组成的数组可能一个主机名对应多个服务器(负载均衡)JAVA Socket编程socket用于描述IP地址和端口,应用程序通过套接字向网络发出请求或者应答网络请求;套接字会因为网络的连接中断而失效,所以对它的操作都有可能抛出IOExceptionSocket以及ServerSocket客户端流程:向服务端请求,获取输入输出流,进行收发数据,关闭io流,关闭套接字服务器流程:创建套接字,获得客户端请求,获得输入输出流,收发信息,关闭io流,关闭套接字包装以提高效率(用BufferedReader包装输入流,用PrintWriter包装输出流)BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));PrintWriter(OutputStream out, boolean autoFlush) 利用现有的OutputStream构造格式打印流,由参数autoFlush指定是否带自动刷新缓存的功能进程与线程的区别进程是指系统中正在运行中的应用程序,它拥有自己独立的内存空间;线程是指进程中一个执行流程,一个进程中允许同时启动多个线程,他们分别执行不同的任务;线程与进程的主要区别在于:每个进程都需要操作系统为其分配独立的内存地址空间,而同一进程中的所有线程在同一块地址空间中,这些线程可以共享数据,因此线程间的通信比较简单,消耗的系统开销也相对较小。
在Java中实现线程有两种方式,分别是:扩展ng.Thread类实现ng.Runnable接口线程start()调用run()方法,重写的是run()线程生命周期线程状态:新建状态(New):使用new关键字创建线程对象,仅仅被分配了内存;就绪状态(Ready):线程对象被创建后,等待它的start方法被调用,以获得CPU的使用权;运行状态(Running):执行run方法,此时的线程的对象正占用CPU;睡眠状态(Sleeping):调用sleep方法,线程被暂停,睡眠时间结束后,线程回到就绪状态,睡眠状态的线程不占用CPU;死亡状态(Dead):run方法执行完毕后,线程进入死亡状态;阻塞状态(Blocked):线程由于某些事件(如等待键盘输入)放弃CPU,暂停运行,直到线程重新进入就绪状态,才有机会转到运行状态;Yield()和join()的不同HTTP协议HTTP (HyperText Transfer Protocol)协议即超文本传输协议,是基于网络应用层的协议,它建立在TCP/IP协议的基础上;该协议使用可靠的TCP连接,默认端口是80;HTTP协议基于客户端/服务器模式,客户端主动发出HTTP请求,服务器接收HTTP请求,返回HTTP响应结果。
HTTP协议是指超文本传输协议,专门用于在Internet上传输信息的协议,目前的版本是1.1;HTTP是应用层的协议,它基于请求/响应模式;HTTP协议默认使用80端口进行通讯;HTTP协议是无状态的的协议。
请求报文实例:请求报文是指客户端浏览器向网络服务器请求页面时,发送到服务器端的字符串,必须符合HTTP协议的格式要求,它可能包含如下组成部分:GET /index.html HTTP/1.1Accept: image/gif, image/x-xbitmap, image/jpeg, …, */*Accept-Language: zh-cnUA-CPU: x86Accept-Encoding: gzip, deflateUser-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)Host: :80Connection: Keep-Alive<空行>请求报文中的大部分项目是可选的,只有GET和Host部分是必需的;GET部分的格式是:GET<空格>/[请求的URL]<空格>HTTP/协议版本号如:GET /index.html HTTP/1.1Host部分的格式是:Host:<空格>服务器域名或IP地址:端口号如:Host: :80换言之,请求报文中只要包含以上两部分,就可以向网络站点服务器请求到页面。
//拼凑请求报文String strHttp = "GET / HTTP/1.1\r\n";strHttp += "Host: " + hostName + ":" + WEB_PORT + "\r\n";响应报文实例:响应报文是指网络服务器收到来自客户端的请求后,发回到客户端的字符串,它用来告诉客服端:服务器已经接受请求,随后跟随的是被请求的网页内容;响应报文可能包含如下组成部分:HTTP/1.1 200 OKDate: Sat, 11 Aug 2007 11:58:37 GMTServer: Apache/1.3.37(Unix)Accept-Ranges: bytesContent-Length: 11503Content-Type: text/html<空行>响应报文中也有两部分是必需的:HTTP/协议版本号<空格>状态码<空格>OK状态码是一个3位整数,用来表示不同的状态,200表示响应成功,如:HTTP/1.1 200 OK状态码的具体描述请参阅本课件最后的附表。
Content-Type:<空格>text/html;<空格>charset=字符集编码用来描述服务器发回响应的文件类型以及字符集编码,text/html说明是文本文件或超文本文件,如:Content-Type: text/html; charset=GB2312模拟:out.println("Http/1.1 200 OK");out.println("Content-Type:text/html; charset=GB2312");状态码:Web应用的优势相对于传统的C/S结构(Client客户端/Server服务器)的应用程序而言,B/S结构的Web应用程序具备以下优势:集中部署,无需安装客户端程序;集中管理,业务逻辑在服务端进行维护;数据共享,所有客户端访问同一服务器的数据;覆盖面广,只要有Internet覆盖的区域都可通过浏览器享受服务;更强的平台无关性,不必关心客户端的软硬件平台,只要遵循HTTP协议,都可获得支持。
WEB服务器概念Web服务器可以解析(handles)HTTP协议。
当Web服务器接收到一个HTTP请求(request),会返回一个HTTP响应(response),例如送回一个HTML页面。
为了处理一个请求(request),Web 服务器可以响应(response)一个静态页面或图片,进行页面跳转(redirect),或者把动态响应(dynamic response)的产生委托(delegate)给一些其它的程序例如CGI脚本,JSP(JavaServer Pages)脚本,servlets,ASP(Active Server Pages)脚本,服务器端(server-side)JavaScript,或者一些其它的服务器端(server-side)技术。
无论它们(译者注:脚本)的目的如何,这些服务器端(server-side)的程序通常产生一个HTML的响应(response)来让浏览器可以浏览。
Tomcat服务器目录结构和基本配置server.xml文件博客/mycomein/article/details/45798161tomcat环境变量的设置:首先添加TOMCAT_HOME的环境变量,值为d:\Program Files\tomcat7。
添加CATALINA_HOME环境变量,值为%TOMCAT_HOME%,添加CATALINA_BASE环境变量,值为%TOMCAT_HOME%。
Tomcat是以面向对象的方式运作的;在执行期间,它会基于配置文件的设定动态地组建其对象结构。
Server.xml文件中的每个主要元素都会创建软件“对象”、排序及进程管道中设置的这些元素嵌套方,让您能执行过滤、分组等工作。