跟我学Shiro - 张开涛
....... 192 模块关系依赖 ................................................................................................................................ 193 SHIRO-EXAMPLE-CHAPTER23-POM 模块 ............. SHIRO-EXAMPLE-CHAPTER23-CORE 模块 ................................................................................................ 195 SHIRO-EXAMPLE-CHAPTER23-SERVER 模块 .............................. SHIRO-EXAMPLE-CHAPTER23-CLIENT 模块 .............................................................................................. 201 SHIRO-EXAMPLE-CHAPTER23-APP*模块 ................................0 码力 | 219 页 | 4.16 MB | 10 月前3Nacos架构&原理
Nacos 自研 Distro 协议 38 Nacos 通信通道 42 Nacos 寻址机制 56 Nacos 服务发现模块 63 Nacos 注册中心的设计原理 63 Nacos 注册中心服务数据模型 80 Nacos 健康检查机制 89 Nacos 配置管理模块 97 配置⼀致性模型 97 Nacos ⾼可⽤设计 100 Nacos 高可用设计 100 Nacos 鉴权插件 103 迎面而来的是第二个问题,开源的定位和竞争力是什么? 内部三个产品的开源策略是什么? 由于当时 Spring-cloud 的崛起,微服务多个模块逐步被划分,包括注册中心、配置中心,如果从 产品定位上,期望定位简单清晰,利于传播,我们需要分别开源我们内部产品,这样又会分散我们 品牌和运营资源。另外大部分客户没有阿里这么大的体量,模块拆分过细,部署和运维成本都会成 倍上涨,而且阿里巴巴也是从最早⼀个产品逐步演化成 3 个产品的,因此我们最终决定将内部三个 的时候我们取其精华进行开源,为了提升代码的健壮性和扩展性,进行了充分的分层和模块化设计。 设计原则 极简原则,简单才好用,简单才稳定,简单才易协作。 架构⼀致性,⼀套架构要能适应开源、内部、商业化(公有云及专有云)3 个场景。 扩展性,以开源为内核,商业化做基础,充分扩展,方便用户扩展。 模块化,将通用部分抽象下沉,提升代码复用和健壮性。 长期主义,不是要⼀个能支撑未来0 码力 | 326 页 | 12.83 MB | 9 月前3Apache Shiro 1.2.x Reference Manual 中文翻译
退出登录(Logout) 及其它。 但这些功能都在一个单独的组件中管理,并且,当所有功能集中在一个类中实现是灵活和可 定制是非常困难的。 为了实现配置的简单、灵活、可插拔,Shiro在设计时实现了高模块化--尽管模块化, SecurityManager(包括它的继承类)并没有做到,相反地,SecurityManager实现更像一个 轻量级的‘容器(container)’,代表几乎所有嵌套/封装组件的行为,这种‘封装(wrapper)’设 知道如何以及何时去协调组件做出正确的动作。 SecurityManager 和 JavaBean 兼容,这允许你(或者配置途径)通过标准的J avaBean 访 问/设置方法(get/set)很容易地定制插件,这意味着 Shiro 模块可以根据用户行为转化成简 易的配置。 简易的配置 因为适合JavaBean,任何支持Javabean配置的组件都有非常简单的途径配置 SecurityManager,如 Spring、Guice、JBoss SecurityManager Object Graph 如同我们在架构(Architecture )中讨论过的,Shiro SecurityMangger 本质上是一个由一套 安全组件组成的对象模块视图(graph),因为与 JavaBean兼容,所以可以对所有这些组件 调用的 getter 和 setter 方法来配置SecurityManager 和它的内部对象视图。 例如,你想用一个自定义的0 码力 | 196 页 | 2.34 MB | 1 年前3Java 应用与开发 - MVC 和框架初步
里去引用。 3. 突然之间,某个需求发生了变化。于是,每个人蒙头开始全 程替换,还要小心翼翼的,生怕把别人的逻辑改了。 4. 逻辑处理程序需要自己来维护生命周期,对于类似数据库事 务、日志等众多模块无法统一支持。 大纲 Java Web 应用的开发演化 经典 MVC 框架 - Struts 2 本节习题 JSP 方式 O 仅有的一点优势 1. 无需额外的配置文件,无需框架的帮助,即可完成逻辑。 里去引用。 3. 突然之间,某个需求发生了变化。于是,每个人蒙头开始全 程替换,还要小心翼翼的,生怕把别人的逻辑改了。 4. 逻辑处理程序需要自己来维护生命周期,对于类似数据库事 务、日志等众多模块无法统一支持。 大纲 Java Web 应用的开发演化 经典 MVC 框架 - Struts 2 本节习题 JSP 方式 O 仅有的一点优势 1. 无需额外的配置文件,无需框架的帮助,即可完成逻辑。 里去引用。 3. 突然之间,某个需求发生了变化。于是,每个人蒙头开始全 程替换,还要小心翼翼的,生怕把别人的逻辑改了。 4. 逻辑处理程序需要自己来维护生命周期,对于类似数据库事 务、日志等众多模块无法统一支持。 大纲 Java Web 应用的开发演化 经典 MVC 框架 - Struts 2 本节习题 JSP 方式 O 仅有的一点优势 1. 无需额外的配置文件,无需框架的帮助,即可完成逻辑。0 码力 | 51 页 | 837.26 KB | 1 年前3基于 Java EE 的企业应用系统设计 - Spring MVC 01
去引 用。 3. 突然之间,某个需求发生了变化。于是,每个人蒙头开始全 程替换,还要小心翼翼的,生怕把别人的逻辑改了。 4. 逻辑处理程序需要自己来维护生命周期,对于类似数据库事 务、日志等众多模块无法统一支持。 大纲 Java Web 应用的开发演化 MVC 模式示例 Spring MVC 数据绑定和表单标签库 JSP 方式 O 仅有的一点优势 1. 无需额外的配置文件,无需框架的帮助,即可完成逻辑。 去引 用。 3. 突然之间,某个需求发生了变化。于是,每个人蒙头开始全 程替换,还要小心翼翼的,生怕把别人的逻辑改了。 4. 逻辑处理程序需要自己来维护生命周期,对于类似数据库事 务、日志等众多模块无法统一支持。 大纲 Java Web 应用的开发演化 MVC 模式示例 Spring MVC 数据绑定和表单标签库 JSP 方式 O 仅有的一点优势 1. 无需额外的配置文件,无需框架的帮助,即可完成逻辑。 去引 用。 3. 突然之间,某个需求发生了变化。于是,每个人蒙头开始全 程替换,还要小心翼翼的,生怕把别人的逻辑改了。 4. 逻辑处理程序需要自己来维护生命周期,对于类似数据库事 务、日志等众多模块无法统一支持。 大纲 Java Web 应用的开发演化 MVC 模式示例 Spring MVC 数据绑定和表单标签库 JSP 方式 O 仅有的一点优势 1. 无需额外的配置文件,无需框架的帮助,即可完成逻辑。0 码力 | 67 页 | 792.43 KB | 1 年前3Java 应用与开发 - Java GUI 编程
JTree 的 MVC 模式 JTable 和 JTree 采用了相对独立的方式向组件提供要显示的数 据,即当显示/处理的数据结构较复杂时,将 GUI 组件结构分为 相对独立的模型、视图、控制器三个模块,模块间存在专门的分 工和协作关系。 1. 模型(Model) 维护数据并提供数据访问方法,即数据和数 据的处理逻辑。 2. 视图(View) 绘制模型的视觉表现,即显示数据。视图就 是用户能够看到并与之进行交互的用户界面。0 码力 | 73 页 | 876.31 KB | 1 年前3Apache Shiro参考手册中文版
但这是许多功能来尝试管理一个单一的组件。而且,使这些东西灵活而又可定制将会是非常困难的,如果一切都集 中到一个单一的实现类。 为了简化配置并启用灵活配置/可插性,Shiro 的实现都是高度模块化设计——由于如此的模块化,SecurityManager 实现(以及它的类层次结构)并没有做很多事情。相反,SecurityManager 实现主要是作为一个轻量级的“容器”组 件,委托计划所有的行为到嵌套/ SecurityManager Object Graph 正如在 Architecture 章节中讨论的一样,Shiro 的 SecurityManager 实现实质上是一个特定安全的嵌套组件中的模块化 对象图。因为它们也是兼容 JavaBean 的,你可以调用任何嵌套组件的 getter 和 setter 方法来配置 SecurityManager 以及它的内部对象图。 例如,如果你想配置0 码力 | 92 页 | 1.16 MB | 1 年前3《Java 应用与开发》课程讲义 - 王晓东
JTree 的 MVC 模式 JTable 和 JTree 采用了相对独立的方式向组件提供要显示的数据,即当显示/处理 的数据结构较复杂时,将 GUI 组件结构分为相对独立的模型、视图、控制器三个模块, 模块间存在专门的分工和协作关系。 1. 模型(Model) 维护数据并提供数据访问方法,即数据和数据的处理逻辑。 2. 视图(View) 绘制模型的视觉表现,即显示数据。视图就是用户能够看到并与之 � 24 � 3. 突然之间,某个需求发生了变化。于是,每个人蒙头开始全程替换,还要小心翼 翼的,生怕把别人的逻辑改了。 4. 逻辑处理程序需要自己来维护生命周期,对于类似数据库事务、日志等众多模块 无法统一支持。 在这个时候,如果有一种方式,它能够将页面上的那些 Java 代码抽取出来,让页 面上尽量少出现 Java 代码,该有多好。于是许多人开始使用 servlet 来处理那些业务逻0 码力 | 330 页 | 6.54 MB | 1 年前3Apache Unomi 2.x - Documentation
(or just single nodes) will be started at the same time, and data will be migrated from the ES 5 to the ES 7 cluster. Note that it is possible to use a single node for both the source and the target port numbers on either the source or target cluster node. Changing ports requires a restart of the ES cluster you are modifying. In this example we will illustrate how to migrate by modifying the source because the first address that the tool will ask for is the target (ElasticSearch 7) cluster, not the ES 5 one. Note that it is also possible to change the index prefix to be different from the default context0 码力 | 117 页 | 4.78 MB | 1 年前3Spring Boot 2.3.1.RELEASE Reference Documentation
features that are supported by @ConfigurationProperties and @Value: Feature @ConfigurationProperti es @Value Relaxed binding Yes Limited (see note below) Meta-data support Yes No SpEL evaluation No spring.info.git.encodi ng UTF-8 File encoding. spring.info.git.locati on classpath:git.properti es Location of the generated git.properties file. spring.jmx.default- domain JMX domain name. spring false Whether configured jobs should overwrite existing job definitions. spring.quartz.properti es.* Additional Quartz Scheduler properties. spring.quartz.schedule r-name quartzScheduler Name of0 码力 | 535 页 | 11.58 MB | 1 年前3
共 196 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20