Java Web应用开发知到智慧树章节测试课后答案2024年秋山东建筑大学_第1页
Java Web应用开发知到智慧树章节测试课后答案2024年秋山东建筑大学_第2页
Java Web应用开发知到智慧树章节测试课后答案2024年秋山东建筑大学_第3页
Java Web应用开发知到智慧树章节测试课后答案2024年秋山东建筑大学_第4页
Java Web应用开发知到智慧树章节测试课后答案2024年秋山东建筑大学_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JSPOutputExampleJavaWeb应用开发知到智慧树章节测试课后答案2024年秋山东建筑大学第一章单元测试

对于下面JavaWeb服务器端技术的描述,正确的是:()。

A:仅包括第三方框架B:包括Servlet、JSP、过滤器、监听器、第三方框架等C:仅包括过滤器、监听器D:仅包括JSP

答案:包括Servlet、JSP、过滤器、监听器、第三方框架等早期的时候,JavaWeb是JavaEE的子集。当时,在JavaEE中最著名的组件技术是:()。

A:JSPB:EJBC:ASPXD:Servlet

答案:EJB现在的JavaWeb应用开发,是在掌握JavaWeb的基础上,更高效的方式是:()。

A:面向JDBC编程B:面向Java编程C:面向Spring编程D:其余选项均不对

答案:其余选项均不对JavaWeb中的数据访问层技术包括()。

A:MyBatisB:JDBCC:其余选项均错D:JPA

答案:MyBatis;JDBC;JPA简而言之,SpringBoot是()。

A:其余选项均错B:简化Spring应用开发的一个框架C:整个Spring技术栈的一个大整合D:J2EE开发的一站式解决方案

答案:简化Spring应用开发的一个框架;整个Spring技术栈的一个大整合;J2EE开发的一站式解决方案请简述JavaWeb的常用技术有哪些?

答案:Servlet、JSP(JavaServerPages)、JSF(JavaServerFaces)、SpringMVC、Hibernate、Struts、EJB(EnterpriseJavaBeans)、JPA(JavaPersistenceAPI)、Ajax、JSON、JSTL(JSPStandardTagLibrary)、EL(ExpressionLanguage)、Filter、Listener、WebServices(SOAP,RESTful)、MVC(Model-View-Controller)设计模式等。

第二章单元测试

JDBC访问数据库需要5个步骤:

①创建连接对象②加载驱动程序③创建Statement对象,执行SQL语句④关闭资源对象⑤遍历结果集

这5个步骤正确的调用顺序是()。

A:②①③⑤④B:①②③⑤④C:①②③④⑤D:②①④③⑤

答案:②①③⑤④如下选项中,描述PreparedStatement接口是()。

A:提供基本的SQL操作.适合静态SQL语句,且传入的SQL语句可以接受参数.B:Statement的子接口,可以在SQL中传递参数,适合多次使用的SQL语句C:可以直接调用PL/SQL存储过程.D:提供基本的SQL操作.适合静态SQL语句,且传入的SQL语句无法接受参数.

答案:Statement的子接口,可以在SQL中传递参数,适合多次使用的SQL语句假定在程序中已经打开了连接对象con,SQL语句执行对象st,结果集对象rs,则在数据库访问结束后,这三个对象的关闭顺序是()。

A:st,rs,conB:rs,st,conC:st,con,rsD:con,st,rs

答案:rs,st,con关于JDBC,下面说法正确的是()。

A:不同的数据库需要不同的JDBC驱动程序B:Connection接口用于管理驱动程序,创建新的数据库连接C:不同的数据库仅需要一套相同的JDBC驱动程序D:Java语言通过不同JDBC驱动程序访问不同的数据库时,使用的API接口一致

答案:不同的数据库需要不同的JDBC驱动程序;Java语言通过不同JDBC驱动程序访问不同的数据库时,使用的API接口一致使用Java通过JDBC访问数据库前应该做的准备工作包括()。

A:将所访问数据库的JDBC驱动程序引入到项目的构建路径中B:建立Web页面C:建立Java工程项目或JavaWeb工程项目D:在后台打开要访问数据库所在的数据库服务器

