Java-web 面试题(83)
摘要:
1、通俗易懂,适合小白
2、仅做面试复习用,部分来源网络,博文免费,知识无价,侵权请联系!:
-
什么是Servlet?
- Servlet是Java编写的服务器端程序,用于处理客户端请求并生成响应。它通常用于扩展Web服务器的功能,支持动态内容生成。
-
为什么要使用Servlet?
- Servlet提供了一种强大且灵活的方式来处理Web请求和响应。它们比传统的CGI脚本更高效,因为它们在服务器上运行在同一个进程中,减少了资源消耗。
-
Servlet接口中有哪些方法?
- 主要方法包括:
init()、service()、destroy()、getServletConfig()和getServletInfo()。
- 主要方法包括:
-
Servlet是线程安全的吗?
- Servlet本身不是线程安全的。多个请求可能同时访问同一个Servlet实例,因此需要开发者确保线程安全。
-
Servlet是单例还是多例?
- Servlet是单例的。每个Servlet类在容器中只有一个实例,处理所有请求。
-
Servlet和JSP有什么区别?
- Servlet是Java代码,用于处理请求和生成响应。JSP是HTML嵌入Java代码,主要用于生成动态网页。JSP最终会被编译成Servlet。
-
如何实现自定义一个Servlet?
- 创建一个类继承
HttpServlet,并重写doGet()或doPost()方法来处理请求。
- 创建一个类继承
-
编写Servlet需要继承什么类?
- 通常继承
HttpServlet类。
- 通常继承
-
doGet和doPost方法的两个参数是什么?
HttpServletRequest和HttpServletResponse。
-
什么情况下调用doGet()和doPost()?
doGet()用于处理GET请求,doPost()用于处理POST请求。
-
转发(Forward)和重定向(Redirect)有什么区别?
- 转发在服务器内部完成,客户端不知情;重定向是服务器告诉客户端去请求另一个URL。
-
Servlet中如何实现自动刷新(Refresh)?
- 使用
response.setHeader("Refresh", "5")来设置页面每5秒刷新一次。
- 使用
-
Java中Request对象都有哪些方法?
- 包括
getParameter()、getAttribute()、setAttribute()、getRequestDispatcher()等。
- 包括
-
JSP内置对象都有什么作用?
- 如
request、response、session、application等,用于处理请求、响应、会话和应用范围的数据。
- 如
-
Servlet API中有哪些主要包?其核心接口是什么?
- 主要包包括
javax.servlet和javax.servlet.http。核心接口是Servlet。
- 主要包包括
-
get和post请求有什么区别?
- GET请求将数据附加在URL后,适合获取数据;POST请求将数据放在请求体中,适合提交数据。
-
编写Servlet通常需要重写哪两个方法?
doGet()和doPost()。
-
Servlet执行时一般实现哪几个方法?
init()、service()、destroy()。
-
Servlet如何获取传递的参数信息?
- 使用
request.getParameter("paramName")。
- 使用
-
Servlet中如何返回响应信息?
- 使用
response.getWriter().write("response content")。
- 使用
-
Servlet中如何获取Session对象?
- 使用
request.getSession()。
- 使用
-
Servlet中过滤器有什么作用?
- 过滤器用于在请求到达Servlet之前或响应发送到客户端之前执行某些操作,如日志记录、身份验证等。
-
ServletContext接口包括哪些功能?
- 包括获取初始化参数、设置和获取属性、日志记录等。
-
如何实现Servlet单线程模式?
- 实现
SingleThreadModel接口,但此接口已过时,不推荐使用。
- 实现
-
Servlet的生命周期有哪几个阶段?
- 初始化(
init())、服务(service())、销毁(destroy())。
- 初始化(
-
说一说Servlet容器对url匹配过程?
- 容器根据URL模式匹配最具体的Servlet来处理请求。
-
jsp/servlet中如何保证browser保存在cache中?
- 使用
response.setHeader("Cache-Control", "max-age=3600")设置缓存时间。
- 使用
-
Servlet中如何获取客户端机器的信息?
- 使用
request.getRemoteAddr()获取客户端IP地址。
- 使用
-
什么是Servlet键?
- Servlet键是用于标识Servlet的唯一名称。
-
Java中Servlet主要功能作用是什么?
- 处理客户端请求并生成响应,支持动态Web内容生成。
-
JavaWeb中四大域对象及作用范围?
pageContext(页面范围)、request(请求范围)、session(会话范围)、application(应用范围)。
-
JSP中静态包含和动态包含有什么区别?
- 静态包含在编译时包含内容,动态包含在运行时包含内容。
-
JSP中动态include和静态include有什么区别?
- 同上。
-
什么是Cookie?
- Cookie是服务器发送到客户端并存储在客户端的小段数据,用于跟踪用户会话。
-
什么是Session?
- Session是服务器端存储的用户会话数据,用于跟踪用户状态。
-
Session和Cookie有什么区别?
- Session存储在服务器端,Cookie存储在客户端。Session更安全,但占用服务器资源。
-
什么是B/S和C/S?
- B/S是浏览器/服务器架构,C/S是客户端/服务器架构。
-
B/S和C/S有什么联系与区别?
- B/S基于Web浏览器,C/S基于专用客户端。B/S更易于维护和部署。
-
Servlet接口的层次结构?
Servlet接口是顶层接口,GenericServlet和HttpServlet是其实现类。
-
什么是ServletContext?
ServletContext是Servlet与Servlet容器之间的接口,用于共享数据。
-
Java中如何获取ServletContext实例?
- 使用
getServletContext()方法。
- 使用
-
Java中ServletContext的生命周期?
- 从Web应用启动到关闭。
-
Java中ServletContext应用场景有哪些?
- 共享全局数据、获取资源路径、日志记录等。
-
如何配置Servlet初始化参数?
- 在
web.xml中配置<init-param>。
- 在
-
如何读取Servlet初始化参数?
- 使用
getInitParameter("paramName")。
- 使用
-
Servlet中init()方法执行次数是多少?
- 每个Servlet实例的
init()方法只执行一次。
- 每个Servlet实例的
-
Servlet和CGI有什么区别?
- Servlet在服务器进程中运行,更高效;CGI为每个请求创建新进程,资源消耗大。
-
Java中有哪些会话跟踪技术作用域?
- Cookie、URL重写、隐藏表单字段、Session。
-
JSP中7个动作指令分别是哪些?有什么作用?
jsp:include、jsp:forward、jsp:useBean、jsp:setProperty、jsp:getProperty、jsp:plugin、jsp:param。
-
Java中自定义标签要继承哪个类?
- 继承
TagSupport或BodyTagSupport类。
- 继承
以下是针对您提供的JSP、Web Service等相关问题的详细答案:
- JSP 和 HTML之间有什么关系?
- JSP(JavaServer Pages)是一种动态网页技术,允许在HTML中嵌入Java代码。HTML用于定义网页的结构和内容,而JSP用于生成动态内容。
- JSP 中 <%…%> 和 <%!..%> 有什么区别?
<%...%>用于嵌入Java代码片段,这些代码在每次请求时执行。<%!...%>用于声明类级别的变量和方法,这些声明在JSP页面转换为Servlet时执行。
- JSP 中如何解决中文乱码问题?
- 可以通过设置页面的字符编码来解决中文乱码问题。例如,使用
<%@ page contentType="text/html;charset=UTF-8" %>来设置页面的字符编码为UTF-8。
- JSP 中隐含对象都有哪些?
- JSP中的隐含对象包括
request、response、session、application、out、config、pageContext、page和exception。
- JSP 中内置对象映射表?
- 内置对象映射表通常指这些对象在JSP页面中的使用方式和作用范围。例如,
request对象用于处理客户端请求,response对象用于生成响应。
- JSP 中 config 对象有什么作用?
config对象用于访问Servlet的配置信息,如初始化参数。
- JSP 中 pageContext 对象有什么作用?
pageContext对象提供了对页面所有对象和命名空间的访问,并可以存储和检索属性。
- JSP 中 request 对象有什么作用?
request对象用于获取客户端的请求信息,如表单数据、请求头等。
- JSP 中 response 对象有什么作用?
response对象用于向客户端发送响应,如设置响应头、重定向等。
- JSP 中 session 对象有什么作用?
session对象用于在多个请求之间存储和检索用户会话数据。
- JSP 中 application 对象有什么作用?
application对象用于在整个Web应用程序中共享数据。
- JSP 中 out 对象有什么作用?
out对象用于向客户端输出内容,通常用于生成HTML。
- JSP 中 cookie 对象有什么作用?
cookie对象用于在客户端存储少量数据,通常用于跟踪用户会话。
- JSP 中 exception 对象有什么作用?
exception对象用于处理JSP页面中的异常信息。
- 什么是跨域?
- 跨域是指浏览器从一个域名的网页去请求另一个域名的资源。由于浏览器的同源策略,跨域请求通常会被限制。
- 为什么会出现跨域问题?
- 跨域问题出现是因为浏览器的同源策略,该策略限制了不同源之间的资源访问,以防止安全风险。
- 跨域问题有哪些解决方法?
- 解决方法包括使用CORS(跨域资源共享)、JSONP、代理服务器等。
- Cookie 禁用,Session 还能用吗?
- 如果Cookie被禁用,Session仍然可以使用,但需要通过URL重写或其他方式传递Session ID。
- 什么是 Token?
- Token是一种用于身份验证和授权的令牌,通常用于无状态的身份验证机制。
- session 和 token 有什么区别?
- Session是服务器端存储的用户会话数据,而Token是客户端存储的令牌。Session依赖于服务器状态,而Token是无状态的。
- 什么是 Web Service?
- Web Service是一种通过网络提供服务的软件系统,允许不同应用程序之间进行交互。
- Web Service 的核心组成包括哪些内容?
- 核心组成包括SOAP(简单对象访问协议)、WSDL(Web服务描述语言)和UDDI(通用描述、发现和集成)。
- Web Service 中 SEI 指什么?
- SEI(Service Endpoint Interface)是Web服务的端点接口,定义了服务的方法和参数。
- 如何发布一个 Web Service 服务?
- 可以使用JAX-WS或Spring等框架来发布Web Service服务。
- 如何请求一个 Web Service 服务?
- 可以通过SOAP请求或使用客户端库来请求Web Service服务。
- Web Service 中有哪些常用开发框架?
- 常用框架包括JAX-WS、Apache CXF、Spring WS等。
- 谈谈 MVC 架构模式中的三个角色?
- MVC(Model-View-Controller)模式中的三个角色是Model(模型,处理数据和业务逻辑)、View(视图,显示数据)和Controller(控制器,处理用户输入和更新模型)。
- 如何保存会话状态? 有哪些方式、区别?
- 保存会话状态的方式包括使用Cookie、Session、URL重写等。Cookie存储在客户端,Session存储在服务器端。
- 什么时候用 assert?
assert用于在开发和测试阶段验证程序的假设条件,通常在调试时使用。
- Applet 和 Servlet 有什么区别?
- Applet是运行在客户端浏览器中的Java小程序,而Servlet是运行在服务器端的Java程序。
- 什么是 JSP 指令(Directive)?JSP 中有哪些不同类型的指令?
- JSP指令用于设置页面的属性和行为。常见的指令包括
page、include和taglib。
- 为什么 Java 中接口方法必须使用 public 修饰?
- 接口方法默认是
public的,因为接口的目的是定义公共契约,所有实现类都必须能够访问这些方法。
希望这些答案对您有所帮助-from deepseek!!
更多推荐


所有评论(0)