PropertySet教程-1.简介和配置

简介:

  inkfish原创,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish )。

  PropertySet(来源:http://blog.csdn.net/inkfish) 是由opensymphony组织开发的的一个开源项目,但是那个项目文档少,长时间没有更新,官方文档错误奇多,所以现在在项目中使用并不广泛。但这并不妨碍PropertySet成为一个优秀的key-value持久化模块,当前,PropertySet可以说已经够用。这里我整理书写了PropertySet的文档。(来源:http://blog.csdn.net/inkfish)


Property文档 (来源:http://blog.csdn.net/inkfish)

 

Property简介(来源:http://blog.csdn.net/inkfish)

  简而言之,PropertySet就是一个存储key-value对的模块,他能将key-value通过XML、EJB、Ofbiz、JDBC、JDO等进行存储,也可以自己实现AbstractPropertySet从而自定义更多的存储形式。PropertySet最典型的适用存储数据是配置信息、用户首选项等。在项目中,如果一些可以转化为key-value的信息在一开始无法确定存储位置,或者想可以灵活改变存储位置,那就可以考虑使用PropertySet。(来源:http://blog.csdn.net/inkfish)

  PropertySet的优点是:1.轻量级;2.灵活;3.易用;4.适用于J2SE和J2EE平台。(来源:http://blog.csdn.net/inkfish)

 

PropertySet的配置 (来源:http://blog.csdn.net/inkfish)

  Property默认提供的存取方式有:aggregate、cached、jdbc、ejb、javabeans、map、memory、serializable、serializable、ofbiz、hibernate、ojb、xml。(来源:http://blog.csdn.net/inkfish)

配置文件的放置位置为:(来源:http://blog.csdn.net/inkfish)
  1.propertyset.xml
  2./propertyset.xml
  3.META-INF/propertyset.xml
  4./META-INF/propertyset.xml
  5.META-INF/propertyset-default.xml
  6./META-INF/propertyset-default.xml

  PropertySet会按以上顺序挨个寻找,第一个被找到的即作为配置文件。由于propertyset的jar中自带propertyset-default.xml,因此多数情况下无需配置即可使用(JDBC或Hibernate情况下,需要指定JNDI等信息,不可缺省)。(来源:http://blog.csdn.net/inkfish)

  关于配置文件的书写,可以参考默认配置文件,默认配置文件内容是:(来源:http://blog.csdn.net/inkfish)

<propertysets> <propertyset name="aggregate" class="com.opensymphony.module.propertyset.aggregate.AggregatePropertySet"/> <propertyset name="cached" class="com.opensymphony.module.propertyset.cached.CachingPropertySet"/> <propertyset name="jdbc" class="com.opensymphony.module.propertyset.database.JDBCPropertySet"> <arg name="datasource" value="jdbc/DefaultDS"/> <arg name="table.name" value="OS_PROPERTYENTRY"/> <arg name="col.globalKey" value="GLOBAL_KEY"/> <arg name="col.itemKey" value="ITEM_KEY"/> <arg name="col.itemType" value="ITEM_TYPE"/> <arg name="col.string" value="STRING_VALUE"/> <arg name="col.date" value="DATE_VALUE"/> <arg name="col.data" value="DATA_VALUE"/> <arg name="col.float" value="FLOAT_VALUE"/> <arg name="col.number" value="NUMBER_VALUE"/> </propertyset> <propertyset name="ejb" class="com.opensymphony.module.propertyset.ejb.EJBPropertySet"/> <propertyset name="javabeans" class="com.opensymphony.module.propertyset.javabeans.BeanIntrospectorPropertySet"/> <propertyset name="map" class="com.opensymphony.module.propertyset.map.MapPropertySet"/> <propertyset name="memory" class="com.opensymphony.module.propertyset.memory.MemoryPropertySet"/> <propertyset name="serializable" class="com.opensymphony.module.propertyset.memory.SerializablePropertySet"/> <propertyset name="ofbiz" class="com.opensymphony.module.propertyset.ofbiz.OFBizPropertySet"/> <propertyset name="hibernate" class="com.opensymphony.module.propertyset.hibernate.HibernatePropertySet"> <arg name="hibernate.connection.datasource" value="jdbs/DefautDS" /> <arg name="hibernate.dialect" value="net.sf.hibernate.dialect.HSQLDialect" /> </propertyset> <propertyset name="ojb" class="com.opensymphony.module.propertyset.ojb.OJBPropertySet"/> <propertyset name="xml" class="com.opensymphony.module.propertyset.xml.XMLPropertySet"/> </propertysets>

  注:PropertySet项目中错别字很多,比如“<arg name="hibernate.connection.datasource" value="jdbs/DefautDS" /> ”中的“jdbs/DefautDs ”其实应该写成“jdbc/DefaultDS ”。(来源:http://blog.csdn.net/inkfish)

(待续)(来源:http://blog.csdn.net/inkfish)

目录
相关文章
|
7月前
|
Unix 编译器 C语言
c++简介
c++简介
60 0
|
21天前
|
XML 数据格式
XLink 和 XPointer 简介
XLink 和 XPointer 简介
28 5
|
7月前
|
算法 程序员 编译器
【C/C++】C/C++编程——C/C++简介
【C/C++】C/C++编程——C/C++简介
51 0
|
7月前
|
编译器 开发工具 C语言
C/C++入门001-概述环境搭建与案例
C/C++入门001-概述环境搭建与案例
|
存储 算法 内存技术
多媒体系统简介
一、多媒体系统简介 多媒体系统是指能够处理和展示多种媒体信息的计算机系统。它可以处理和播放音频、视频、图像等多种形式的媒体数据,并提供交互式的操作和用户界面。多媒体系统广泛应用于娱乐、教育、广告、通信等领域。 多媒体系统通常由以下几个组成部分构成: 1. 媒体输入设备:用于将外部的媒体数据输入到计算机系统中,如麦克风、摄像头、扫描仪等。 2. 媒体处理软件:用于对媒体数据进行处理和编辑的软件,如音频编辑软件、视频编辑软件、图像处理软件等。 3. 媒体存储设备:用于存储媒体数据的设备,如硬盘、光盘、闪存等。 4. 媒体输出设备:用于将处理后的媒体数据输出到外部设备或显示器上,如音箱、显示器、投影
326 0
|
XML 监控 Devops
CUNIT简介
CUNIT简介
470 0
CUNIT简介
|
并行计算 API 调度
TOPI 简介
TOPI 简介
182 0
|
安全 数据库 数据格式
EndnoteX9简介及基本教程使用说明
EndnoteX9简介及基本教程使用说明
479 0
EndnoteX9简介及基本教程使用说明
|
API C++
exosip 和 pjsip 简介
oSIP  oSIP的开发开始于2000年7月,第一个版本在2001年5月发 布,到现在已经发展到3.x了。它采用ANSI C编写,而且结 构简单小巧,所以速度特别快,它并不提供高层的SIP会话 控制API,它主要提供一些解析SIP/SDP消息的API和事务处理 的状态机,oSIP的作者还开发了基于oSIP的UA lib:exosip和 proxy server lib:partysip.
3979 0
|
索引 容器
NSIndexSet 简介
NSIndexSet (以及它的可修改子类, NSMutableIndexSet) 是一个排好序的,无重复元素的整数集合。它看上去有点像 支持离散整数的 NSRange .它能用于快速查找特定范围的值的索引,也能用于快速计算交集, 同时,Foundation collection class 提供了很多好用的方法,方便你使用 NSIndexSet.
386 0
NSIndexSet 简介