 《Java 应用与开发》课程讲义 - 王晓东涉及怎样合理的设计对象之间的交互通信,以及合理为对象分配职责,让 设计富有弹性、易维护、易复用。 责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观 察者模式、状态模式、策略模式、模板方法模式和访问者模式 结构型模式 涉及如何组合类和对象以形成更大的结构,和类有关的结构型模式涉及如 何合理使用继承机制,和对象有关的结构型模式涉及如何合理的使用对象组合机 制。 适配器模式、 Machine, JVM) Java 虚拟机的架构如图6.1所示。 类装载子系统 Class文件 Class文件 Class文件 方法区 Java堆 Java栈 程序计数器 本地方法栈 执行引擎 本地接口 通过全限定名装载 操作系统 操作系统本地库 运行时数据区 图 6.1 Java 虚拟机架构 • Java 程序运行在 JVM 上,JVM 是程序与操作系统之间的桥梁。 • JVM 抽象类是对类的抽象(可以抽象但不宜实例化),而接口是对行为的抽象。 • 抽象类是对类整体进行抽象,包括属性、行为,但是接口却是对类局部(行为) 进行抽象。 • 抽象类作为很多子类的父类,它是一种模板式设计。模板式设计:模板代表公共 部分,公共部分需要改的则改动模板即可。 • 而接口是一种行为规范,它是一种辐射式设计。辐射式设计:接口进行了变更, 则所有实现类都必须进行相应的改动。 7.3.3 怎样才是合理的设计?(门和警报的示例)0 码力 | 330 页 | 6.54 MB | 1 年前3 《Java 应用与开发》课程讲义 - 王晓东涉及怎样合理的设计对象之间的交互通信,以及合理为对象分配职责,让 设计富有弹性、易维护、易复用。 责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观 察者模式、状态模式、策略模式、模板方法模式和访问者模式 结构型模式 涉及如何组合类和对象以形成更大的结构,和类有关的结构型模式涉及如 何合理使用继承机制,和对象有关的结构型模式涉及如何合理的使用对象组合机 制。 适配器模式、 Machine, JVM) Java 虚拟机的架构如图6.1所示。 类装载子系统 Class文件 Class文件 Class文件 方法区 Java堆 Java栈 程序计数器 本地方法栈 执行引擎 本地接口 通过全限定名装载 操作系统 操作系统本地库 运行时数据区 图 6.1 Java 虚拟机架构 • Java 程序运行在 JVM 上,JVM 是程序与操作系统之间的桥梁。 • JVM 抽象类是对类的抽象(可以抽象但不宜实例化),而接口是对行为的抽象。 • 抽象类是对类整体进行抽象,包括属性、行为,但是接口却是对类局部(行为) 进行抽象。 • 抽象类作为很多子类的父类,它是一种模板式设计。模板式设计:模板代表公共 部分,公共部分需要改的则改动模板即可。 • 而接口是一种行为规范,它是一种辐射式设计。辐射式设计:接口进行了变更, 则所有实现类都必须进行相应的改动。 7.3.3 怎样才是合理的设计?(门和警报的示例)0 码力 | 330 页 | 6.54 MB | 1 年前3
 Linux Docker Mess[images|rmi|tag|build|history|save|import] n 其他命令 docker [info|version] Libcontainer Docker是一款基于LXC的开源容器管理引擎。把LXC复杂的容器创建与使用方式简化为Docker 自己的一套命令体系。随着Docker的不断发展,它开始有了更为远大的目标,那就是反向 定义容器的实现标准,将底层实现都抽象化到Libcontainer的接口。这就意味着,底层容器 lxc-ubuntu-cloud lxc-archlinux lxc-cirros lxc-fedora lxc-opensuse lxc-sshd 创建某个特定目标环境的LXC容器需要 相应的LXC模板,Ubuntu上的LXC用户空 间工具随带一系列预先准备好的LXC模 板在/usr/share/lxc/templates目录下 sudo lxc-create –n lxc –t ubuntu0 码力 | 77 页 | 7.40 MB | 1 年前3 Linux Docker Mess[images|rmi|tag|build|history|save|import] n 其他命令 docker [info|version] Libcontainer Docker是一款基于LXC的开源容器管理引擎。把LXC复杂的容器创建与使用方式简化为Docker 自己的一套命令体系。随着Docker的不断发展,它开始有了更为远大的目标,那就是反向 定义容器的实现标准,将底层实现都抽象化到Libcontainer的接口。这就意味着,底层容器 lxc-ubuntu-cloud lxc-archlinux lxc-cirros lxc-fedora lxc-opensuse lxc-sshd 创建某个特定目标环境的LXC容器需要 相应的LXC模板,Ubuntu上的LXC用户空 间工具随带一系列预先准备好的LXC模 板在/usr/share/lxc/templates目录下 sudo lxc-create –n lxc –t ubuntu0 码力 | 77 页 | 7.40 MB | 1 年前3
 Nacos架构&原理
