Maven指定JDK 在使用 Maven 管理 Java 项目时,有时需要指定使用特定的 JDK 版本。这通常是因为项目需要与特定版本的 JDK 兼容,或者在不同的开发环境中需要确保使用正确的 JDK 版本。通常来说在IDEA工具中设置了正确的JDK版本,使用IDEA编译也不会有任何异常,但是使用mvn命令编译时则会出现异常。
Spring Security + OAuth2.0 协议为用户资源的授权提供了一个安全的、开放而又简易的标准(开放授权标准)。它允许用户授权第三方应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方应用或分享他们数据的所有内容。
Spring Security+JWT 动态鉴权(6) Component@Slf4j@Autowired@Override@Override> clazz) {@Overridelog.info("{} 对应的角色。//如果通过url关联权限为空,统一按没权限处理return 0;throw new AccessDeniedException("权限不足,无法访问");return 0;// 获取用户拥有的权限信息// 这里判断用户拥有的角色和该url需要的角色是否有匹配break;
Spring Security+JWT (5) JWT字符串,字符之间通过"."分隔符分为三个子串。 每一个子串表示了一个功能块,总共有以下三个部分:JWT 头、有效载荷和签名。头部:JWT 头部分是一个描述 JWT 元数据的 JSON 对象,主要设置一些规范信息,签名部分的编码格式就在头部中声明。载荷:token中存放有效信息的部分,是 JWT 的主体内容部分,是一个 JSON 对象,包含需要传递的数据。比如用户名,用户角色,过期时间等,但是不要放密码,会泄露!1. 基本流程 认证:通过自定义一个用户名和密码登录的过滤器JwtT
SpringBoot中@Import和@ImportResource和@PropertySource PropertySource是引入自定义配置文件(yml或properties),用于spring boot 配置文件(yml或properties)与实体属性映射。@ImportResource是引入spring配置文件.xml,它导入的是使用xml配置文件注入的对象。
Eureka和Zookeeper 特性ZooKeeperEureka主要功能分布式协调服务(锁、配置、同步等)服务发现和注册数据一致性强一致性(CP)弱一致性(AP)使用场景分布式系统的协调、配置管理、锁服务,它为 Hadoop、Hbase、Kafka 等知名分布式系统提供支持。云原生微服务架构中的服务发现。主要用于服务发现,它是 Spring Cloud 体系中的核心组件之一,与 Spring Boot 微服务应用框架紧密集成,提供服务注册与发现的功能。高可用性多副本数据复制多实例同步,自我保护机制。
Linux 命令集合 linux系统,主要分Debian系和RedHat系,还有其它自由的发布版本。1、Debian系主要有Debian,Ubuntu,Mint等及其衍生版本;2、RedHat系主要有RedHat,Fedora,CentOs等,3、其它有Slackware,Gentoo,Arch linux,LFS,SUSE等。4、如果开发用,推荐redhat系,业内公司的服务器多用centos,考虑到平时使用,那么就选择fedora,可以选择最新的发行版。
JAVA 异步编程(线程安全)二 多线程以及多进程改善了系统资源的利用率并提高了系统 的处理能力。然而,并发执行也带来了新的问题——死锁。所谓死锁是指多个线程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进。死锁是指两个或两个以上的线程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。
JAVA 异步编程(异步,线程,线程池)一 虽然Thread可以创建线程,但是线程的创建销毁不能很好的控制,就会导致资源耗尽的风险,所以线程资源尽量通过线程池提供,不在应用中自行显示的创建线程,一方面是线程的创建更加规范,可以合理控制开辟线程的数量;另一方面线程的细节管理交给线程池处理,优化了资源的开销。
docker 容器设置中文环境 默认情况下: 如果没有zh_CN.utf8就安装。方式2:1.3 写入 bash.bashrc 文件1.4 写入 profile 文件1.5 重启容器2. dockerfile中设置
认证和授权详解 :用来验证某个用户是否具有访问系统的权限。如果认证通过,该用户就可以访问系统,从而创建、修改、删除、查询平台支持的资源。):用来验证某个用户是否具有访问某个资源的权限。如果授权通过,该用户就能对资源做 CRUD 等操作。
SpringCloud Netflix和SpringCloud Alibaba核心组件 流量控制就是限制业务访问的 qps(每秒处理请求数量),避免服务因流量突增而故障.比如有一个微服务能承受的最大 qps 是 2,也就是每秒钟最多处理两个请求,但是现在有一百个请求涌过来了,那他不得被达成筛子了,但是 sentinel 会根据这个 qps 的限制,去处理请求然后释放(这就像是有大量的水要涌入的时候,会先经过一个漏斗,通过这个漏斗,将水的流量限制住),这个时候,就可以有效的避免出现故障(超出的请求会被拦截,默认会报错,但也可以配置成 排队等待、预热)。如果断言为true,则匹配该路由。
Python环境搭建 在原来的site-packages下添加一个mypath.pth文件,文件名没有要求,只要保证文件后缀是.pth就行,并且增加我们自定义配置的site-packages的路径。index-url是设置第三方库的镜像源,设置镜像是为了更快下载,这里设置为阿里云镜像,当然也可以不设置或使用其他镜像。target是第三方库的目标安装路径,这个必须自己设置否则通过pip安装的第三方库依然安装在默认路径下。查看site.py存放路径,site.py一般存放在Lib目录,并且修改site.py的文件。