
JavaWeb
文章平均质量分 86
Zero摄氏度
细致入微。
展开
-
Web应用登录验证的几种方式
1、HTTP 是无状态的,为了维持前后请求,需要前端存储标记-----cookie2、cookie 是一种完善的标记方式,通过 HTTP 头或 js 操作,有对应的安全策略,是大多数状态管理方案的基石3、session 是一种状态管理方案,前端通过 cookie 存储 id,后端存储数据,但后端要处理分布式问题4、token 是另一种状态管理方案,token 的编码技术,通常基于 base64,或增加加密算法防篡改;jwt 是一种成熟的编码方案,并且JWT实现了无状态登录,相较于传统的有状态登录原创 2023-08-25 10:38:36 · 5813 阅读 · 0 评论 -
Java Web常见面试题
第一次创建session的时候,服务端会在HTTP协议中告诉客户端,**需要在cookie里面记录一个session ID ** ,以后每次请求把这个session ID发送到服务器,这样服务器就能识别这个用户了。当服务器集群的时候,如大型的网站,会有专门的session服务器集群,用来保存用户会话,这个时候session是放在内存的,使用一些缓存服务来放session。HTTP协议时无状态的协议,所以服务端需要记录用户的状态时,就需要用某种机制来识别具体的用户,这个机制就是session。原创 2023-08-16 19:58:40 · 434 阅读 · 0 评论 -
你了解单点登录吗?
提高用户效率,用户不再被多次登录困扰,也不需要记住多个ID和密码。用户登录时,输入用户名密码等信息,验证数据库后,登录成功,将会话信息存入分布式session(redis中保存,设置过期时间)会返回ticket保存在cookie中,用户访问其他服务时携带cookie(其实主要是ticket),成功访问。使用Cookie作为媒介,存放用户凭证,用户登录父应用之后,应用返回一个加密的cookie,当用户访问子应用的时候,携带上这个cookie,授权应用解密cookie并进行校验,校验通过则登录当前用户。原创 2023-08-16 17:16:17 · 187 阅读 · 0 评论 -
JDBC操作技术和连接池详解
通过建立一个数据库连接池以及一套连接使用、分配、管理策略,使得该连接池中的连接可以得到高效、安全的复用,避免数据库连接频繁建立、关闭的开销 。(如果没有连接池,那我们每请求连接一次数据库都要创建一个连接,并且这个连接得不到复用,连接关闭就直接销毁)原创 2023-08-02 09:38:28 · 682 阅读 · 0 评论 -
监听器Listener详解
tomcat一启动,先创建出监听器,对application的创建和销毁做监听。当application一创建,被监听器监听到,就调用contextInitialized()方法;实现的两个接口,一个是为了实现对application状态监听的方法,一个是为了实现对applciation属性的变化监听的方法。通过实现ServletContextAttributeListener 的三个方法,对applcation的属性变化做监听。来监听session的创建。原创 2023-07-30 21:37:12 · 253 阅读 · 0 评论 -
Filter详解
tomcat一启动,就会创建Filter对象,然后FilterConfig封装配置文件的过滤器参数注入到init方法中,通过init方法,将config里的参数读取出来,赋值给实例全局变量encoding,可以提供给其他方法使用。不可以,这是在实现Filter接口,实现的方法的参数签名都是在接口中定义好了的规范,规范里就是ServletRequest。----->请求下传,后面是结果拦截。,不存在线程安全问题;,直接到结果拦截,但是http里压根什么都没拿到,拿不到请求的数据,于是返回浏览器啥也不显示。原创 2023-07-30 21:32:40 · 311 阅读 · 0 评论 -
EL表达式详解
而字符串型 “30”和int型5是不能比较的,EL表达式根据上下文,会将“30”转换为整型30和来5比较,返回true。通过s1所指向的学生对象的地址,调用getTea()方法,得到老师对象的地址,再通过其调用getTname()方法,最终得到老师的名字。el表达式先从page内置对象里找“name”的属性值,没找到,再到request里找,找到了,返回属性值 “zs”;a的值是字符串,而b的值是整型(在进行运算时,Integer类型会进行自动拆箱,调用valueOf方法),,这就是EL表达式的深度导航。原创 2023-07-30 21:29:22 · 2005 阅读 · 0 评论 -
Servlet详解
1、Java支持动态网页的技术:直接编写Java,利用CGI的方式与WebServer沟通2、servlet在MVC中相当于控制层的作用。Servlet的作用:- CGI:通用网关接口:是从WEB容器中取得数据(内置对象)的能力- 创建表单bean、收集表单数据- 分析请求,分发请求- 根据业务层返回的转向信息,转到视图组件原创 2023-07-30 21:24:28 · 278 阅读 · 0 评论 -
JavaBean
1、JavaBean就是MVC设计模式中的model层2、种类:数据bean(pojo),逻辑bean封装表单里的参数,属性名字、个数和类型要和表单的参数的名字、个数和类型一致。封装外部的信息,主要是封装数据库的记录。要求属性名字、个数、类型 和数据库里的字段名字、个数、类型一致。又叫实体类又叫业务层,作用是完成对请求的操作又叫dao或数据访问层。作用是完成对外部数据操作的封装3、Javabean优点。原创 2023-07-30 21:15:41 · 2687 阅读 · 0 评论 -
JavaWeb基础
当表单什么都不提交时,对于单值请求,提交空白,会自动填充空字符串,而对于多值请求,因为要设到数组中,数组中如果什么都没有,就是null(空的),当request获取参数的时候,因为values为空,于是不会创建字符串数组对象,返回的是一个null,在遍历时,要调用inst1的属性length,而inst1是null,就会。像上面的访问web项目,网址直接暴露了项目的所在位置和项目名,通过配置虚拟目录,可以将项目放在电脑本地的任何一个位置,并且为项目名设置一个虚拟的项目名,访问的时候用这个虚拟名字。原创 2023-07-24 08:53:48 · 751 阅读 · 0 评论 -
Maven详解
Maven详解1、Maven是什么在javaweb开发中,需要使用大量的jar包,我们要手动去导入。需要一个工具来自动导入和配置这个jar包Maven项目架构管理工具:用来方便导入jar包核心思想:约定大于配置:有约束,不要去违反。Maven会规定好你该如何去编写我们的java代码,必须按照这个规范来2、下载安装Maven官网:https://maven.apache.org/下载完成后解压3、配置环境电脑-高级设置-环境变量添加环境变量:MAVEN_HOME:原创 2022-03-31 18:02:44 · 99 阅读 · 0 评论