答案:将所访问数据库的JDBC驱动程序引入到项目的构建路径中;建立Java工程项目或JavaWeb工程项目;在后台打开要访问数据库所在的数据库服务器请简述JDBC访问数据库的步骤?

答案:0

第三章单元测试

下面的注解中,用于配置Servlet的是()。

A:@WebFilterB:@controllerC:@WebListenerD:@WebServlet

答案:@WebServlet下面有关Servlet功能的说法,错误的是()。

A:处理客户端的HTML表单输入B:处理来自许多客户的输入C:与普通Java类不同,Servlet不能直接调用JDBC中的APID:动态生成web页面

答案:与普通Java类不同,Servlet不能直接调用JDBC中的API已知客户端访问Servlet的URL是https://localhost:8080/test/action/Helloworld.do则该Servlet在web.xml中的如下配置正确的是()。

A:B:C:D:

答案:Servlet组件在用户的每次请求/响应时都要初始化,在每次响应结束后都要卸载。()

A:对B:错

答案:错客户端通过post方式调用Servlet时会自动执行Servlet的()。

A:doGet方法B:doPost方法C:doPost方法D:doDelete方法

答案:doPost方法请写出一个HttpServlet类及其doGet和doPost方法。

答案:```javaimportjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjava.io.IOException;publicclassMyHttpServletextendsHttpServlet{@OverrideprotectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException{response.getWriter().println("ThisistheresponsefromdoGetmethod.");}@OverrideprotectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException{response.getWriter().println("ThisistheresponsefromdoPostmethod.");}}```

第四章单元测试

下面哪些元素能够出现在JSP文件中()。

A:<%java代码%>B:<%@page>C:<jsp:forward>D:<%=java表达式%>

答案:<%java代码%>;<%@page>;<jsp:forward>;<%=java表达式%>若一个JSP页面a.jsp抛出的异常能够被错误页面error.jsp接收到,则在a.jsp的<%@page>指令中需指定的属性信息是()。

A:errorPage=”error.jsp”B:import=”error.jsp”C:isErrorPage=“true”D:language="java"

答案:errorPage=”error.jsp”已知一个Web项目中有两个JSP文件:1.jsp和2.jsp,它们在同一文件夹下。若想从1.jsp跳转到2.jsp,同时在request对象中带有名为name和age的参数,下面出现在1.jsp中的代码片段正确的是()。

A:B:C:D:

答案:;;下面关于页面跳转的描述正确的是()。

A:其余选项均错B:response.sendRedirect(“url”)是通过客户端重定向的方式进行页面跳转,是客户端重新向服务器发送请求,原来的请求丢失。C:JSP中的<jsp:forward>等价于response.sendRedirect(“url”),都属于客户端跳转。D:Request.getRequestDispatcher(url).forward(request,response)是通过服务器端转发的方式进行页面跳转,带着原始的request和response对象一起转发到新页面,因此原来的请求不会丢失。

答案:response.sendRedirect(“url”)是通过客户端重定向的方式进行页面跳转,是客户端重新向服务器发送请求,原来的请求丢失。;Request.getRequestDispatcher(url).forward(request,response)是通过服务器端转发的方式进行页面跳转,带着原始的request和response对象一起转发到新页面,因此原来的请求不会丢失。下面关于用户会话跟踪技术描述正确的是()。

A:一个用户在一个Web应用中所访问的多个web页面共享的信息需要使用用户会话跟踪技术来存取。B:用户会话跟踪技术主要有两种,分别是:cookie和session。C:利用session技术,每个用户的每次登陆对应一个session,一个Web应用中的所有session对象都被存放在服务器端。D:从安全性上讲,cookie因为放在客户端,所以更安全;从访问性能上讲,cookie性能更高。

答案:一个用户在一个Web应用中所访问的多个web页面共享的信息需要使用用户会话跟踪技术来存取。;用户会话跟踪技术主要有两种,分别是:cookie和session。;利用session技术,每个用户的每次登陆对应一个session,一个Web应用中的所有session对象都被存放在服务器端。请写出JSP实现输出的相关技术代码。

