JavaWeb JavaScript ⑩ 日程管理 第一期

news2024/9/20 1:07:38

自我消耗,敏感是我,

明媚是我,

我横跳在不同的情绪中

                        —— 24.8.31

一、登录页及校验

1.校验账号格式

        // 校验账号格式
        function checkUsername(){
            // 定义正则表达式表示字符串规则
            var usernameReg = /^[a-zA-Z0-9]{5,10}$/;
            // 获取用户名输入框的值
            var usernameInput = document.getElementById("usernameInput");
            var username = usernameInput.value;
            // 获取提示信息元素
            var usernameMsg = document.getElementById("usernameMsg");
            // 判断用户名是否符合规则
            if(usernameReg.test(username)){
                // 符合规则,返回true,在页面上提示OK
                usernameMsg.innerText = "OK";
                return true;
            }else{
                // 不符合规则,显示提示信息
                usernameMsg.innerText = "用户名必须为5-10位字母、数字或下划线";
                // 格式有误时,返回false,阻止表单提交
                return false;
            }
        }

2.校验密码格式

        // 校验密码是否符合规则的函数
        function checkUserPwd(){
            // 定义正则表达式表示字符串规则
            var userPwdReg = /^[0-9]{6}$/;
            // 获取密码输入框的值
            var userPwdInput = document.getElementById("userPwdInput");
            var userPwd = userPwdInput.value;
            // 获得格式提示的框
            var userPwdMsg = document.getElementById("userPwdMsg");
            // 判断密码是否符合规则
            if(userPwdReg.test(userPwd)){
                // 符合规则,显示提示信息
                userPwdMsg.innerText = "OK";
                return true;
            }else{
                // 不符合规则,显示提示信息
                userPwdMsg.innerText = "用户名密码格式有误,密码必须是六位数字";
                return false;
            }
        }

3.检验表单函数

        // 校验表单函数
        function checkForm(){
            var flag1 = checkUsername();
            var flag2 = checkUserPwd();

            // 如果两个函数都返回true,说明格式都正确,可以提交表单
            return flag1 && flag2;
        }

4.CSS样式

    <style>
        .ht{
            text-align: center;
            color: cadetblue;
            font-family: 幼圆;
            }

        .tab{
            width: 500px;
            border: 5px solid cadetblue;
            margin: 0px auto;
            border-radius: 5px;
            font-family: 幼圆;
            }
        
        .ltr td{
            border: 1px solid  powderblue;
            }

        .ipt{
            border: 0px;
            width: 50%;
            }

        .btn1{
            border: 2px solid powderblue;
            border-radius: 4px;
            width:60px;
            background-color: antiquewhite;
            }

        #usernameMsg , #userPwdMsg {
            color: gold
            }

        .buttonContainer{
            text-align: center;
            }
    </style>

5.JavaScript代码

    <script>
        // 校验账号格式
        function checkUsername(){
            // 定义正则表达式表示字符串规则
            var usernameReg = /^[a-zA-Z0-9]{5,10}$/;
            // 获取用户名输入框的值
            var usernameInput = document.getElementById("usernameInput");
            var username = usernameInput.value;
            // 获取提示信息元素
            var usernameMsg = document.getElementById("usernameMsg");
            // 判断用户名是否符合规则
            if(usernameReg.test(username)){
                // 符合规则,返回true,在页面上提示OK
                usernameMsg.innerText = "OK";
                return true;
            }else{
                // 不符合规则,显示提示信息
                usernameMsg.innerText = "用户名必须为5-10位字母、数字或下划线";
                // 格式有误时,返回false,阻止表单提交
                return false;
            }
        }

        // 校验密码是否符合规则的函数
        function checkUserPwd(){
            // 定义正则表达式表示字符串规则
            var userPwdReg = /^[0-9]{6}$/;
            // 获取密码输入框的值
            var userPwdInput = document.getElementById("userPwdInput");
            var userPwd = userPwdInput.value;
            // 获得格式提示的框
            var userPwdMsg = document.getElementById("userPwdMsg");
            // 判断密码是否符合规则
            if(userPwdReg.test(userPwd)){
                // 符合规则,显示提示信息
                userPwdMsg.innerText = "OK";
                return true;
            }else{
                // 不符合规则,显示提示信息
                userPwdMsg.innerText = "用户名密码格式有误,密码必须是六位数字";
                return false;
            }
        }

        // 校验表单函数
        function checkForm(){
            var flag1 = checkUsername();
            var flag2 = checkUserPwd();

            // 如果两个函数都返回true,说明格式都正确,可以提交表单
            return flag1 && flag2;
        }
    </script>

