Shiro
Shiro基础教程Shiro介绍什么ShiroShiro是一个功能强大且易于使用的Java安全框架,它执行身份验证、授权、加密和会话管理。使用Shiro易于理解的API,您可以快速轻松的保护任何应用程序——从最小的移动应用程序到最大的Web和企业应用程序。
Shiro核心架构
认证流程
SubjectSubject即主体,外部应用与subject进行交互,subject记录了当前的操作用户,将用户的概念理解为当前操作的主体。外部程序通过subject进行认证授权,而subject是通过SecurityManager安全管理器进行认证授权
SecurityManagerSecurityManager即安全管理器,对全部的subject进行安全管理,它是shiro的核心,负责对所有的subject进行安全管理。通过SecurityManager可以完成subject的认证、授权等,实质上SecurityManager是通过Authenticator进行认证,通过Authorizer进行授权,通过SessionManager进行会话管理等
SecurityManager是一个接口,继承了Au ...
Python爬虫
Python爬虫
测试数据123456789101112131415161718192021222324252627<!DOCTYPE html><html><head> <meta content="text/html;charset=utf-8" http-equiv="content-type" /> <meta content="IE=Edge" http-equiv="X-UA-Compatible" /> <meta content="always" name="referrer" /> <link href="https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/bdorz/baidu.min.css" rel="stylesheet" type=&qu ...
Python基础
Python基础
简介
人生苦短,我用Python。
Python是一种面向对象的解释型开源免费的计算机程序设计语言,在人工智能、大数据、科学计算、金融、Web开发、系统运维等领域,有数量庞大且功能相对完善的标准库和第三方库,通过对库的调用,能够快速实现不同领域业务的应用开发。
Python设计哲学
优雅
明确
简单
优点
代码量小
维护成本低
编程效率高
简单、易读易懂
Python的变量与数据类型变量变量:被实现为内存地址的符号名称,该内存地址存储了某一种数据类型的数据。
创建变量Python中不需要声明变量,可以直接考虑一个名称,然后将其当做变量。
1height = 1
创建一个类型为整形,值为1的对象。
创建一个变量名”height”
把变量名关联到这个对象中
改变变量的引用12345if __name__ == '__main__': height = 12 print(id(height)) height = "高度" print(id(height))
Python变量是对对象的引用, ...
小白怎么读开源
小白怎么读开源
看简介
看代码的更新频率,计算机语言的更新速度太快,太久远的项目现在可能会更不上时代。
看项目介绍文档,查看项目的技术栈与自己的技术栈是否匹配,尽量选择自己熟悉的技术才能更好的将项目复现。
查看项目的开发文档,查看项目应该怎么启动。(先不用着急查看项目是怎么实现的,最开始我们应该是把项目跑起来)
查看项目的整体结构,一般可以通过模块的名称就可以看出项目的整体架构。
JavaWeb项目可以查看项目的pom文件,查看项目使用的依赖以及子项目。
查看项目的配置文件,查看项目的正常启动需要我们开启那些服务。
总结:
看项目从总体到局部,先看项目的架构=》依赖=》关键的配置文件=》看项目的目录结构。
Vue
Vue基础Vue导入123456789<!-- 在线导入 --><!-- 开发环境版本,包含了用帮助的命令行警告 --><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><!-- 生产环境版本,优化了尺寸和速度 --><script src="https://cdn.jsdelivr.net/npm/vue"></script><!-- 本地导入 --><script src="node_modules/vue/dist/vue.js"></script>
Vue基本语法钩子函数类似于Android中活动的周期函数。
生命周期
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525 ...
SpringSecurity
SpringSecurity从入门到精通课程介绍
0. 简介 Spring Security 是 Spring 家族中的一个安全管理框架。相比与另外一个安全框架Shiro,它提供了更丰富的功能,社区资源也比Shiro丰富。
一般来说中大型的项目都是使用SpringSecurity 来做安全框架。小项目有Shiro的比较多,因为相比与SpringSecurity,Shiro的上手更加的简单。
一般Web应用的需要进行认证和授权。
认证:验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户
授权:经过认证后判断当前用户是否有权限进行某个操作
而认证和授权也是SpringSecurity作为安全框架的核心功能。
1. 快速入门1.1 准备工作 我们先要搭建一个简单的SpringBoot工程
① 设置父工程 添加依赖
12345678910111213141516<parent> <groupId>org.springframework.boot</groupId> <artifactId>sp ...
Redis
📖 本文目录
本篇文章简介
📖 Redis 实战 —— 基础篇
📑 Redis 常见命令
🔖 Redis 数据结构介绍
⭐ 通用命令
⭐ String
❓ Redis 没有类似MySQL 中的 Table 的概念,我们该如何区分不同类型的key呢?
⭐ Hash
⭐ List
⭐ Set
❓ SET 命令的练习
⭐ SortedSet
❓ SortedSet 命令的练习
📑 Redis 的 Java 客户端
🔖 Jedis
⭐ Jedis 线程池
🔖 lettuce
🔖 Redisson
📑 SpringData Redis
🔖 SpringData Redis 快速入门
🔖 SpringDataRedis 的序列化方式
🔖 SpringDataRedis 序列化带来的一些缺点
🔖 封装好的 JsonUtil
本篇文章简介
本篇文章是参阅 黑马程序员Redis入门到实战教程,全面透析redis底层原理 整理的二刷笔记 —— 备战 2022秋招 —— 继续加油努力!!!
📖 Redis 实战 —— 基础篇📑 Redis ...
瑞吉外卖笔记
[toc]
瑞吉外卖笔记原文链接
概述功能架构图
数据库建库建表表说明
开发环境Maven搭建直接创建新工程继承父工程的形式来做这个,这里新建父工程pom文件
server:
port: 9001
spring:
application:
name: ccTakeOut
datasource:
druid:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/ruiji?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root
password: 333
redis:
host: loc ...
SearchProjects部署
下载docker
http://t.csdn.cn/lvRFW
创建自定义网络docker network create sp,才能在内网中使用容器名访问。
使用docker安装mysql:5.7获取镜像:docker pull mysql:5.7
查看镜像列表,检查是否成功拉取:docker images
运行mysql镜像(创建容器):
1docker run --privileged=true --name sp_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=searchprojects -d -v /usr/local/docker_data/mysql/data:/var/lib/mysql -v /usr/local/docker_data/mysql/conf:/etc/mysql/ -v /usr/local/docker_data/mysql/logs:/var/log/mysql mysql:5.7
使用docker inspect sp_mysql查看数据库的ip,并记录。
本地连接数据库,将数据导入。
可能会出现问 ...
HOJ部署
Linux部署CentOs8安装docker出现冲突。解决方法出现以错误,根据提示在命令结尾加上–allowerasing或–nobest后再次执行即可
12yum install -y docker-ce --nobestyum install -y docker-ce --allowerasing
启动docker并设置开机自启
1systemctl start docker && systemctl enable docker
查看Docker是否安装成功
1docker version
安装docker-compose安装docker-compose方法一:
docker-compose版本选择
1234curl -L https://github.com/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-compose123
...