Jive学习心得
一. 设计模式
1. 工厂模式:
它主要是为创建对象提供了一种接口(此处的接口为要创建对象的接口),工厂模式主要是封装了创建对象的细节过程,从而使得外界调用一个对象时,根本无需关心这个对象是如何产生的。
抽象工厂模式:
2. 单态模式
(1)。使用单态模式的目标是为了控制对象的创建,单态模式经常使用在控制资源的访问上。例如数据库连接或Socket连接等。单态模式可以控制在某个时刻只有一个线程访问资源。由于Java中没有全局变量的概念,因此使用单态模式有时可以起到这种作用,当然需要注意是在一个JVM中。
(2)。单态模式是保证一个类有且仅有一个对象实例,并提供一个访问它的全局访问点。
3.代理模式(动态代理)
(1).它是实际访问对象的代理对象,或者影子对象,主要达到控制实际对象的访问。这种控制的目的很多,例如提高性能等。
(2).其中一个主要的控制目的是控制客户端对实际对象的访问权限。在Jive系统中,因为有角色权限的分别,对于Forum、ForumThread和FroumMessage的访问操作必须经过权限机制验证后才能进行。
4.迭代模式
(1).迭代(Iterator)模式是提供一种顺序访问某个集合各个元素的方法,确保不暴露该集合的内部表现。迭代模式应用于对大量数据的访问
5.装饰模式
(1).装饰(Decorator)模式是动态给一个对象添加一些额外的职责,或者说改变这个对象的一些行为。这就类似于使用油漆为某个东西刷上油漆,在原来的对象表面增加了一层外衣。
在装饰模式中,有两个主要角色:一个是被刷油漆的对象(decoratee);另外一个是给decoratee刷油漆的对象(decorator)。这两个对象都继承同一个接口。
6.观察者模式(主题监测)
(1).观察者(Observer)模式是定义对象之间一对多的依赖关系,当一个被观察的对象发生改变时,所有依赖于它的对象都会得到通知并采取相应行为。使用观察者模式的优点是将被观察者和观察者解耦,从而可以不影响被观察者继续自己的行为动作。观察者模式适合应用于一些“事件触发”场合。
7.外观(Facade)模式
(1).在门面模式中,通常只需要一个门面类,并且此门面类只有一个实例,换言之它是一个单列类(要使用单列模式)。
二.Jive安全管理机制
1.安全验证机制。主要是验证用户名和密码组合是否与数据库中注册时的数据一致,以确认该用户身份为注册用户。这是对所有的JSP访问都进行拦截访问。
2.访问权限控制(ACL)。对不同的数据不同用户拥有不同的访问权限,例如,一个帖子普通用户可以浏览,但是不能更该;但是管理员却可以编辑删除。这部分功能是通过代理模式实现,为每个关键数据都建立一个代理类用来实现访问权限检查,这在前面讨论过。
3.用户资料管理系统。主要是管理用户的资料数据,进行用户组和用户关系的建立等。
三.Jive的缓存机制
1.缓存(Cache)机制是提高系统运行性能必不可少的技术。缓存机制从原理上讲比较简单,就是在原始数据第一次读取后保存在内存中,下次读取时,就直接从内存中读取。原始数据有可能保存在持久化介质或网络上。缓存机制也是代理模式的一种实现。
四.全文检索和Lucene
1.这个功能主要核心依赖另外一个开放源代码项目Lucene(http://jakarta.apache.org/lucene/docs/index.html)。Jakarta Lucene是一个高性能全文搜索引擎,可以跨平台应用于任何搜索应用。
五.Jive的树形结构
1.Jive的管理功能中提供了将Jive数据库数据导出到XML文件的管理工具,在这个工具功能实现中,使用了树形结构的遍历技术。
六.XML和JDOM
分享到:
相关推荐
- **1.8.5 jive 学习笔记** - 提供了学习Jive设计模式的笔记和心得,有助于读者消化和吸收所学知识。 通过对Jive设计模式的深入学习,开发者可以提升自己的编程技艺,更好地应对复杂的项目挑战。不论是新手还是经验...
通常,这样的博客可能会包含作者对 Jive 的使用经验、遇到的问题及其解决方案,或者是 Jive 相关的开发心得。 标签 "源码 工具" 表明讨论可能涉及 Jive 的源代码分析或使用的开发工具。对于开发者来说,了解 Jive ...
对于开发者而言,深入研究Jive2.6的源码,不仅可以学习到如何构建大型社交网络应用,还能掌握如何处理并发、性能优化、安全性等方面的问题。同时,通过参与开源社区(如加入描述中提到的群组),可以与其他开发者...
2. **参与技术社区**:加入相关的技术社区或群组,与其他开发者交流心得,共同进步。 3. **掌握开发工具**:熟练使用IDE(如IntelliJ IDEA、Eclipse等)和其他辅助工具,提高开发效率。 4. **深入学习框架与技术**:...
为能和大家能共同探讨"设计模式",我将自己在学习中的心得写下来,只是想帮助更多 人更容易理解GoF 的《设计模式》。由于原著都是以C++为例,以Java 为例的设计模式 基本又都以图形应用为例,而我们更关心Java 在...
《JAVA程序员之路书》推荐了几个优秀的开源项目,如Jive PetStore,这是一个基于J2EE的电子商务应用示例,涵盖了MVC架构、数据库操作、安全控制等多个方面,适合初学者进行实战练习。 此外,书中还提到了一些资源...
为能和大家能共同探讨"设计模式",我将自己在学习中的心得写下来,只是想帮助更多人更容易理解 GoF 的《设计模式》。由 于原著都是以C++为例, 以Java为例的设计模式基本又都以图形应用为例,而我们更关心Java在中间件等...