PS:属于转载老师的,本文章为自用考试复习。
目录
3.简述sendRedirect()方法和getRequestDispatcher方法
4.简述使用ServletContext对象中保存/获取共享信息统计特定页面的访问次数
选择题
1-5:ABACC
1.()有个专门的 xml 文件放sql 语句,便于维护管理,不用在java代码中找这些语句,Mybatis还可以动态生成SQL,提供了一些根据条件生成对应的sql 例如<if> <foreach> 标签。
A.Mybatis B.Hibernate C.View D.Controller
2.基本类型属性注入需要在属性上使用注解()。使用该注解完成属性注入时,类中无需setter。
A.@Component B.@Value C.@Scan D.@WebFilter
3.scope是用来设定Bean实例的作用域,其属性的默认值是()
A.singleton B.prototype C.request D.session
4.()是面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善。
A.MVC B.SSM C.AOP D.DAO
5.在MyBatis配置文件MybatisConfig.xml中加载映射文件,用到( ) 标签。
A.<settings> B.<typeAliases>
C.<properties> D.<environments>
6-10:DACBD
6.@RestController注解为一个组合注解,相当于@Controller和()的组合,注解在类上,意味着,该Controller的所有方法都默认加上了()。
A.@RequestBody B.@RequestMapping
C.@ControllerAdvice D.ResponseBody
7.在Spring框架中,配置要扫描的组件通常是通过注解()来实现的。在Spring Boot的配置文件中,可以使用()注解指定要扫描的包,从而搜索并注册Spring组件(如控制器、服务、仓库等)。
A.@ComponentScan B.@ControllerAdvice
C.@Controller D.@EnableWebMvc
8.HttpServlet类中的()方法,支持使用get或post方式传递数据,即在()方法中,可以通过调用doGet()或doPost()方法来实现。
A.start() B.destroy() C.service() D.run()
9.创建的Servlet必须继承()类,并实现doGet()和doPost()方法。Servlet创建后必须在web.xml文件中进行配置,Servlet才能生效。
A.ServletResponse B.HttpServlet
C.HttpsServlet D.doGetServlet
10.Tomcat要实现的两个核心功能:处理()连接,负责网络字节流与Request和Response对象的转化加载和管理Servlet,处理Request请求。
A.Request B.Ftp C.Servlet D.Socket
11-15BDAAA
11.重复题
12.JSP可以把JSP页面的执行分成两个阶段,一个是转译阶段,一个是请求阶段。转译阶段可以将JSP页面转换成Servlet类。请求阶段是()的执行,将响应结果发送至客户端。
A.Http类 B.JSP类 C.Socket类 D.Servlet类
13.()用于设置整个页面的相关属性与功能,其语法格式为:<%@() attribute1="value1" attribute2="value2" ...%>
A.page指令 B.include指令
C.taglib指令 D.forward指令
14.include动作标记用于告知JSP页面()加载一个文件,即在JSP页面运行时才将文件引入。
A.动态 B.运态 C.静态 D.初态
15.连接器中的 Adapter 会调用容器的 Service 方法来执行 Servlet,最先拿到请求的是Engine 容器,Engine 容器对请求做一些处理后,会把请求传给自己子容器 Host 继续处理,依次类推,最后这个请求会传给 Wrapper 容器,Wrapper 会调用最终的 Servlet 来处理。在这个调用过程具体使用 Pipeline-Valve 管道。Pipeline-Valve 是(),()是指在一个请求处理的过程中有很多处理者依次对请求进行处理,每个处理者负责做自己相应的处理,处理完之后将再调用下一个处理者继续处理。
A.责任链模式 B.工厂模式
C.适配器模式 D.装饰器模式
16-20AACDB
16.在类上用( ) 注解Spring组件,表明这些类的bean由spring容器管理。
A.@Component B.@Service
C.@Override D.@WebFilter
17.XML配置文件的根元素是( ),其可以包含多个子元素<bean>。
A.<beans> B.<constructor-arg> C.<input> D.<form>
18.控制反转( ),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。
A.DI B.AOP C.IoC D.DAO
19.在MyBatis配置文件MybatisConfig.xml中加载映射文件,用到( ) 标签。
A.statement B.constructor-arg
C.properties D.mappers
20.根据注解把url请求与Controller联系起来,就是根据注解实现哪个url请求调用Controller哪个方法(( )(value = "/hello"))。
A.@Controller B.@RequestMapping
C.@Value D.ResponseBody
21-25:BCAAB
21.在Sprig的配置文件中,配置要扫描用( )来搜索spring控件。
A.requestScope B.context:component-scan
C.environment D.plugin
22.在运行阶段,当Web 服务器接收到浏览器的访问请求后,会将该请求传给Servlet容器,调用( )方法。
A.init() B.destroy() C.service() D.run()
23.使用response对象的( )方法可以添加相应的用户名与密码Cookie信息。
A.addCookie() B.flushBuffer()
C.setPath() D.doGet
24.Tomcat要实现的两个核心功能是:( )和处理Socket连接,负责网络字节流与Request和Response对象的转化。
A.加载和管理Servlet,以及具体处理Request请求
B.实现对数据库的读写
C.在遵循JavaBean规范的基础上创建一个Java类,并将其保存为*.java文件
D.管理对象的全部生命周期
25.( )提供了一个处理HTTP协议的框架。
A.ServletContext B.HttpServlet
C.WebServlet D.HttpServletRequest
26-29:CDAA
26.Web开发技术可分为静态Web开发技术和动态Web开发技术。现实中常用的Web静态技术有( )和XML两种。
A.ASP B.PHP C.HTML D.JSP
27.Tomcat的Servlet容器是( )。
A.HTTP服务器 B.Coyote连接器
C.Processor D.Catalina
28.脚本小程序是指在( )之间插入的Java程序段。
A."<%" 和 "%>" B."<" 和 "/>"
C."%" 和 "%" D."<tb" 和 "/tb>"
29.Tomcat的启动流程为( )。
A.启动Tomcat->调用main方法->调用init方法->调用load方法->初始化并构造Digester对象->调用后续组件的初始化操作
B.启动Tomcat->调用main方法->调用load方法->调用init方法->初始化并构造Digester对象->调用后续组件的初始化操作
C.启动Tomcat->初始化并构造Digester对象->调用init方法->调用load方法->调用main方法->调用后续组件的初始化操作
D.启动Tomcat->初始化并构造Digester对象->调用load方法->调用init方法->调用main方法->调用后续组件的初始化操作
填空题1-7
1.Tomcat设计了4种容器:Engine,Host,Context和Wrpper。这4种容器不是平行关系,而是父子关系。
2.在RequestDispatcher接口中定义了两种方法:forward()方法和include()方法,其中include()方法用于在响应中包含其他资源的内容。
3.为了保存会话过程中产生的数据,在Servlet技术中,提供了两个用于保存会话数据的对象,分别是Cookie和Session。其中Cookie用于将会话过程中的数据保存到用户的浏览器中,从而使浏览器和服务器可以更好地进行数据交互。
4.MVC模式,全称为Model-View-Controller,是一种软件设计模式,用于将应用程序的逻辑、数据和用户界面分离。这种模式有助于实现代码的模块化和可维护性,使得应用程序的开发、测试和维护变得更加容易。MVC模式主要由三个部分组成
5.ORM(Object Relational Mapping)对象关系映射,一般指持久化数据和实体对象之间的映射。具体映射有多个层次。
6.Servlet的生命周期可以分为3个阶段,分别是初始化阶段、运行时阶段、销毁阶段 。
7.JDBC是一套用于执行SQL语句的Java API。应用程序可通过这套API连接到关系型数据
库,并使用SQL语句来完成对数据库中数据的查询、更新、新增和删除/增删改查的操作。
简述题
1.简述Cookie会话技术
Cookie 是一种会话技术。
它用于将会话过程中的数据保存到用户的浏览器中,从而使浏览器和服务器可以更好地进行数据交互。当该浏览器再次访问服务器时,都会在请求头中将Cookie 发送给服务器,方便服务器对浏览器做出正确的响应。
2.简述Session会话技术
Session是一种将会话数据保存到服务器端的技术。
当浏览器访问Web服务器时,Servlet容器就会创建一个Session对象和ID属性,
当客户端后续访问服务器时,只要将标识号传递给服务器,服务器就能判断出该请求是哪个客户端发送的,从而选择与之对应的Session对象为其服务。
3.简述sendRedirect()方法和getRequestDispatcher方法
使用sendRedirect()方法实现请求重定向
使用RequestDispatcher实现请求转发
利用ServletRequest接口中的getRequestDispatcher()方法可以得到RequestDispatcher 对象
4.简述使用ServletContext对象中保存/获取共享信息统计特定页面的访问次数
要在ServletContext对象中保存共享信息,可以调用该对象的setAttribute()方法
要获取共享信息,可以调用该对象的getAttribute()方法。
调用setAttribute()方法将访问计数保存到上下文对象中,新增一次访问时,调用getAttribute()方法从上下文对象中取出访问计数加1,然后再调用setAttribute()方法保存回上下文对象中
5.简述JDBC执行流程的4个步骤
A.加载DriverManager.getConnection,获取conn
B.获取conn.createStatement
C.发送SQL语句,返回结果集,用到代码是s.executeQuery
D.处理结果集,通过遍历结果集获取记录
大题
根据给定的配置文件,编写Java类。
1.根据web.xml, welcome.html文件,编写welcomeServlet类,实现当用户通过浏览器输入用户名,浏览器显示欢迎信息。
web.xml:
<welcome-file-list>
<welcome-file>welcome.html</welcome-file>
</welcome-file-list>
welcome.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>欢迎</title>
</head>
</body>
<form action="WelcomeServlet" method="get">
请输入用户名:<input type="text" name="username"><br/>
<input type="submit"value"提交">
</form></body></html>
【答案】
public class WelcomeServlet extends HttpServlet {
private String greeting;
@Override
public void init() throws ServletException {
super.init();
greeting = getServletConfig().getInitParameter("greeting"); }
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
String username = request.getParameter("username");
String welcomeinfo = greeting + "," + username;
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html><head><title>");
out.println("Welcome Page");
out.println("</title></head><body>");
out.println(welcomeinfo);
out.println("<boday></html>");
out.close();
}
}
2.根据web.xml,login.html,welcome.html和return.html,编写LoginServlet类,实现请求重定向,即登录的用户名和密码正确,将请求重定向到欢迎页面,错误重定向返回登录页面。
web.xml:
<welcome-file-list>
<welcome-file>welcome.html</welcome-file>
</welcome-file-list>
login.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>login</title>
</head>
<body>
<form action="LoqinServlet" method="post">
账号:<input type="text" name-"username"><br>
密码:<input type="password" name="password"><bn><input type=" submit" value=" 登录">
</form></body></html>
welcome. html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>欢迎</title>
</head>
<body>
欢迎登录
</body>
</html>
return.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>return</title>
</head>
<body>
用户名或者密码错误,请重新登录
<a href="login.html">返回登录</a>
</body>
</html>
【答案】
public class LoginServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
String name = request.getParameter("username");
String pwd = request.getParameter("password");
if(("hxstu").equals(name) &&("123456").equals(pwd)) {
response.sendRedirect(request.getContextPath()+"/welcome.html");
return;
} else {
response.sendRedirect(request.getContextPath()+"/return.html");
return;
}}
------------分割线---------------
菜鸟古古 2024年6月18日20:47:25