Javaweb面试题
Javaweb面试题
复活的夜神月
这个作者很懒,什么都没留下…
展开
-
JSP 有哪些内置对象?作用分别是什么?
4. application:代表Web应用程序,开发者可以通过它获取或设置Web应用程序全局数据(即在整个Web应用程序生命周期内都可访问的数据),例如数据库连接池、系统配置信息等。1. request:代表客户端HTTP请求,开发者可以通过它来获取客户端请求的信息,例如请求参数、请求头、HTTP请求方法等,也可以通过它将请求数据传递到其他组件。5. page:代表当前JSP页面,开发者可以通过它获取JSP页面相关的信息,例如JSP页面名称、JSP页面路径等。原创 2023-06-13 09:12:33 · 459 阅读 · 0 评论 -
spring mvc 和 struts 的区别是什么?
1. 架构设计方面:Spring MVC采用的是一种比较轻量化的方式,整体设计更加简洁、灵活,因为其本身是Spring框架的一部分,所以它可以集成Spring框架中的其他模块(比如Spring AOP和Spring IOC),为Web应用程序提供额外的功能,而 Struts 的核心部分更加臃肿,更为传统,具有更多的配置和框架文件。3. 性能方面:Spring MVC 代码量少,运行时间快,由于其轻量化的设计,因此Spring MVC的性能通常比 Struts 的性能要好一些。原创 2023-06-13 10:59:55 · 851 阅读 · 0 评论 -
什么是 XSS 攻击,如何避免?
XSS(Cross-Site Scripting)攻击是一种常见的网络安全漏洞,攻击者通过在网站或应用程序中注入恶意代码,如 JavaScript、VBScript、HTML 等,当其他用户在访问该页面时会执行这些恶意代码,达到窃取、篡改数据等恶意行为的目的。总之,避免 XSS 攻击的关键在于对用户输入进行过滤和验证,并使用 HTTPOnly Cookie 和遵循安全编程标准等技术,只有以此为基础的安全编程思路,才能有效保护应用程序的安全性。不应依赖客户端环境,应使用严格的输入验证和输出编码技术。原创 2023-06-13 10:59:59 · 333 阅读 · 0 评论 -
什么是 CSRF 攻击,如何避免?
CSRF(Cross-Site Request Forgery)攻击是一种利用受害者的身份进行非法操作的网络攻击,攻击者通过欺骗用户在已登录的网站中执行恶意操作,例如在不知情的情况下转账、发帖等,而用户并未意识到这些操作是被攻击者所进行的。总之,避免 CSRF 攻击的关键在于实现双重身份验证,启用 CSRF 令牌和检查来源头部,并避免信任提交以及使用同源策略等技术,只有以此为基础的安全编程思路,才能有效保护应用程序的安全性。4. 避免信任提交:不能相信来自任何用户的提交请求,应该对每个请求进行验证和分析。原创 2023-06-13 11:02:06 · 278 阅读 · 0 评论 -
session 和 cookie 有什么区别?
2. 存储内容不同:Cookie 通常存储一些客户端比较少变的信息,比如用户账号、密码等,而 Session 主要用于存储会话状态(Session State),比如被浏览的页面、登录信息等。3. 存储安全级别不同:Cookie 存储在客户端,它的内容容易被窃听或伪造,因此 Cookie 通常用来存储一些不敏感的数据;1. 存储位置不同:Cookie 存储于客户端(浏览器),而 Session 存储于服务器端,对于服务器端存储的数据,Session 以唯一标识符构成的 Cookie 来进行跟踪。原创 2023-06-13 10:53:14 · 286 阅读 · 0 评论 -
session 的工作原理?
Session 是保存在服务器端的一组与用户相关的数据,它使用一种称为会话跟踪的技术,可以在多个请求之间存储和共享数据。需要注意的是,Session 的过期时间一般会设置,一旦过期,Session 在服务器端就会被销毁。1. 当用户首次访问 Web 应用时,Web 应用会自动生成一个唯一的 Session ID,将这个 Session ID 以 Cookie 的形式返回给浏览器。3. 当用户访问 Web 应用中的其他页面时,浏览器会自动将 Cookie 中的 Session ID 发送给服务器端。原创 2023-06-13 10:57:00 · 1185 阅读 · 0 评论 -
说一下 JSP 的 4 种作用域?
在ServletContext对象中存储的属性或在JSP页面内使用application作用域存储的变量可以存储在Application Scope中。在请求中使用Session对象中的属性或在JSP页面内使用session作用域存储的变量可以存储在Session Scope中。2. Request Scope(请求作用域):Request Scope是在一次HTTP请求中有效的作用域,适合存储在一次请求的多个页面或组件中需要共享的数据。在JSP中,作用域是指变量的可见范围和存储位置。原创 2023-06-13 10:40:05 · 462 阅读 · 0 评论 -
假定载客户端禁止 cookie下session如何使用?session与cookie的区别是什么?
session 将数据存储在服务器端,使用 cookie 的方式传递一个标识符,而 cookie 则将数据存储在客户端,通过浏览器将数据传递到服务器端。如果客户端禁止使用 cookie,session 可以使用 URL 重写来传递会话标识符(session ID),即在每个 URL 中添加 session ID 参数来传递会话信息。这样可以解决客户端禁用 cookie 的问题,但也可能带来安全问题,因为 session ID 可能会暴露在 URL 中,容易被窃听和劫持。原创 2023-06-13 10:57:17 · 319 阅读 · 0 评论 -
如何避免 SQL 注入?
1. 使用参数化的 SQL 语句:通过使用参数化的 SQL 语句,可以避免拼接字符串产生的 SQL 注入攻击,具体实现可以使用 PreparedStatement 对象,将参数化之后的 SQL 语句与参数一起传递给数据库,这样可以将参数转义后传递给数据库,防止 SQL 注入攻击。总之,避免 SQL 注入攻击的关键在于使用正确的 SQL 命令和正确的 SQL 参数化技术,以及数据验证和输入验证,服务端必要的安全配置,只有以此为基础的安全编程思路才能有效避免此类攻击。原创 2023-06-13 11:00:52 · 1470 阅读 · 0 评论 -
JSP 和 servlet 有什么区别?各自特点是什么?
JSP和Servlet的最大区别在于,JSP是一种将格式化HTML代码和Java代码混合在一起的技术,而Servlet则是一种通过Java代码来生成HTML页面的技术。换句话说,JSP是一种模板技术,它允许Java代码和HTML代码混合在一起,而Servlet是一种纯Java代码技术,其中代码主要用于生成HTML页面。JSP(JavaServer Pages)和Servlet都是Java Web开发中的重要技术,它们都能够用来动态生成Web页面,但是它们的工作方式和定位不同,各有优势。原创 2023-06-13 09:09:32 · 1667 阅读 · 0 评论