LoadResource

编辑词条 A-1、LoadResource   函数功能:该函数装载指定资源到全局存储器。   函数原型; HGLOSAL LoadResouare(HMODULE hModule,HRSRC hReslnfo);   参数:   hModule:处理包合资源的可执行文件的模块句柄。若hModule为NULL,系统从当前过程中的模块中装载资源。   hReslnfo:将被装载资源的句柄。它必须由函数FirtdResource或FindResourceEx创建。   返回值:如果函数运行成功,返回值是相关资源的数据的句柄。如果函数运行失败,返回值为NULL。若想获得更多的错误信息,请调用GetLastError函数。   注意:LoadResource的返回类型是向后兼容的HGLOBAL型,而不是因为函数返回一个全局存储块句柄。不要传递这个句柄给函数GlobalLock或GlobalFree。为了得到更多资源数据信息,请调用LockResource函数。   当使用完资源后,必须通过调用函数以释放加速器表、位图、光标、图标以及菜单所占的内存资源:加速器表:DestroyAcceleratorTable;位图:DeleteObject;光标:DestroyCursor;图标:Destroylcon;菜单:DestroyMenu。   当过程创建终止时,系统将自动删除这些资源。但是调用相关函数也可以保留内存减少过程的工作设置所占空间。 A-2、 LoadBundle f:loadBundle是JSF提供的一个支持JSP本地化(多语言支持)操作的标签。 JSF提供了一套本地化支持的机制,包括消息,页面显示等。 f:loadBundle是JSF提供的页面显示方面的支持JSP本地化(多语言支持)操作的标签。 使用f:loadBundle标签,可以为不同的来访用户呈现不同语言界面的页面从而简单地让你的JSF WEB应用实现国际化支持。 f:loadBundle用法: f:loadBundle的使用非常简单: 1,首先,为不同的语言分别准备一个.properties文件。比如,若要支持英文,中文,日文,则英文可以为Messages.properties,中文为Messages_zh.properties,日文为Messages_ja.properties等。 文件内容的形式为: message-key=message-value userName=用户名: .properties文件打包之前必须转换成ascii码形式,可以以目录阶层形式加以组织,并置于WEB-INF目录下。比如资源文件的目录阶层可以为: WEB-INF\com\test\resource\Messages.properties WEB-INF\com\test\resource\Messages_zh.properties WEB-INF\com\test\resource\Messages_ja.properties 2,然后在JSP里通过f:loadBundle标签加载该.properties文件,比如加载具有上面阶层的资源文件: <f:loadbundle basename="com.test.resource.Messages" var="msg"> 其中basename为资源文件所在的位置(com\test\resource)与名称(Messages)。var为加载后的变量名。JSF可以根据用户浏览器的配置自动装载匹配的资源文件。 然后使用h:outputText输出页面内容 <h:outputtext value="#{msg['message-key']}"></h:outputtext> 或者 <h:outputtext value="#{msg.message-key}"></h:outputtext> 就可以了。 另外,需要JSF支持所规定的语言,需要在faces-config.xml加上类似以下配置: <faces-config> <application> <locale-config> <default-locale>en</default-locale> <supported-locale>zh</supported-locale> <supported-locale>ja</supported-locale> </locale-config> </application> </faces-config> 该配置告诉JSF框架,默认的语言配置以及需要支持哪些语言配置。 A-3. jsf中action、actionlistener、valueChangeListener的区别 项目 校验 参数 事件 页面跳转 action ok 不传入当前控件 当铵钮被单击时产生事件.提交表单 返回跳转的页面导向,根据配置文件跳转 actionListener ok 传入当前控件 当铵钮被单击时产生事件.提交表单 无返回值,返回本页面 ValueChangeListener ok 传入当前控件,无返回值 不提交表单(需指定其onchange/onclick="submit"才自动提交表单 返回action,动态生成跳转 详细说明: action()处理的是业务逻辑.实际上JSF会自动产生一个"预设的ActionListener"来处理事件,并根据其返回值决定页面跳转.第五阶段:调用应用执行, 会影响到页面间的导航(navigation)。主要处理一些业务逻辑并返回几个业务逻辑结果(String类型),JSF的导航系统将会根据这个来选择恰当的下一个页面. 会提交表单. actionListener(ActionEvent e)处理页面上组件的"监听事件".第五阶段:调用应用执行, 不会影响到导航.主要操作当前页面内的组件,或者是进行一些业务模型上的改变,或者是修改backing bean(托管Bean)的属性等,并不会出现在页面间的跳转。会提交表单. valueChangeListener(ValueChangeEvent event)处理页面上组件值变化的"监听事件","第三阶段:验证请求值"执行 注意: ActionListener (事件监听器)是用于解决只影响用户界面的事件 , 特别地,在beans的form数据被加载和触发验证前被调用 , 用immediate=“true”指明这个行为不触发验证 , 在监听器调用后,会重新显示表单 , 不应用导航规则,不重定向页面 Action 隶属于按钮、超链接和图形映射控件,自动提交对应表单 。 ValueChangeListener 隶属于单选框、组合框、列表框、复选框、文本框等控件,需要用onclick=“submit()”或onchange=“submit()”的方式提交表单

你可能感兴趣的:(jsp,Web,bean,F#,JSF)