6.整体代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .ht{
            text-align: center;
            color: cadetblue;
            font-family: 幼圆;
            }

        .tab{
            width: 500px;
            border: 5px solid cadetblue;
            margin: 0px auto;
            border-radius: 5px;
            font-family: 幼圆;
            }
        
        .ltr td{
            border: 1px solid  powderblue;
            }

        .ipt{
            border: 0px;
            width: 50%;
            }

        .btn1{
            border: 2px solid powderblue;
            border-radius: 4px;
            width:60px;
            background-color: antiquewhite;
            }

        #usernameMsg , #userPwdMsg {
            color: gold
            }

        .buttonContainer{
            text-align: center;
            }
    </style>

    <script>
        // 校验账号格式
        function checkUsername(){
            // 定义正则表达式表示字符串规则
            var usernameReg = /^[a-zA-Z0-9]{5,10}$/;
            // 获取用户名输入框的值
            var usernameInput = document.getElementById("usernameInput");
            var username = usernameInput.value;
            // 获取提示信息元素
            var usernameMsg = document.getElementById("usernameMsg");
            // 判断用户名是否符合规则
            if(usernameReg.test(username)){
                // 符合规则,返回true,在页面上提示OK
                usernameMsg.innerText = "OK";
                return true;
            }else{
                // 不符合规则,显示提示信息
                usernameMsg.innerText = "用户名必须为5-10位字母、数字或下划线";
                // 格式有误时,返回false,阻止表单提交
                return false;
            }
        }

        // 校验密码是否符合规则的函数
        function checkUserPwd(){
            // 定义正则表达式表示字符串规则
            var userPwdReg = /^[0-9]{6}$/;
            // 获取密码输入框的值
            var userPwdInput = document.getElementById("userPwdInput");
            var userPwd = userPwdInput.value;
            // 获得格式提示的框
            var userPwdMsg = document.getElementById("userPwdMsg");
            // 判断密码是否符合规则
            if(userPwdReg.test(userPwd)){
                // 符合规则,显示提示信息
                userPwdMsg.innerText = "OK";
                return true;
            }else{
                // 不符合规则,显示提示信息
                userPwdMsg.innerText = "用户名密码格式有误,密码必须是六位数字";
                return false;
            }
        }

        // 校验表单函数
        function checkForm(){
            var flag1 = checkUsername();
            var flag2 = checkUserPwd();

            // 如果两个函数都返回true,说明格式都正确,可以提交表单
            return flag1 && flag2;
        }
    </script>
</head>
<body>
    <h1 class="ht">欢迎使用日程管理系统</h1>
    <h3 class="ht">请登录</h3>
    <form method="post" action="/user/login" onsubmit="return checkForm()">
        <table class="tab" cellspacing="0px">
            <tr class="ltr">
                <td>请输入账号</td>
                <td>
                    <input class="ipt" type="text" id="usernameInput" name="username" onblur="checkUsername()">
                    <span id="usernameMsg" class="=msg"></span>
                </td>
            </tr>
            <tr class="ltr">
                <td>请输入密码</td>
                <td>
                    <input class="ipt" type="password" name="userPwd" id="userPwdInput" onblur="checkUserPwd()">
                    <span id="userPwdMsg"></span>
                </td>
            </tr>
            <tr class="ltr">
                <td colspan="2" class="buttonContainer">
                    <input class="btn1" type="submit" value="登录">
                    <input class="btn1" type="reset" value="重置">
                    <button class="btn1"><a href="regist.html">去注册</a></button>
                </td>
            </tr>
        </table>
    </form>
</body>
</html>

7.效果展示

二、注册页及校验

1.校验账号格式

        // 验证账号格式
        function checkUsername(){
            var usernameReg = /^[a-zA-Z0-9]{5,10}$/;
            var usernameInput = document.getElementById("usernameInput")    ;
            var username = usernameInput.value;
            var usernameMsg = document.getElementById("usernameMsg");
            if(!usernameReg.test(username)){
                usernameMsg.innerText = "账号格式不正确";
                return false;
            }else{
                usernameMsg.innerText = "OK";
                return true;
            }
        }