在阿里中间件开源、自研、商业三位⼀体的战略中,微服务 DNS(Dubbo+Nacos+Spring-cloud- alibba/Sentinel/Seata)组合始终走在前列,引领着微服务领域的发展趋势。Nacos 作为核心引擎 孵化于 2008 年的阿里五彩石项目,自主研发完全可控,经历十多年双 11 洪峰考验,沉淀了高性能、 高可用、可扩展的核心能力,2018 年开源后引起了开发者的广泛关注和大量使用。本书也将介绍 使用场景下,Naco s1.X 和 Nacos2.0 服务发现模块的性能区别,提供更加准确的参考。 测试工具 我们使用自研的 PAS 性能评估服务平台进行压测,其原理是基于利用 JMeter 引擎,使用 PAS 自动生成的 JMeter 脚本,进行智能压测。 123 > Nacos 性能报告 测试环境 1. 环境 服务端 指标 参数 机器 CPU 8 核,内存 16G 集群规模 支持了下面的功能:  原生 SDK 实现,基本对齐 JAVA SDK  集成 ASP.NET Core 体系的配置系统  集成 ASP.NET Core 完成简易服务注册和发现  支持接入阿里云微服务引擎(Microservices Engine,简称 MSE) 下面简单介绍⼀下 SDK 里面配置和服务注册与发现的用法: 基本用法 配置 Nacos 生态 < 170 IServiceCollection0 码力 | 326 页 | 12.83 MB | 9 月前3 Nacos架构&原理
在阿里中间件开源、自研、商业三位⼀体的战略中,微服务 DNS(Dubbo+Nacos+Spring-cloud- alibba/Sentinel/Seata)组合始终走在前列,引领着微服务领域的发展趋势。Nacos 作为核心引擎 孵化于 2008 年的阿里五彩石项目,自主研发完全可控,经历十多年双 11 洪峰考验,沉淀了高性能、 高可用、可扩展的核心能力,2018 年开源后引起了开发者的广泛关注和大量使用。本书也将介绍 使用场景下,Naco s1.X 和 Nacos2.0 服务发现模块的性能区别,提供更加准确的参考。 测试工具 我们使用自研的 PAS 性能评估服务平台进行压测,其原理是基于利用 JMeter 引擎,使用 PAS 自动生成的 JMeter 脚本,进行智能压测。 123 > Nacos 性能报告 测试环境 1. 环境 服务端 指标 参数 机器 CPU 8 核,内存 16G 集群规模 支持了下面的功能:  原生 SDK 实现,基本对齐 JAVA SDK  集成 ASP.NET Core 体系的配置系统  集成 ASP.NET Core 完成简易服务注册和发现  支持接入阿里云微服务引擎(Microservices Engine,简称 MSE) 下面简单介绍⼀下 SDK 里面配置和服务注册与发现的用法: 基本用法 配置 Nacos 生态 < 170 IServiceCollection0 码力 | 326 页 | 12.83 MB | 9 月前3
 JAVA 应用与开发 - 高级类特性抽象类是对类的抽象(可以抽象但不宜实例化),而接口是对行 为的抽象。 抽象类是对类整体进行抽象,包括属性、行为,但是接口却是 对类局部(行为)进行抽象。 抽象类作为很多子类的父类,它是一种模板式设计。模板式设 计:模板代表公共部分,公共部分需要改的则改动模板即可。 而接口是一种行为规范,它是一种辐射式设计。辐射式设计: 接口进行了变更,则所有实现类都必须进行相应的改动。 16 29 ������� 抽象类是对类的 抽象类是对类的抽象(可以抽象但不宜实例化),而接口是对行 为的抽象。 抽象类是对类整体进行抽象,包括属性、行为,但是接口却是 对类局部(行为)进行抽象。 抽象类作为很多子类的父类,它是一种模板式设计。模板式设 计:模板代表公共部分,公共部分需要改的则改动模板即可。 而接口是一种行为规范,它是一种辐射式设计。辐射式设计: 接口进行了变更,则所有实现类都必须进行相应的改动。 16 29 �������������������0 码力 | 61 页 | 677.55 KB | 1 年前3 JAVA 应用与开发 - 高级类特性抽象类是对类的抽象(可以抽象但不宜实例化),而接口是对行 为的抽象。 抽象类是对类整体进行抽象,包括属性、行为,但是接口却是 对类局部(行为)进行抽象。 抽象类作为很多子类的父类,它是一种模板式设计。模板式设 计:模板代表公共部分,公共部分需要改的则改动模板即可。 而接口是一种行为规范,它是一种辐射式设计。辐射式设计: 接口进行了变更,则所有实现类都必须进行相应的改动。 16 29 ������� 抽象类是对类的 抽象类是对类的抽象(可以抽象但不宜实例化),而接口是对行 为的抽象。 抽象类是对类整体进行抽象,包括属性、行为,但是接口却是 对类局部(行为)进行抽象。 抽象类作为很多子类的父类,它是一种模板式设计。模板式设 计:模板代表公共部分,公共部分需要改的则改动模板即可。 而接口是一种行为规范,它是一种辐射式设计。辐射式设计: 接口进行了变更,则所有实现类都必须进行相应的改动。 16 29 �������������������0 码力 | 61 页 | 677.55 KB | 1 年前3
 Java 应用与开发 - Servlet 编程Servlet 示例 Servlet 的运行过程 1. 用户在浏览器请求 ServletURL 地址。 2. Web 容器接收到请求,检查是 Servlet 请求,将处理交给 Servlet 引擎。 3. Servlet 引擎根据 URL 地址检查是否有 Servlet 映射,如果 没有则返回错误信息给浏览器。 4. 有 servlet 映射时,先检查是否有实例在运行。 5. 如果没有实例运行,则创建 Servlet Servlet 示例 Servlet 的运行过程 1. 用户在浏览器请求 ServletURL 地址。 2. Web 容器接收到请求,检查是 Servlet 请求,将处理交给 Servlet 引擎。 3. Servlet 引擎根据 URL 地址检查是否有 Servlet 映射,如果 没有则返回错误信息给浏览器。 4. 有 servlet 映射时,先检查是否有实例在运行。 5. 如果没有实例运行,则创建 Servlet Servlet 示例 Servlet 的运行过程 1. 用户在浏览器请求 ServletURL 地址。 2. Web 容器接收到请求,检查是 Servlet 请求,将处理交给 Servlet 引擎。 3. Servlet 引擎根据 URL 地址检查是否有 Servlet 映射,如果 没有则返回错误信息给浏览器。 4. 有 servlet 映射时,先检查是否有实例在运行。 5. 如果没有实例运行,则创建 Servlet0 码力 | 50 页 | 725.36 KB | 1 年前3 Java 应用与开发 - Servlet 编程Servlet 示例 Servlet 的运行过程 1. 用户在浏览器请求 ServletURL 地址。 2. Web 容器接收到请求,检查是 Servlet 请求,将处理交给 Servlet 引擎。 3. Servlet 引擎根据 URL 地址检查是否有 Servlet 映射,如果 没有则返回错误信息给浏览器。 4. 有 servlet 映射时,先检查是否有实例在运行。 5. 如果没有实例运行,则创建 Servlet Servlet 示例 Servlet 的运行过程 1. 用户在浏览器请求 ServletURL 地址。 2. Web 容器接收到请求,检查是 Servlet 请求,将处理交给 Servlet 引擎。 3. Servlet 引擎根据 URL 地址检查是否有 Servlet 映射,如果 没有则返回错误信息给浏览器。 4. 有 servlet 映射时,先检查是否有实例在运行。 5. 如果没有实例运行,则创建 Servlet Servlet 示例 Servlet 的运行过程 1. 用户在浏览器请求 ServletURL 地址。 2. Web 容器接收到请求,检查是 Servlet 请求,将处理交给 Servlet 引擎。 3. Servlet 引擎根据 URL 地址检查是否有 Servlet 映射,如果 没有则返回错误信息给浏览器。 4. 有 servlet 映射时,先检查是否有实例在运行。 5. 如果没有实例运行,则创建 Servlet0 码力 | 50 页 | 725.36 KB | 1 年前3
 Java 应用与开发 - 面向对象编程进阶涉及怎样合理的设计对象之间的交互通信,以及合理 为对象分配职责,让设计富有弹性、易维护、易复用。 责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、 备忘录模式、观察者模式、状态模式、策略模式、模板方法模式 和访问者模式 结构型模式 涉及如何组合类和对象以形成更大的结构,和类有关 的结构型模式涉及如何合理使用继承机制,和对象有关的结构型 模式涉及如何合理的使用对象组合机制。 适配器模式、组合 涉及怎样合理的设计对象之间的交互通信,以及合理 为对象分配职责,让设计富有弹性、易维护、易复用。 责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、 备忘录模式、观察者模式、状态模式、策略模式、模板方法模式 和访问者模式 结构型模式 涉及如何组合类和对象以形成更大的结构,和类有关 的结构型模式涉及如何合理使用继承机制,和对象有关的结构型 模式涉及如何合理的使用对象组合机制。 适配器模式、组合 涉及怎样合理的设计对象之间的交互通信,以及合理 为对象分配职责,让设计富有弹性、易维护、易复用。 责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、 备忘录模式、观察者模式、状态模式、策略模式、模板方法模式 和访问者模式 结构型模式 涉及如何组合类和对象以形成更大的结构,和类有关 的结构型模式涉及如何合理使用继承机制,和对象有关的结构型 模式涉及如何合理的使用对象组合机制。 适配器模式、组合0 码力 | 49 页 | 659.74 KB | 1 年前3 Java 应用与开发 - 面向对象编程进阶涉及怎样合理的设计对象之间的交互通信,以及合理 为对象分配职责,让设计富有弹性、易维护、易复用。 责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、 备忘录模式、观察者模式、状态模式、策略模式、模板方法模式 和访问者模式 结构型模式 涉及如何组合类和对象以形成更大的结构,和类有关 的结构型模式涉及如何合理使用继承机制,和对象有关的结构型 模式涉及如何合理的使用对象组合机制。 适配器模式、组合 涉及怎样合理的设计对象之间的交互通信,以及合理 为对象分配职责,让设计富有弹性、易维护、易复用。 责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、 备忘录模式、观察者模式、状态模式、策略模式、模板方法模式 和访问者模式 结构型模式 涉及如何组合类和对象以形成更大的结构,和类有关 的结构型模式涉及如何合理使用继承机制,和对象有关的结构型 模式涉及如何合理的使用对象组合机制。 适配器模式、组合 涉及怎样合理的设计对象之间的交互通信,以及合理 为对象分配职责,让设计富有弹性、易维护、易复用。 责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、 备忘录模式、观察者模式、状态模式、策略模式、模板方法模式 和访问者模式 结构型模式 涉及如何组合类和对象以形成更大的结构,和类有关 的结构型模式涉及如何合理使用继承机制,和对象有关的结构型 模式涉及如何合理的使用对象组合机制。 适配器模式、组合0 码力 | 49 页 | 659.74 KB | 1 年前3
 跟我学Shiro - 张开涛aultWebSessionManager 来维护会话: sessionIdCookie 是 sessionManager 创建会话 Cookie 的模板: sessionIdCookie.name:设置 Cookie 名字,默认为 JSESSIONID; sessionIdCookie.domain:设置 Cookie 的域名,默认空,即当前访问的域名; 中的“;JSESSIONID=id”部分)保存 Session Id。 另外我们可以如“sessionManager. sessionIdCookie.name=sid”这种方式操作 Cookie 模板。 跟我学Shiro - 张开涛aultWebSessionManager 来维护会话: sessionIdCookie 是 sessionManager 创建会话 Cookie 的模板: sessionIdCookie.name:设置 Cookie 名字,默认为 JSESSIONID; sessionIdCookie.domain:设置 Cookie 的域名,默认空,即当前访问的域名; 中的“;JSESSIONID=id”部分)保存 Session Id。 另外我们可以如“sessionManager. sessionIdCookie.name=sid”这种方式操作 Cookie 模板。- 30 0 码力 | 219 页 | 4.16 MB | 10 月前3 Apache Shiro 1.2.x Reference Manual 中文翻译sessionIdCookieEnabled (一个 boolean) sessionIdCookie, 一个 Cookie 实例. Cookie as a template 作为模板 sessionIdCookie 属性本质上是一个模板,你配置 Cookie 实例属性,该模板将在运行时用一个适 当的会话ID值设置在实际 HTTP Cookie header中 Session Cookie Configuration 配置 mac 中的 cmd-C ) 来关闭应用 Step 1: Enable Shiro 启动 shiro 我们最初的 master 库 只是一个简单的通用的 web 应用程序,可以作为任何应用程序的模板。 让我们添加的最低限度,启动 Shiro web 应用程序。 执行以下git checkout 命令加载 Step1 分支: $ git checkout step1 检出的分支,有两点变化0 码力 | 196 页 | 2.34 MB | 1 年前3 Apache Shiro 1.2.x Reference Manual 中文翻译sessionIdCookieEnabled (一个 boolean) sessionIdCookie, 一个 Cookie 实例. Cookie as a template 作为模板 sessionIdCookie 属性本质上是一个模板,你配置 Cookie 实例属性,该模板将在运行时用一个适 当的会话ID值设置在实际 HTTP Cookie header中 Session Cookie Configuration 配置 mac 中的 cmd-C ) 来关闭应用 Step 1: Enable Shiro 启动 shiro 我们最初的 master 库 只是一个简单的通用的 web 应用程序,可以作为任何应用程序的模板。 让我们添加的最低限度,启动 Shiro web 应用程序。 执行以下git checkout 命令加载 Step1 分支: $ git checkout step1 检出的分支,有两点变化0 码力 | 196 页 | 2.34 MB | 1 年前3 使用 TEX 写文档want to write an article in \LaTeX{}. \end{document} \documentclass{article} \usepackage{aas} % 自动化学报模板; \usepackage{CJK} \begin{document} \begin{CJK*}{GBK}{song} %"song" 是你已安装的字体; 现在我要开始用 ~\LaTeX{}~ 写 文章了。0 码力 | 65 页 | 1.07 MB | 1 年前3 使用 TEX 写文档want to write an article in \LaTeX{}. \end{document} \documentclass{article} \usepackage{aas} % 自动化学报模板; \usepackage{CJK} \begin{document} \begin{CJK*}{GBK}{song} %"song" 是你已安装的字体; 现在我要开始用 ~\LaTeX{}~ 写 文章了。0 码力 | 65 页 | 1.07 MB | 1 年前3 Java 应用与开发 - MVC 和框架初步的特点 1. 多个视图可以对应一个模型,可以减少代码的复制,在模型 发生改变时,易于维护。 2. 模型返回的数据与显示逻辑分离。模型数据可以应用任何显 示技术,例如,使用 JSP、Velocity 模板或者直接产生 Excel。 3. 应用被分为三层,降低各层耦合,提高了可扩展性。 4. 控制层把不同模型和视图组合在一起,完成不同的请求,控 制层包含了用户请求权限的概念。 5. MVC 符合0 码力 | 51 页 | 837.26 KB | 1 年前3 Java 应用与开发 - MVC 和框架初步的特点 1. 多个视图可以对应一个模型,可以减少代码的复制,在模型 发生改变时,易于维护。 2. 模型返回的数据与显示逻辑分离。模型数据可以应用任何显 示技术,例如,使用 JSP、Velocity 模板或者直接产生 Excel。 3. 应用被分为三层,降低各层耦合,提高了可扩展性。 4. 控制层把不同模型和视图组合在一起,完成不同的请求,控 制层包含了用户请求权限的概念。 5. MVC 符合0 码力 | 51 页 | 837.26 KB | 1 年前3
共 13 条
- 1
- 2













