Mondrian国际化
在Schema里的Dimension、Level、Measure标签都有一个caption属性,在shecma里有个measuresCaption属性,Hierarchy里有个allMemberCaption属性都是国际化显示用的。格式为:caption="%{}"
通过以下几个步骤便可实现国际化
一、修改Schema如下
.
<Dimension foreignKey="TIME_ID" name="TIME">
<Hierarchy hasAll="true" allMemberName="All time" primaryKey="TIME_ID" allMemberCaption="%{compensation.dimension.time.allmember.caption}">
<Table name="TIME_TO_MONTH">
</Table>
<Level name="YEAR" table="TIME_TO_MONTH" column="YEAR" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never">
</Level>
<Level name="QUARTER" table="TIME_TO_MONTH" column="QUARTER" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never">
</Level>
<Level name="MONTH" table="TIME_TO_MONTH" column="MONTH" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never">
</Level>
</Hierarchy>
</Dimension>
<Measure name="UOT1" column="UOT1" caption="%{compension.measure.uot1.caption}" datatype="Numeric" formatString="#,##0.###" aggregator="sum">
</Measure>
二、在WEB Application 的classes里创建对应的国际化文件,命名如下locale_zh_CN.properties
compensation.dimension.time.allmember.caption=\u5168\u90e8\u65f6\u95f4
compensation.dimension.position.allmember.caption=\u5168\u90e8\u8d44\u4f4d
compension.measure.uot1.caption=1.5\u500d\u52a0\u73ed\u65f6\u6570
compension.measure.uot2.caption=2\u500d\u52a0\u73ed\u65f6\u6570
compension.measure.uot3.caption=3\u500d\u52a0\u73ed\u65f6\u6570
三、在classes里添加mondrian.properties文件(默认是在WEB-INF下),并添加下面两个属性
Locale:用于指定要使用的语言
mondrian.rolap.localePropFile:国际化文件绝对路径
Locale=zh_CN
mondrian.rolap.localePropFile=D:\\JAVA\\Tomcat5.5\\webapps\\mondrian\\WEB-INF\\classes\\locale.properties
四、在显示的页面上的<jp>标签里添加dynLocale="zh_CN" dynResolver="mondrian.i18n.LocalizingDynamicSchemaProcessor"
<jp:mondrianQuery id="query01" jdbcDriver="oracle.jdbc.OracleDriver" dynLocale="zh_CN" dynResolver="mondrian.i18n.LocalizingDynamicSchemaProcessor" jdbcUrl="jdbc:oracle:thin:@*.*.*.*:1521:wiptest" jdbcUser="oee" jdbcPassword="oee" catalogUri="/WEB-INF/queries/Compensation.xml">
select {[Measures].[UOT1],[Measures].[UOT2],[Measures].[UOT3]} ON columns,
{([TIME].[All time],[POSITION].[All position], [DEPT]) } on rows
FROM [Compensation]
</jp:mondrianQuery>
关于国际化功能实现相关代码在LocalizingDynamicSchemaProcessor和MondrianProperties两个类里。
分享到:
相关推荐
- **国际化的支持** 是Mondrian的一个重要特性,它允许Schema和数据的本地化,支持多种语言和地区设置。 #### 七、聚合表 - **聚合表** 是预计算的结果集,用于加速查询响应时间。通过定义和构建聚合表,可以显著...
Mondrian还支持数据的国际化处理,可以通过插件来实现。 6. 聚合表与性能优化 为了提高查询效率,Mondrian使用聚合表,这是预先计算好的汇总数据。文档对聚合表的介绍包括它的定义、建立、如何被Mondrian识别和使用...
它可以轻松实现多维数据的可视化,并支持国际化。 1. 维度层(the dimensional layer):这一层负责解析、验证和执行MDX查询。它批量处理查询请求,通过集合层优化性能。 1. 集合层(the star layer):集合层管理...
- **国际化**:Mondrian支持多语言环境,可以通过配置文件指定不同语言的翻译。 - **聚合表**:一种预先计算并存储的表,用于加速查询响应时间。 - **访问控制**:Mondrian支持基于角色的访问控制,可以根据用户的...
Mondrian 支持多语言环境,可以通过配置 Schema 处理器来实现国际化。 ##### Localizingschemaprocessor 本地化 Schema 处理器负责处理 Schema 文件中的国际化设置。 #### Aggregatetable 聚合表 聚合表用于存储...
Mondrian支持国际化功能,可以适应不同语言环境下的应用需求。 - **7.1 本地化Schema处理器(Localizing Schema Processor)** 本地化Schema处理器可以处理不同语言环境下的Schema文件,使Schema文件能够适应不同的...
定制化Schema处理器允许根据用户的语言偏好动态调整Schema配置,从而支持国际化。 #### 8. 聚合表(Aggregate Table) 聚合表是预先计算好并存储起来的汇总数据表。通过使用聚合表,可以显著提高查询性能,特别是在...
**5.4 All 成员的国际化** - **All 成员**:确保“all”成员也支持多种语言。 - 这通常涉及到 schema 文件中的额外配置。 #### 6. Mondrian Schema 文件的编写 **6.1 逻辑模型** - **逻辑模型定义**:schema ...
9. **国际化和本地化**:支持多语言,便于全球用户使用。 10. **安全性与访问控制**:内置的安全机制确保了数据和报告的访问权限控制,可以根据用户角色分配不同级别的访问权限。 在2014年的版本中,Pentaho ...
SpagoBI还支持多语言环境,适合国际化的业务需求。 ### 结论 通过对比分析,我们可以看到开源BI平台在功能、性能和用户体验方面都有显著提升,且在某些场景下可以媲美甚至超越商业平台。随着开源社区的不断壮大和...
风格派反对传统的艺术表达和个人主义,主张艺术应该体现国际化的通用语言,去除所有具象元素,追求纯粹的抽象形态。他们认为,平面、直线和基本几何形状是最基本的艺术表达手段,色彩则限制为红色、黄色、蓝色这三种...