2.校验密码格式

        // 验证密码格式
        function checkUserPwd(){
            var userPwdReg = /^\d{6}$/;
            // 获取密码输入框的值
            var userPwdInput = document.getElementById("userPwdInput")
            var userPwd = userPwdInput.value;
            // 获取密码提示信息
            var userPwdMsg = document.getElementById("userPwdMsg");
            if(!userPwdReg.test(userPwd)){
                userPwdMsg.innerText = "账号格式不正确";
                return false;
            }else{
                // 符合规则,打印提示信息
                userPwdMsg.innerText = "OK";
                return true;
            }
        }

3.校验确认密码格式

        // 验证确认密码
        function checkReUserPwd(){
            // 密码格式验证
            var userPwdReg = /^\d{6}$/;
            // 再次输入的密码
            var reUserPwdInput = document.getElementById("reUserPwdInput")
            var reUserPwd = reUserPwdInput.value;
            var reUserPwdMsg = document.getElementById("reUserPwdMsg");
            if(!userPwdReg.test(reUserPwd)){
                reUserPwdMsg.innerText = "密码格式不正确";
                return false;
            }
            // 获得上次输入的密码
            var userPwdInput = document.getElementById("userPwdInput")
            var userPwd = userPwdInput.value;
            // 判断两次输入的密码是否一致
            if(reUserPwd != userPwd){
                reUserPwdMsg.innerText = "两次输入的密码不一致";
                return false;
            }else{
                reUserPwdMsg.innerText = "OK";
                return true;
            }
        }

4.验证表单函数

        // 验证表单函数
        function checkForm(){
            var flag1 = checkUsername();
            var flag2 = checkUserPwd();
            var flag3 = checkReUserPwd();

            return flag1 && flag2 && flag3;
        }

5.CSS样式

    <style>
        .ht{
            text-align: center;
            color:cadetblue;
            font-family: 幼圆;
        }

        .tab{
            width: 500px;
            border: 5px solid cadetblue;
            margin: 0px auto;
            border-radius: 5px;
            font-family: 幼圆;
        }

        .ltr td{
            border: 1px solid powderblue;
        }

        .ipt{
            bottom: 0px;
            width: 50%;
        }

        .btn1{
            border: 2px solid powderblue;
            border-radius: 4px;
            width: 60px;
            background: antiquewhite;
        }

        .msg{
            color: gold;
        }

        .buttonContainer{
            text-align: center;
        }

    </style>

6.JavaScript代码

    <script>
        // 验证账号格式
        function checkUsername(){
            var usernameReg = /^[a-zA-Z0-9]{5,10}$/;
            var usernameInput = document.getElementById("usernameInput")    ;
            var username = usernameInput.value;
            var usernameMsg = document.getElementById("usernameMsg");
            if(!usernameReg.test(username)){
                usernameMsg.innerText = "账号格式不正确";
                return false;
            }else{
                usernameMsg.innerText = "OK";
                return true;
            }
        }

        // 验证密码格式
        function checkUserPwd(){
            var userPwdReg = /^\d{6}$/;
            // 获取密码输入框的值
            var userPwdInput = document.getElementById("userPwdInput")
            var userPwd = userPwdInput.value;
            // 获取密码提示信息
            var userPwdMsg = document.getElementById("userPwdMsg");
            if(!userPwdReg.test(userPwd)){
                userPwdMsg.innerText = "账号格式不正确";
                return false;
            }else{
                // 符合规则,打印提示信息
                userPwdMsg.innerText = "OK";
                return true;
            }
        }

        // 验证确认密码
        function checkReUserPwd(){
            // 密码格式验证
            var userPwdReg = /^\d{6}$/;
            // 再次输入的密码
            var reUserPwdInput = document.getElementById("reUserPwdInput")
            var reUserPwd = reUserPwdInput.value;
            var reUserPwdMsg = document.getElementById("reUserPwdMsg");
            if(!userPwdReg.test(reUserPwd)){
                reUserPwdMsg.innerText = "密码格式不正确";
                return false;
            }
            // 获得上次输入的密码
            var userPwdInput = document.getElementById("userPwdInput")
            var userPwd = userPwdInput.value;
            // 判断两次输入的密码是否一致
            if(reUserPwd != userPwd){
                reUserPwdMsg.innerText = "两次输入的密码不一致";
                return false;
            }else{
                reUserPwdMsg.innerText = "OK";
                return true;
            }
        }

        // 验证表单函数
        function checkForm(){
            var flag1 = checkUsername();
            var flag2 = checkUserPwd();
            var flag3 = checkReUserPwd();

            return flag1 && flag2 && flag3;
        }

    </script>

