JSF学习笔记二

本文介绍JSF框架中的国际化配置方法,包括资源文件的命名与使用、页面语系的设置等,并详细说明了如何管理和配置Bean,包括初始化设置及自定义转换器的应用。
JSF国际化信息:

资源文件:
资源文件名由 basename+语言+地区 组成,如message_zh_CN.properties
使用<f:loadBundle>来指定载入信息资源。如<f:loadBundle basename="message" var="msg"/>
<h:outputText value="#{msg.titleTest}"/>
应用<f:view locale="zh_CN">直接指定所要用的语系。

在faces-config.xml中设置语系:
<application>
<locale-config>
<default-locale>en</default-locale>
<supported-locale>zh_CN</supported-locale>
</locale-config>
</application>
<default-locale>必须有一个,<supported-locale>可以有多个。

JSF中使用Bean:
页面中注意区分jsp表示语言${}和JSF表示语言#{},注意JSF的标签上的属性设定时,只接受JSF表示语言。

bean的配置与设定:
JSF预定义会读取faces-config.xml中关于bean的定义,如果想自行设置定义文件的名称,则在web.xml中设置:
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/beans1.xml,/WEB-INF/beans2.xml</param-value>
</context-param>

在其他bean中取得设置的bean:
FacesContext context = FacesContext.getCurrentInstance();
//得到bean
ValueBinding binding = context.getApplication().createValueBinding("#{user}");
//如果是得到bean的属性
//ValueBinding binding = context.getApplication().createValueBinding("#{user.name}");
User user = (User)binding.getValue(context);

启动bean时,自动设置bean的初始值:
<managed-bean>
<managed-bean-name>user</managed-bean-name>
<managed-bean-class>com.zdx.po.User</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<!-- 设置name初始值为zdx -->
<managed-property>
<property-name>name</property-name>
<value>zdx</value>
</managed-property>
<!-- 设置password初始值为null -->
<managed-property>
<property-name>name</property-name>
<null-value/>
</managed-property>
</managed-bean>

标准转换器:
<f:convertDateTime pattern="dd/MM/yyyy"/>
<f:convertNumber />
自定义转换器:
实现javax.faces.convert.Converter接口。
例如:

public class MyConvert implements Converter {

public Object getAsObject(FacesContext arg0, UIComponent arg1, String arg2) {

String [] strs = arg2.split(",");

User user = new User();
user.setName(strs[0]);
user.setPassword(strs[1]);

return user;
}

public String getAsString(FacesContext arg0, UIComponent arg1, Object arg2) {

String name = ((User)arg2).getName();
String password = ((User)arg2).getPassword();

return name+","+password;
}

}
然后我们就应该告诉JSF这件事(在faces-config.xml中注册):
<converter>
<converter-id>com.zdx.User</converter-id>
<converter-class>com.zdx.MyConvert</converter-class>
</converter>
在jsf页面中使用转换器的话,就要指定所要使用的转换器标识(converter-id),如:
<h:outputText value="#{user}" converter="com.zdx.User"/>或者
<h:outputText value="#{user}">
<f:converter converterId="com.zdx.User"/>
</h:outputText>
潮汐研究作为海洋科学的关键分支,融合了物理海洋学、地理信息系统及水利工程等多领域知识。TMD2.05.zip是一套基于MATLAB环境开发的潮汐专用分析工具集,为科研人员工程实践者提供系统化的潮汐建模计算支持。该工具箱通过模块化设计实现了两大核心功能: 在交互界面设计方面,工具箱构建了图形化操作环境,有效降低了非专业用户的操作门槛。通过预设参数输入模块(涵盖地理坐标、时间序列、测站数据等),用户可自主配置模型运行条件。界面集成数据加载、参数调整、可视化呈现及流程控制等标准化组件,将复杂的数值运算过程转化为可交互的操作流程。 在潮汐预测模块中,工具箱整合了谐波分解法潮流要素解析法等数学模型。这些算法能够解构潮汐观测数据,识别关键影响要素(包括K1、O1、M2等核心分潮),并生成不同时间尺度的潮汐预报。基于这些模型,研究者可精准推算特定海域的潮位变化周期振幅特征,为海洋工程建设、港湾规划设计及海洋生态研究提供定量依据。 该工具集在实践中的应用方向包括: - **潮汐动力解析**:通过多站点观测数据比对,揭示区域主导潮汐成分的时空分布规律 - **数值模型构建**:基于历史观测序列建立潮汐动力学模型,实现潮汐现象的数字化重构预测 - **工程影响量化**:在海岸开发项目中评估人工构筑物对自然潮汐节律的扰动效应 - **极端事件模拟**:建立风暴潮天文潮耦合模型,提升海洋灾害预警的时空精度 工具箱以"TMD"为主程序包,内含完整的函数库示例脚本。用户部署后可通过MATLAB平台调用相关模块,参照技术文档完成全流程操作。这套工具集将专业计算能力人性化操作界面有机结合,形成了从数据输入到成果输出的完整研究链条,显著提升了潮汐研究的工程适用性科研效率。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值