答案:```jsp<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><%Stringmessage="Hello,JSP!";out.println(message);%>```

第五章单元测试

关于JavaBean,下面说法正确的是()。

A:JavaBean的属性一般是非public的,访问属性应该通过public的setter和getter方法。B:JavaBean中可以封装业务逻辑方法,包括进行数据库访问操作等。C:JavaBean是一个public的类。即该类具有public的访问权限。D:JavaBean必须有一个无参数的构造方法。

答案:JavaBean的属性一般是非public的,访问属性应该通过public的setter和getter方法。;JavaBean中可以封装业务逻辑方法,包括进行数据库访问操作等。;JavaBean是一个public的类。即该类具有public的访问权限。;JavaBean必须有一个无参数的构造方法。下面的JavaBean的定义是正确的是()。

A:B:C:D:

答案:如下选项中,描述JSP中的创建JavaBean对象user的是()。

A:<jsp:useBeanid="user"class="bean.User"scope="session"/></jsp:useBean>B:<%user.setId(1);%>C:<%Useruser=newUser();%>D:<jsp:setPropertyname="user"property="id"value="1"/></jsp:setProperty>

答案:<jsp:useBeanid="user"class="bean.User"scope="session"/></jsp:useBean>;<%Useruser=newUser();%>如下选项中,在request作用域中存在一个user对象的是()。

A:<jsp:useBeanid="user"class="entity.User"scope="request"/>B:<jsp:useBeanid="user"class="entity.User"scope="session"/>C:<jsp:useBeanid="user"class="entity.User"scope="page"/>D:<jsp:useBeanid="user"class="entity.User"scope="application"/>

答案:<jsp:useBeanid="user"class="entity.User"scope="request"/>如下选项中,给user对象的name属性赋值为"userName"的是()。

A:<jsp:setPropertyname="user"property="name"value="userName"/>B:<%user.setName("userName");%>C:<jsp:getPropertyname="user"property="userName"/>D:<jsp:setPropertyname="user"property="name"value="zhangsan"/>

答案:<jsp:setPropertyname="user"property="name"value="userName"/>;<%user.setName("userName");%>请写出JavaBean规范的内容。

答案:JavaBean规范主要包括以下内容:1.类必须是公共的(public)。2.类必须有一个无参数的公共构造器。3.属性应该是私有的(private),并提供公共的getter和setter方法来访问这些属性。4.属性名应该遵循驼峰命名法,getter和setter方法的命名应遵循一定的规则,如:属性名为firstName,则其getter方法为getFirstName(),setter方法为setFirstName()。5.实现Serializable接口,以便于序列化。遵循这些规范的Java类可以被容器或其他Java类容易地重用和操作。

第六章单元测试

表达式语言全称是JSP表达式语言,主要用于()。

A:获取JSP作用域的变量或JavaBean对象B:获取访问数据库的对象C:获取EJB对象D:其余选项均错

答案:获取JSP作用域的变量或JavaBean对象已知代码为:

<%

pageContext.setAttribute("userName","page",pageContext.PAGE_SCOPE);

request.setAttribute("userName","request");

session.setAttribute("userName","session");

application.setAttribute("userName","application");

%>,则${userName}的结果为()。

A:pageB:requestC:sessionD:application

答案:page已知a.jsp位于项目cj的根目录下,其中的代码为::

<jsp:useBeanid="user"class="ch05.User"scope="request"/>

<c:settarget="${user}"property="age"value="${param.age}"/>

<c:iftest="${user.age<18}"var="condition"scope="request">

对不起,您的年龄未满18,不能查看该网页!

</c:if>

${condition},

则在地址栏输入http://localhost:8080/cj/a.jsp?age=16结果为()。

A:16trueB:对不起,您的年龄未满18,不能查看该网页!falseC:对不起,您的年龄未满18,不能查看该网页!trueD:18false

答案:对不起,您的年龄未满18,不能查看该网页!true已知2行代码如下:

<c:setvar="num1"value="1"scope="request"/>

<%System.out.println(num1);%>

则<%System.out.println(num1);%>的会导致程序出错。()

A:对B:错

答案:对代码