7.整体代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .ht{
            text-align: center;
            color:cadetblue;
            font-family: 幼圆;
        }

        .tab{
            width: 500px;
            border: 5px solid cadetblue;
            margin: 0px auto;
            border-radius: 5px;
            font-family: 幼圆;
        }

        .ltr td{
            border: 1px solid powderblue;
        }

        .ipt{
            bottom: 0px;
            width: 50%;
        }

        .btn1{
            border: 2px solid powderblue;
            border-radius: 4px;
            width: 60px;
            background: antiquewhite;
        }

        .msg{
            color: gold;
        }

        .buttonContainer{
            text-align: center;
        }

    </style>

    <script>
        // 验证账号格式
        function checkUsername(){
            var usernameReg = /^[a-zA-Z0-9]{5,10}$/;
            var usernameInput = document.getElementById("usernameInput")    ;
            var username = usernameInput.value;
            var usernameMsg = document.getElementById("usernameMsg");
            if(!usernameReg.test(username)){
                usernameMsg.innerText = "账号格式不正确";
                return false;
            }else{
                usernameMsg.innerText = "OK";
                return true;
            }
        }

        // 验证密码格式
        function checkUserPwd(){
            var userPwdReg = /^\d{6}$/;
            // 获取密码输入框的值
            var userPwdInput = document.getElementById("userPwdInput")
            var userPwd = userPwdInput.value;
            // 获取密码提示信息
            var userPwdMsg = document.getElementById("userPwdMsg");
            if(!userPwdReg.test(userPwd)){
                userPwdMsg.innerText = "账号格式不正确";
                return false;
            }else{
                // 符合规则,打印提示信息
                userPwdMsg.innerText = "OK";
                return true;
            }
        }

        // 验证确认密码
        function checkReUserPwd(){
            // 密码格式验证
            var userPwdReg = /^\d{6}$/;
            // 再次输入的密码
            var reUserPwdInput = document.getElementById("reUserPwdInput")
            var reUserPwd = reUserPwdInput.value;
            var reUserPwdMsg = document.getElementById("reUserPwdMsg");
            if(!userPwdReg.test(reUserPwd)){
                reUserPwdMsg.innerText = "密码格式不正确";
                return false;
            }
            // 获得上次输入的密码
            var userPwdInput = document.getElementById("userPwdInput")
            var userPwd = userPwdInput.value;
            // 判断两次输入的密码是否一致
            if(reUserPwd != userPwd){
                reUserPwdMsg.innerText = "两次输入的密码不一致";
                return false;
            }else{
                reUserPwdMsg.innerText = "OK";
                return true;
            }
        }

        // 验证表单函数
        function checkForm(){
            var flag1 = checkUsername();
            var flag2 = checkUserPwd();
            var flag3 = checkReUserPwd();

            return flag1 && flag2 && flag3;
        }

    </script>
</head>
<body>
    <h1 class="ht">欢迎使用日程管理系统</h1>
    <h3 class="ht">请注册</h3>
    <form method="post" action="/user/regist" onsubmit="return checkForm()">
        <table class="tab" cellspacing="0px">
            <tr class="ltr">
                <td>请输入账号</td>
                <td>
                    <input class="ipt" type="text" name="username" id="usernameInput" onblur="checkUsername()">
                    <span id="usernameMsg" class="msg"></span>
                </td>
            </tr>
            <tr class="ltr">
                <td>请输入密码</td>
                <td>
                    <input class="ipt" type="password" name="userPwd" id="userPwdInput" onblur="checkUserPwd()">
                    <span id="userPwdMsg" class="msg"></span>
                </td>
            </tr>
            <tr class="ltr">
                <td>确认密码</td>
                <td>
                    <input type="password" class="ipt" id="reUserPwdInput" onblur="checkReUserPwd()">
                    <span id="reUserPwdMsg" class="msg"></span>
                </td>
            </tr>
            <tr class="ltr">
                <td colspan="2" class="buttonContainer">
                    <input type="submit" class="btn1" value="注册">
                    <input type="reset" class="btn1" value="重置">
                    <button class="btn1"><a href="login.html">去登陆</a></button>
                </td>
            </tr>
        </table>
    </form>
