《Java 应用与开发》课程讲义 - 王晓东
HashtableGenericsSample.java 泛型的向后兼容性 • Java 语言中的泛型是维护向后兼容的,完全可以不采用泛型、而继续沿用过去的 做法。 • 这些未加改造的旧式代码将无法使用泛型带来的便利和安全性。 未启用泛型机制的代码在高版本编译器中会输出如下形式的编译提示信息: output 注: VectorGenericsSample.java 使用了未经检查或不安全的操作。 注: 有关详细信息 繁琐,引用泛型机制后代码的通用性似乎不如从前? 8.3.2 泛型类型的处理方法 可能的处理方法(不要使用) 将遍历方法的形参定义为不带任何类型参数的原型类型 Vector,但这样会破坏已 有的类型安全性。 1 public void overview(Vector v) { 2 for(Object o: v) { 3 String.out.println(o); 4 } . . . . 分布式 通过局域网或 Internet 连接分布在一个组织内部或世界各地的部门及用户。 高速反应性 企业组织需要不断地改变业务规则来适应业务需求或商业模式的不断变 化。 高安全性 企业应用系统必须保证运行的高度安全性和可靠性。 可扩展性 要求软件架构具备灵活的可扩展能力和伸缩性,满足信息资源及用户群体的 不断发展。 集成化 必须尽可能的集成已有的遗留系统,最大限度的利用信息资源。 150 码力 | 330 页 | 6.54 MB | 1 年前3Java 应用与开发 - Java EE 体系结构
分布式 通过局域网或 Internet 连接分布在一个组织内部或 世界各地的部门及用户。 高速反应性 企业组织需要不断地改变业务规则来适应业务需求 或商业模式的不断变化。 高安全性 企业应用系统必须保证运行的高度安全性和可靠性。 可扩展性 要求软件架构具备灵活的可扩展能力和伸缩性,满 足信息资源及用户群体的不断发展。 集成化 必须尽可能的集成已有的遗留系统,最大限度的利 用信息资源。 大纲0 码力 | 40 页 | 1.89 MB | 1 年前3Java 应用与开发 - HTTP 会话跟踪技术
do?productid=1201&userid=" + userid); 大纲 会话基本概念 会话跟踪技术 本节习题 URL 重写 URL 重写的缺点 ▶ URL 传递参数的限制 ▶ 安全性缺陷 ▶ 编程繁杂 大纲 会话基本概念 会话跟踪技术 本节习题 Cookie 接下来⋯ 会话基本概念 会话跟踪技术 URL 重写 Cookie Java EE 会话对象 本节习题 大纲 getValue(); 6 } 7 } 大纲 会话基本概念 会话跟踪技术 本节习题 Cookie Cookie 的缺点 ▶ 存储方式单一 ▶ 存储位置限制 ▶ 大小受浏览器限制 ▶ 可用性限制 ▶ 安全性限制(可以采用手动 Cookie 加解密) 大纲 会话基本概念 会话跟踪技术 本节习题 Java EE 会话对象 接下来⋯ 会话基本概念 会话跟踪技术 URL 重写 Cookie Java0 码力 | 54 页 | 824.47 KB | 1 年前3Apache Shiro参考手册中文版
序的理想配置。以下是程式化定制可能不适合 你的几点原因: 它需要你了解和实例化一个直接实现。这将会更好,如果你不需要了解具体的实现和在哪里可以找到它们。 由于 Java 的类型安全性,你需要转换通过 get*方法获取的对象来得到它们具体的实现。如此多的转换是丑陋 的,冗长的,并使你和实现类紧密连接起来。 SecurityUtils.setSecurityManager 散列你用户的密码,你需要告诉 Shiro 使用合适的 HashedCredentialsMatcher 以匹配你的哈希参 数选择。在这个例子中,我们创建了一个随机的 salt 并执行 1024 次哈希迭代,为了强大的安全性(请参见 HashedCredentialsMatcher 的 JavaDoc 获取原因)。这里是完成这项工作的 Shiro INI 配置: [main] Subject 为中心的编程范式支持。当编码应用程序逻辑时,大多数应用程序开发人员想 知道谁才是当前正在执行的用户。虽然应用程序通常能够通过它们自己的机制(UserService 等)来查找任何用户, 但涉及到安全性时,最重要的问题是“谁才是当前的用户?”。 虽然通过使用SecurityManager可以捕获任何Subject,但只有基于当前用户/Subject的应用程序代码更自然,更直观。 The0 码力 | 92 页 | 1.16 MB | 1 年前3Java 应用与开发 - Java 技术概述及开发环境
分布式 可靠性 不支持直接操作指针,避免了对内存的非法访问; 自动单元回收功能防止内存丢失等动态内存分配导 致的问题;解释器运行时实施检查,可发现数组和 字符串访问的越界;提供了异常处理机制。安全性。 多线程 网络编程 编译和解释并存 大纲 Java 技术概述 Java 平台核心机制 Java 开发环境 Java 基本开发流程 Java 技术的特点 面向对象 平台无关性 分布式0 码力 | 33 页 | 1.17 MB | 1 年前3跟我学Shiro - 张开涛
Manager:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信 息都在会话中;会话可以是普通 JavaSE 环境的,也可以是如 Web 环境的; Cryptography:加密,保护数据的安全性,如密码加密存储到数据库,而不是明文存储; Web Support:Web 支持,可以非常容易的集成到 Web 环境; Caching:缓存,比如用户登录后,其用户信息、拥有的角色/权限不必每次去查,这样可以 ; } } 跟我学 Shiro——http://jinnianshilongnian.iteye.com/ 178 到此,整个测试完成了,需要注意的是,为了安全性,请考虑本文开始介绍的相应解决方 案。 SpringMVC 相关知识请参考 5 分钟构建 spring web mvc REST 风格 HelloWorld http://jinnianshilongnian0 码力 | 219 页 | 4.16 MB | 10 月前3Nacos架构&原理
,防止集群抖动,超过 阈值后需要自动切换 server,但要防止请求风暴。 断网演练:断网场景下,以合理的频率进行重试,断网结束时可以快速重连恢复。 49 > Nacos 架构 5. 安全性 支持基础的鉴权,数据加密能力。 6. 低成本多语⾔实现 在客户端层面要尽可能多的支持多语言,至少要支持⼀个 Java 服务端连接通道,可以使用多个主 流语言的客户端进行访问,并且要考虑各种语言实现的成本,双边交互上要考虑 ng 消息 应用层自定 义,单 byte ack 自定义 kee palive fra me TCP+ 自定 义 自定义 kee palive filte r 性能 tps 安全性 TLS TLS TLS TLS TLS TLS 多语言支持 JAVA 支持 不支持 支持 支持 1.8+ >93% 支持 支持 GO 支持 不支持 支持 支持 1.12+ >93%0 码力 | 326 页 | 12.83 MB | 9 月前3Hello 算法 1.0.0b4 Java版
的输入数据映射到恒定长度的哈希值。 6. 散列表 hello‑algo.com 108 近一个世纪以来,哈希算法处在不断升级与优化的过程中。一部分研究人员努力提升哈希算法的性能,另一 部分研究人员和黑客则致力于寻找哈希算法的安全性问题。直至目前: ‧ MD5 和 SHA‑1 已多次被成功攻击,因此它们被各类安全应用弃用。 ‧ SHA‑2 系列中的 SHA‑256 是最安全的哈希算法之一,仍未出现成功的攻击案例,因此常被用在各类安 细心的你可能发现在不同控制台中运行程序时,输出的哈希值是不同的。这是因为 Python 解释器在每次启 动时,都会为字符串哈希函数加入一个随机的盐(Salt)值。这种做法可以有效防止 HashDoS 攻击,提升 哈希算法的安全性。 6.4. 小结 ‧ 输入 key ,哈希表能够在 ?(1) 时间内查询到 value ,效率非常高。 ‧ 常见的哈希表操作包括查询、添加键值对、删除键值对和遍历哈希表等。 ‧ 哈希函数将0 码力 | 342 页 | 27.39 MB | 1 年前3Hello 算法 1.1.0 Java版
等。它们可以将任意长 度的输入数据映射到恒定长度的哈希值。 近一个世纪以来,哈希算法处在不断升级与优化的过程中。一部分研究人员努力提升哈希算法的性能,另一 部分研究人员和黑客则致力于寻找哈希算法的安全性问题。表 6‑2 展示了在实际应用中常见的哈希算法。 ‧ MD5 和 SHA‑1 已多次被成功攻击,因此它们被各类安全应用弃用。 ‧ SHA‑2 系列中的 SHA‑256 是最安全的哈希算法之一 细心的你可能发现在不同控制台中运行程序时,输出的哈希值是不同的。这是因为 Python 解释器在每次启 动时,都会为字符串哈希函数加入一个随机的盐(salt)值。这种做法可以有效防止 HashDoS 攻击,提升哈 希算法的安全性。 6.4 小结 1. 重点回顾 ‧ 输入 key ,哈希表能够在 ?(1) 时间内查询到 value ,效率非常高。 ‧ 常见的哈希表操作包括查询、添加键值对、删除键值对和遍历哈希表等。0 码力 | 378 页 | 18.47 MB | 1 年前3Hello 算法 1.0.0b5 Java版
第 6 章 哈希表 hello‑algo.com 126 近一个世纪以来,哈希算法处在不断升级与优化的过程中。一部分研究人员努力提升哈希算法的性能,另一 部分研究人员和黑客则致力于寻找哈希算法的安全性问题。表 6‑2 展示了在实际应用中常见的哈希算法。 ‧ MD5 和 SHA‑1 已多次被成功攻击,因此它们被各类安全应用弃用。 ‧ SHA‑2 系列中的 SHA‑256 是最安全的哈希算法之一 细心的你可能发现在不同控制台中运行程序时,输出的哈希值是不同的。这是因为 Python 解释器在每次启 动时,都会为字符串哈希函数加入一个随机的盐(Salt)值。这种做法可以有效防止 HashDoS 攻击,提升 哈希算法的安全性。 6.4 小结 1. 重点回顾 ‧ 输入 key ,哈希表能够在 ?(1) 时间内查询到 value ,效率非常高。 ‧ 常见的哈希表操作包括查询、添加键值对、删除键值对和遍历哈希表等。0 码力 | 376 页 | 30.69 MB | 1 年前3
共 14 条
- 1
- 2