Apache Shiro 1.2.x Reference Manual 中文翻译所须的选项和内部组件进行配置会让人感觉有点小痛苦--而将这些 SecurityManager 配置用一个灵活的配置文件实现就会简单地多。 为此,Shiro 默认提供了一个基本的 INI 配置文件的解决方案,人们已经对庞大的 XML 文件 有些厌倦了,而一个 INI 文件易读易用,而且所依赖的组件很少,稍后你就会通过一个简单易 懂的示例明白 INI 在对简单对象进行配置的时候是非常有效率的,比如 setSessionDAO(sessionDAO); ... 使用这些函数,你可以配置 SecurityManager 视图(graph)中的任何一部分。 虽然在程序中配置很简单,但它并不是我们现实中配置的完美解决方案。在几种情况下这种 方法可能并不适合你的程序: 它需要你确切知道并实例化一个直接实现(direct implementation),然而更好的做法是 你并不需要知道这些实现也不需要知道从哪里找到它们。 isPermitted* 方法实现的一部分。默 认的 Realm/WildcardPermission 存在的支持覆盖了大多数用例的80~90%,但它可能不是在 运行时拥有大量权限需要存储或检查的应用程序的最佳解决方案。 为文档加把手 我们希望这篇文档可以帮助你使用 Apache Shiro 进行工作,社区一直在不断地完善和扩展文 档,如果你希望帮助 Shiro 项目,请在你认为需要的地方考虑更正、扩展或添加文档,你提供0 码力 | 196 页 | 2.34 MB | 1 年前3
Hello 算法 1.1.0 Java版结构, 拼装积木的步骤则对应算法。 17 第 2 章 复杂度分析 Abstract 复杂度分析犹如浩瀚的算法宇宙中的时空向导。 它带领我们在时间与空间这两个维度上深入探索,寻找更优雅的解决方案。 第 2 章 复杂度分析 hello‑algo.com 18 2.1 算法效率评估 在算法设计中,我们先后追求以下两个层面的目标。 1. 找到问题解法:算法需要在规定的输入范围内可靠地求得问题的正确解。 Unicode 码点同时出现在一个文本中时,系统如 何解析字符?例如给定一个长度为 2 字节的编码,系统如何确认它是一个 2 字节的字符还是两个 1 字节的字 符? 对于以上问题,一种直接的解决方案是将所有字符存储为等长的编码。如图 3‑7 所示,“Hello”中的每个字 符占用 1 字节,“算法”中的每个字符占用 2 字节。我们可以通过高位填 0 将“Hello 算法”中的所有字符都 编码为 4 章 数组与链表 hello‑algo.com 69 图 4‑3 数组插入元素示例 值得注意的是,由于数组的长度是固定的,因此插入一个元素必定会导致数组尾部元素“丢失”。我们将这个 问题的解决方案留在“列表”章节中讨论。 // === File: array.java === /* 在数组的索引 index 处插入元素 num */ void insert(int[] nums, int0 码力 | 378 页 | 18.47 MB | 1 年前3
Hello 算法 1.0.0 Java版方式等代表数据结构, 拼装积木的步骤则对应算法。 17 第 2 章 复杂度分析 � 复杂度分析犹如浩瀚的算法宇宙中的时空向导。 它带领我们在时间与空间这两个维度上深入探索,寻找更优雅的解决方案。 第 2 章 复杂度分析 hello‑algo.com 18 2.1 算法效率评估 在算法设计中,我们先后追求以下两个层面的目标。 1. 找到问题解法:算法需要在规定的输入范围内可靠地求得问题的正确解。 Unicode 码点同时出现在一个文本中时,系统如 何解析字符?例如给定一个长度为 2 字节的编码,系统如何确认它是一个 2 字节的字符还是两个 1 字节的字 符? 对于以上问题,一种直接的解决方案是将所有字符存储为等长的编码。如图 3‑7 所示,“Hello”中的每个字 符占用 1 字节,“算法”中的每个字符占用 2 字节。我们可以通过高位填 0 将“Hello 算法”中的所有字符都 编码为 4 章 数组与链表 hello‑algo.com 69 图 4‑3 数组插入元素示例 值得注意的是,由于数组的长度是固定的,因此插入一个元素必定会导致数组尾部元素“丢失”。我们将这个 问题的解决方案留在“列表”章节中讨论。 // === File: array.java === /* 在数组的索引 index 处插入元素 num */ void insert(int[] nums, int0 码力 | 376 页 | 17.59 MB | 1 年前3
Hello 算法 1.2.0 简体中文 Java 版问题就会越深入,问题就能被解决得更优雅。 17 第 2 章 复杂度分析 Abstract 复杂度分析犹如浩瀚的算法宇宙中的时空向导。 它带领我们在时间与空间这两个维度上深入探索,寻找更优雅的解决方案。 第 2 章 复杂度分析 www.hello‑algo.com 18 2.1 算法效率评估 在算法设计中,我们先后追求以下两个层面的目标。 1. 找到问题解法:算法需要在规定的输入范围内可靠地求得问题的正确解。 Unicode 码点同时出现在一个文本中时,系统如 何解析字符?例如给定一个长度为 2 字节的编码,系统如何确认它是一个 2 字节的字符还是两个 1 字节的字 符? 对于以上问题,一种直接的解决方案是将所有字符存储为等长的编码。如图 3‑7 所示,“Hello”中的每个字 符占用 1 字节,“算法”中的每个字符占用 2 字节。我们可以通过高位填 0 将“Hello 算法”中的所有字符都 编码为 数组与链表 www.hello‑algo.com 69 图 4‑3 数组插入元素示例 值得注意的是,由于数组的长度是固定的,因此插入一个元素必定会导致数组尾部元素“丢失”。我们将这个 问题的解决方案留在“列表”章节中讨论。 // === File: array.java === /* 在数组的索引 index 处插入元素 num */ void insert(int[] nums, int0 码力 | 379 页 | 18.48 MB | 10 月前3
Hello 算法 1.0.0b5 Java版接方式代表数据结构,拼 装积木的步骤则对应算法。 16 第 2 章 复杂度分析 � 复杂度分析犹如浩瀚的算法宇宙中的时空向导。 它带领我们在时间与空间这两个维度上深入探索,寻找更优雅的解决方案。 第 2 章 复杂度分析 hello‑algo.com 17 2.1 算法效率评估 在算法设计中,我们先后追求以下两个层面的目标。 1. 找到问题解法:算法需要在规定的输入范围内,可靠地求得问题的正确解。 Unicode 码点同时出现在同一个文本中时,系统 如何解析字符?例如给定一个长度为 2 字节的编码,系统如何确认它是一个 2 字节的字符还是两个 1 字节的 字符? 对于以上问题,一种直接的解决方案是将所有字符存储为等长的编码。如图 3‑7 所示,“Hello”中的每个字 符占用 1 字节,“算法”中的每个字符占用 2 字节。我们可以通过高位填 0 ,将“Hello 算法”中的所有字符 都编码为 4 章 数组与链表 hello‑algo.com 66 图 4‑3 数组插入元素示例 值得注意的是,由于数组的长度是固定的,因此插入一个元素必定会导致数组尾部元素的“丢失”。我们将这 个问题的解决方案留在列表章节中讨论。 // === File: array.java === /* 在数组的索引 index 处插入元素 num */ void insert(int[] nums, int0 码力 | 376 页 | 30.69 MB | 1 年前3
Nacos架构&原理
是什么? 这个问题应该说⼀直持续,但是我们定下来开源、自研、商业化三位⼀体的战略,以开源为内核, 以商业化为扩展;开源做生态,商业化做企业级特性,阿里内部做性能和高可用;开源做组件,商 业化做解决方案;并且随着时间推移,基本按照这思路完成的正循环,全面系统的打造了 Nacos 各 个维度的能力。 前言 < 12 随着 Nacos 日益强大, 我们⼀直想写⼀个 Nacos 电子书系统介绍 Nacos 长链接协议,能 最大限度发挥 Nacos 性能。阿里微服务 DNS(Dubbo+Nacos+Spring-cloud-alibaba/Seata/ Sentinel)最佳实践,是 Java 微服务生态最佳解决方案;除此之外,Nacos 也对微服务生态活跃 的技术做了无缝的支持,如目前比较流行的 Envoy、Dapr 等,能让用户更加标准获取微服务能力。 生态仓库:https://github.com/nacos-group 否支持异地多活。 多数据中心其实也算是异地多活的⼀部分。从单个产品的维度上,Zookeeper 和 Eureka 没有给出 官方的多数据中心方案。Nacos 基于阿里巴巴内部的使用经验,提供的解决方案是采用 Nacos-Sy nc 组件来做数据中心之间的数据同步,这意味着每个数据中心的 Nacos 集群都会有多个数据中心 的全量数据。Nacos-Sync 是 Nacos 生态组件里的重要⼀环,不仅会承担0 码力 | 326 页 | 12.83 MB | 10 月前3
Hello 算法 1.0.0b4 Java版Unicode 码点同时出现在同一个文本中时,系统 如何解析字符?例如,给定一个长度为 2 字节的编码,系统如何确认它是一个 2 字节的字符还是两个 1 字节 的字符? 对于以上问题,一种直接的解决方案是将所有字符存储为等长的编码。如下图所示,“Hello”中的每个字符 占用 1 字节,“算法”中的每个字符占用 2 字节。我们可以通过高位填 0 ,将“Hello 算法”中的所有字符都 编码为 244 13. 回溯 13.1. 回溯算法 「回溯算法 Backtracking Algorithm」是一种通过穷举来解决问题的方法,它的核心思想是从一个初始状态 出发,暴力搜索所有可能的解决方案,当遇到正确的解则将其记录,直到找到解或者尝试了所有可能的选择 都无法找到解为止。 回溯算法通常采用「深度优先搜索」来遍历解空间。在二叉树章节中,我们提到前序、中序和后序遍历都属 于深度优先 问题、解、状态等概念是通用的,在分治、回溯、动态规划、贪心等算法中都有涉及。 13.1.5. 优势与局限性 回溯算法本质上是一种深度优先搜索算法,它尝试所有可能的解决方案直到找到满足条件的解。这种方法的 优势在于它能够找到所有可能的解决方案,而且在合理的剪枝操作下,具有很高的效率。 然而,在处理大规模或者复杂问题时,回溯算法的运行效率可能难以接受。 ‧ 时间:回溯算法通常需要遍历状态空间的所有0 码力 | 342 页 | 27.39 MB | 1 年前3
Apache Shiro参考手册中文版式来配置 SecurityManager, 那么这将是一件很容易的事情。 为此,Shiro 通过基于文本的 INI 配置文件提供了一个默认的"共性(common denominator)"解决方案。近来人们已 经相当厌倦了使用笨重的 XML 文件,且 INI 文件易于阅读,使用简单,依赖性低。你稍后将会看到有了对象导航图 的简单理解,INI 文件能够有效地被用来配置简单的对象图,如 SecurityManager。 isPermitted* 方法实现的一部分。默认的 Realm/WildcardPermission 存在的支持覆盖 了大多数用例的 80~90%,但它可能不是在运行时拥有大量权限需要存储或检查的应用程序的最佳解决方案。 Lend a hand with documentation 我们希望本文档可以帮助你及你用 Apache Shiro 所做的工作,我们的团体在不断改善和扩展该文档。如果你想帮助 Shiro 贡献您的文档最简单的方法是将其发送到用户论坛或者用户的通讯录。 Session Management Apache Shiro 提供安全框架界独一无二的东西:一个完整的企业级 Session 解决方案,从最简单的命令行及智能手机 应用到最大的集群企业 Web 应用程序。 这对许多应用有着很大的影响——直到 Shiro 出现,如果你需要 session 支持,你需要部署你的应用程序到 Web0 码力 | 92 页 | 1.16 MB | 1 年前3
Java 应用与开发 - 面向对象编程进阶println(d); 6 } 7 } 大纲 多态性 方法重载 关键字 static 关键字 final Singleton 设计模式2 O 所谓“模式”就是被验证为有效的常规问题的典型解决方案。 ▶ 设计模式(Design Pattern)在面向对象分析设计和软件开 发中占有重要地位。 ▶ 好的设计模式可以使我们更加方便的重用已有的成功设计和 体系结构,极大的提高代码的重用性和可维护性。0 码力 | 49 页 | 659.74 KB | 1 年前3
Linux Docker Messnetworked nature of modern applications. Docker 简单的说Docker是一个构建在LXC之上的,基于进程容器(Process Container)的轻量 级VM解决方案。 Docker Docker的初衷是将各种应用程序和他们所依赖的运行环境打包成标准的container/image,进 而发布到不同的平台上运行。 Docker Why Docker?0 码力 | 77 页 | 7.40 MB | 1 年前3
共 12 条
- 1
- 2