</body>
</html>

8.效果展示

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2095838.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

96.WEB渗透测试-信息收集-Google语法(10)

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a; 易锦网校会员专享课 上一个内容&#xff1a;95.WEB渗透测试-信息收集-Google语法&#xff08;9&#xff09; • site &#xff1a; x…

【硬件操作入门】3--同步与异步、半双工传输、UART硬件介绍、bps速率计算

【硬件操作入门】3–同步与异步、半双工传输、UART硬件介绍、bps速率计算 文章目录 【硬件操作入门】3--同步与异步、半双工传输、UART硬件介绍、bps速率计算一、同步与异步1.1. 概念1.2 同步信号1.3 异步信号1.4 举个例子&#xff1a;红外遥控器解码器&#xff08;异步&#x…

一分钟学会系列-1电烙铁(焊台)

目录&#xff1a; ‌1、概述 2、电烙铁的种类 3、焊接步骤 4、电烙铁的保养 ‌1、概述 电烙铁‌是一种电子制作和电器维修中常用的工具&#xff0c;主要用于焊接元件及导线。使用电烙铁时&#xff0c;需要注意安全&#xff0c;并采取适当的预防措施&#xff0c;如使用风扇…

最新ssl证书在线申请源码+网站ICP备案查询源码

最新ssl证书在线申请源码网站ICP备案查询源码 经过精心调试和修复&#xff0c;我们对源码进行了优化&#xff0c;确保了证书价格的准确显示。现在&#xff0c;您可以放心使用我们的在线生成网站源码&#xff0c;完整地展示证书价格&#xff0c;并在生成证书时提供准确的价格计…

SQL-函数

1、字符串函数 # 字符函数 select concat(hello , mysql!); select lower(HELLO); select upper(hello); select lpad(01,5,-);# 左填充 select rpad(01,5,-);# 右填充 select trim( hello mysql ! );# 去除前后空格 select substring(hello mysql!,1,7);# 截取一部分字符前7…

【教学类-35-21】20240901 中2班描字帖(学号+姓名、虚拟姓名、杨任东竹石体 Regular)

背景需求&#xff1a; 8月底通知我成为中2班的班主任&#xff0c;为了快速识别幼儿的脸、姓名、学号&#xff0c;再次制作描字帖&#xff0c;并拍照。 最近做的一份字帖是中4班描字帖 【教学类-35-20】20240328 中4班描字帖&#xff08;学号姓名 A4竖版2份 横面&#xff09;…

--- 数据结构 链表 --- java

与顺序表相比&#xff0c;链表的最大优点就是不会存在空间的浪费 链表是通过将一个一个储存数据的节点&#xff08;对象&#xff09;连起来&#xff08;通过记录下他们的地址&#xff09;&#xff0c;这些数据在逻辑上就是线性的&#xff0c;但在物理上不是&#xff0c;因为地…

[Leetcode 216][Medium]组合总和 III--回溯(组合问题)

目录 一、题目描述 二、整体思路 三、代码 一、题目描述 原题地址 二、整体思路 对于组合问题&#xff0c;首先要想到回溯法。那么可以根据回溯法模版进行设计。 void backtrace(元素){if(满足题目要求的条件){保存目前路径/状态/结果;return;}for循环,往目前状态相邻的所…

9-8 束搜索

贪心搜索 穷举搜索 束搜索 小结 序列搜索策略包括贪心搜索、穷举搜索和束搜索。 贪心搜索所选取序列的计算量最小&#xff0c;但精度相对较低。 穷举搜索所选取序列的精度最高&#xff0c;但计算量最大。 束搜索通过灵活选择束宽&#xff0c;在正确率和计算代价之间进行权衡…

栈和队列——用队列实现栈

题目中给出&#xff0c;让我们应用两个队列实现栈&#xff0c;首先我们先来想一下&#xff0c;栈是先进后出&#xff0c;队列是先进先出。所以我们就需要应用两个队列来回导才能实现栈的特点。因为这道题是基于队列来实现的&#xff0c;所以在下方若有看不懂的函数名称可以去栈…