<c:forEachbegin="1"end="5"step="2"var="i">

${i}

</c:forEach>的执行结果为()。

A:24B:01234C:12345D:135

答案:135有如下代码:${requestS}

请写出JSP中使用脚本段的等价代码。

答案:<%out.print(request.getAttribute("user").getName());%>

第七章单元测试

过滤器可以过滤的资源包括()。

A:ServletB:JSPC:EJBD:jpg

答案:Servlet;JSP;jpg过滤器的3个重要方法包括()。

A:doFilterB:destroyC:serviceD:init

答案:doFilter;destroy;init配置过滤器时,使用的注解是()。

A:@WebFilterB:@ServletC:@ControllerD:@Bean

答案:@WebFilter监听器javax.servlet.ServletContextListener接口包括的2个抽象方法是()。

A:contextInitializedB:serviceC:initD:contextDestroyed

答案:contextInitialized;contextDestroyedjavax.servlet.ServletContextAttributeListener用于监听()。

A:请求中属性的增加、修改、删除B:Servlet上下文C:会话中属性的增加、修改、删除D:Servlet上下文中属性的增加、修改、删除

答案:Servlet上下文中属性的增加、修改、删除请写出处理form表单post请求时,解决中文乱码的过滤器类的核心代码。

答案:在JavaWeb开发中,处理POST请求的中文乱码问题,可以通过自定义过滤器(Filter)来实现编码统一。以下是一个简单的过滤器核心代码示例:```javaimportjava.io.IOException;importjavax.servlet.Filter;importjavax.servlet.FilterChain;importjavax.servlet.FilterConfig;importjavax.servlet.ServletException;importjavax.servlet.ServletRequest;importjavax.servlet.ServletResponse;importjavax.servlet.http.HttpServletRequest;publicclassCharacterEncodingFilterimplementsFilter{@Overridepublicvoidinit(FilterConfigfilterConfig)throwsServletException{//初始化方法,可选}@OverridepublicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)throwsIOException,ServletException{//设置请求和响应的字符编码为UTF-8HttpServletRequestreq=(HttpServletRequest)request;req.setCharacterEncoding("UTF-8");//继续执行下一个过滤器或目标Servletchain.doFilter(request,response);}@Overridepublicvoiddestroy(){//销毁方法,可选}}```这段代码的核心在于`doFilter`方法中,通过`HttpServletRequest`的`setCharacterEncoding`方法将请求的字符编码设置为UTF-8,从而解决POST请求中的中文乱码问题。记得在Web应用的`web.xml`中配置此过滤器,确保所有请求经过此过滤器处理。

第八章单元测试

如下选项中,表示Java类是一个实体的注解是()。

A:@TableB:@EntityC:@NamedQueryD:@Id

答案:@Entity注解()表示对应属性不需要持久化,在保存或更新实体对象时,该属性不会持久化到数据库中。

A:@IdClassB:@ColumnC:@EmbeddedIdD:@Transient

答案:@TransientJPA中,下面哪些注解能够定义实体与关系表之间的关联关系()

A:@OneToManyB:@ManyToOneC:@OneToOneD:@ManyToMany

答案:@OneToMany;@ManyToOne;@OneToOne;@ManyToMany使用JPA更新数据库需要6个步骤:

①执行持久化操作(merge\persist\remove)②创建EntityManager③创建EntityManagerFactory④开始一个事务⑤关闭一个事务⑥关闭EntityManager。这6个步骤正确的调用顺序是()

A:①②③⑤④⑥B:②①③⑤④⑥C:③②④①⑤⑥D:①②③④⑤⑥

答案:③②④①⑤⑥实体对象拥有持久化主键,已经和持久化上下文建立联系,但已经被安排从数据库中删除,该对象的状态为()。

A:受控态B:游离态C:删除态D:新建态

答案:删除态请分别写出表示是实体类、映射表名、映射列名、表示属性不需要吃就好的JPA的注解。

答案:实体类:@Entity映射表名:@Table(name="表名")映射列名:@Column(name="列名")表示属性不需要吃就好的(这个描述不太清晰,如果是指默认值或基本字

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论