Java 入门指南:Java 并发编程 —— Synchronized 实现悲观锁(Pessimistic Locking)

悲观锁 悲观锁&#xff08;Pessimistic Locking&#xff09;是一种悲观的并发控制机制&#xff0c;它基于悲观的假设&#xff0c;即并发冲突会时常发生&#xff0c;因此在访问共享资源&#xff08;如数据库记录或共享变量&#xff09;之前&#xff0c;会先获取独占性的锁&…

数组结构第一周做题总结_基础练习

错误的原因是写了无参构造函数但是没有实现 id:8 A. 月份查询&#xff08;指针数组&#xff09; 题目描述 已知每个月份的英文单词如下&#xff0c;要求创建一个指针数组&#xff0c;数组中的每个指针指向一个月份的英文字符串&#xff0c;要求根据输入的月份数字输出相应的…

盘点java8 stream中隐藏的函数式接口

shigen坚持更新文章的博客写手&#xff0c;记录成长&#xff0c;分享认知&#xff0c;留住感动。个人IP&#xff1a;shigen 提到函数式接口&#xff0c;最常见的就是lambda表达式&#xff0c;IDEA也有智能的提示&#xff1a; 最后改成这样的就是最简洁的、IDEA希望的风格&#…

机器学习:基于机器学习的中文评论情感分析

通过机器学习技术对中文评论进行情感分析。我们使用了jieba进行中文分词&#xff0c;移除了停用词&#xff0c;并利用词袋模型&#xff08;Bag of Words&#xff09;和多项式朴素贝叶斯分类器对评论进行了情感分类。实验结果表明&#xff0c;该模型在测试集上达到了较高的准确率…

如何构建高效的中药材进存销管理系统?——运用Java SpringBoot和Vue实现库存实时监控,简化销售流程,提升药材管理效率。

&#x1f34a;作者&#xff1a;计算机毕设匠心工作室 &#x1f34a;简介&#xff1a;毕业后就一直专业从事计算机软件程序开发&#xff0c;至今也有8年工作经验。擅长Java、Python、微信小程序、安卓、大数据、PHP、.NET|C#、Golang等。 擅长&#xff1a;按照需求定制化开发项目…

前端宝典二十一:前端异步编程规范手写Promise、async、await

本文主要探讨前端异步编程的处理方式、处理场景&#xff0c;并且手写Promise的全家桶&#xff0c;介绍async、await方法使用 一、异步处理方式有&#xff1a; 1. 回调函数 function fetchDate(callback) {setTimeout(() > {const date new Date();callback(date);}, 100…

SpringSecurity Oauth2 - 密码模式完成身份认证获取令牌 [自定义UserDetailsService]

文章目录 1. 授权服务器2. 授权类型1. Password (密码模式)2. Refresh Token&#xff08;刷新令牌&#xff09;3. Client Credentials&#xff08;客户端凭证模式&#xff09; 3. AuthorizationServerConfigurerAdapter4. 自定义 TokenStore 管理令牌1. TokenStore 的作用2. Cu…

嵌入式Linux C应用编程指南-高级I/O(速记版)

第十三章 高级I/O 13.1 非阻塞I/O 阻塞其实就是进入了休眠状态&#xff0c;交出了 CPU 控制权。比如 wait()、pause()、sleep()等函数都会进入阻塞。 阻塞式 I/O 顾名思义就是对文件的 I/O 操作&#xff08;读写操作&#xff09;是阻塞式的&#xff0c;非阻塞式 I/O 同理就是对…

SpringSecurity Oauth2 - 访问令牌续期

文章目录 1. 访问令牌的续期2. CustomUserDetailsService3. 配置 AuthorizationServerEndpointsConfigurer4. 测试项目 1. 访问令牌的续期 在Spring Security OAuth2中&#xff0c;访问令牌的续期通常是通过使用**刷新令牌&#xff08;Refresh Token&#xff09;**来实现的。当…

走进酒厂,探寻白酒酿造的奥秘

在华夏大地深处&#xff0c;隐藏着一座座充满神秘色彩的酒厂&#xff0c;它们是白酒酿造的地方&#xff0c;也是中华酒文化的摇篮。今天&#xff0c;就让我们一起走进这些酒厂&#xff0c;探寻白酒酿造的奥秘&#xff0c;感受豪迈白酒&#xff08;HOMANLISM&#xff09;的不同魅…