`

struts国际化,资源文件读取三

阅读更多

本示例演示客户进行语言设置,从而更改整个系统语言.

客户在changLang.jsp进行设置提交之后转发到logon.jsp查看该页面标签语言变化

如下:

changeLang.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@include file="share/html_head_taglib.jspf" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

<form action="changLangAction.do">
	<input type="radio" name="lang" value="zh"/>中文&nbsp;<input type="radio" name="lang" value="en"/>英文
	<br>
	<input type="submit" value="submit"/>
	</form>
</body>
</html>

ChangLangAction.java

package com.lwf.struts.action;

import java.util.Locale;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.Globals;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class ChangLangAction extends Action {

	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		String lang = request.getParameter("lang");
		lang = (lang == null) ? ""  : lang.trim();
		
		Locale locale = null;
		if(lang.equals("zh")){
			locale = new Locale("zh","cn");
		}else{
			locale = new Locale("en","us");
		}
		request.getSession().setAttribute(Globals.LOCALE_KEY, locale);
                             //this.setLocale(request, locale);可以这行代码替换上一行代码
		return mapping.findForward("success");
	}

}

 

配置文件:

 

<action path="/changLangAction" type="com.lwf.struts.action.ChangLangAction"  scope="request">
			<forward name="success" path="/logon.jsp"></forward>
		</action>

 logon.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html:html>
<head>
<script type="text/javascript">
	

</script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>logon</title>
</head>
<body>
<html:form action="logon">
	<table border="0" width="100%">
		<tr>
			<th align="right"><bean:message key="login.user"/></th>
			<td align="left"><html:text property="username" size="20" maxlength="20"></html:text></td>
		</tr>
		<tr>
			<th align="right"><bean:message key="login.pwd"/></th>
			<td align="left"><html:password property="password" size="20" maxlength="20"></html:password></td>
		</tr>
		<tr>
			<td align="right"><html:submit>logonin</html:submit>	</td>
			<td align="left"><html:button property="register" >register</html:button><html:reset>reset</html:reset></td>
		</tr>
	</table>
</html:form>
</body>
</html:html>

 

分享到:
评论

相关推荐

    STRUTS2国际化的问题

    - 可以通过`&lt;result&gt;`标签中的`type`属性设置国际化资源文件,以便在特定的结果类型下使用相应的语言资源。 #### 三、后端实现国际化 1. **使用`Locale`对象**:`Locale`对象用于表示用户所在的地区及语言环境。...

    Struts2_国际化

    在JSP页面中,使用Struts2的标签库中的标签来读取并显示国际化资源文件中的文本。 在编写国际化资源文件时,需要注意编码方式。由于国际化资源文件中可能包含中文或其他非ASCII字符,为了防止页面出现乱码,所有的...

    一个利用struts做的简单国际化

    2、提供不同版本的国际化资源文件,中文需要采用native2ascii转换成unicode 3、在jsp中采用标签来读取国际化消息文本 4、了解利用struts默认将locale放到session中的特性,完成采用编程的方式切换语言设置,设置...

    国际资源化struts

    3. **Action类**:在处理用户请求的Action类中,我们可以通过`ActionContext`获取当前的本地化环境,然后使用`ResourceBundle`来读取相应的资源文件。例如: ```java ActionContext context = ActionContext....

    struts1整合jfreechar,读取EXCEL数据

    在本项目中,我们将Struts1与JFreeChart结合,用于读取Excel数据并生成图表。 首先,我们需要理解如何使用Apache POI库来读取Excel文件。POI是Apache软件基金会的项目,提供了处理Microsoft Office格式文件的API。...

    Struts国际化例子

    国际化的核心是资源包(Resource Bundle),它是一系列键值对的集合,存储了应用程序中用到的各种文本字符串,如按钮文字、错误消息等。这些键值对可以在不同的语言环境下被替换,以展示相应的本地化内容。在Struts...

    struts2实现文件下载功能

    - 在`execute()`方法中,实现文件路径的获取和文件读取逻辑。通常,文件存储在服务器的某个目录下,可以使用`java.io.File`类来处理。 2. **设置返回结果**: - 在Action类中,设置返回值(Result)为`stream`...

    Jinto实现struts国际化的插件

    通过Eclipse的插件系统,开发者可以直接在IDE内完成大部分国际化相关的任务,而无需频繁地在代码和资源文件之间切换。 总的来说,JInto是Struts开发者实现国际化的一个有力工具,它通过与Eclipse的紧密集成,简化了...

    struts 国际化应用

    3. **ActionForm和国际化**:在ActionForm类中,如果需要显示的字段需要国际化,可以直接在表单bean中引用资源包中的键,Struts会自动处理对应的语言字符串。 4. **JSP页面中的国际化**:在JSP页面中,我们可以使用...

    struts1 文件上传 文件下载

    Struts1是一个经典的Java Web框架,它为开发者提供了一种结构化的方式来构建MVC(Model-View-Controller)应用程序。在Struts1中,文件上传和下载是常见的功能,尤其在处理用户交互和数据交换时非常有用。下面将详细...

    struts2 配置文件

    - `&lt;message-resources&gt;`: 国际化资源文件配置。 - `&lt;plug-in&gt;`: 插件配置。 ##### 2. 关键配置项 - **`&lt;form-bean&gt;`**: - 定义表单Bean的属性和验证规则。 - **`&lt;action-mapping&gt;`**: - 映射Action的执行逻辑...

    Struts的文件下载

    在Struts中实现文件下载是一项常见的功能,尤其在处理用户请求获取服务器上的静态或动态资源时。这篇博文将深入探讨如何在Struts框架下实现文件下载的功能。 首先,我们需要了解文件下载的基本原理。当用户点击下载...

    struts中文资源文件转换工具

    资源文件通常包含应用程序的国际化(i18n)信息,如错误消息、提示和界面文本,这些内容往往需要根据不同的语言进行本地化。在Struts中,这些资源通常是以.properties为扩展名的文件,例如`messages_zh_...

    struts2国际化

    Struts2会读取这个参数并加载相应的资源文件。 7. **国际化与视图结合**: - 在JSP页面中,可以直接将资源文件的值引入到页面元素中,例如: ```jsp ``` 8. **使用工具**: - 开发过程中,可以使用一些工具...

    struts2_uploadify带进度条的多文件上传下载

    Struts2提供了丰富的功能,包括动作调度、结果渲染、数据校验、国际化、异常处理等,极大地简化了Java Web开发。 Uploadify是一款基于jQuery的文件上传组件,它支持Ajax方式的异步上传,允许用户在上传文件过程中...

    struts国际化

    开发过程中,可以使用各种工具辅助管理资源文件,如Eclipse的Resource Bundle Editor或专门的国际化工具插件,它们能帮助同步和校对不同语言版本的文本。 6. **StrutsLocaleTest项目** `StrutsLocaleTest`项目很...

    Struts2文件流方式导出下载excel、Txt、image图片

    3. **处理不同类型的文件**:对于Excel和TXT文件,我们可以直接读取文件内容并使用`FileInputStream`。而对于图片,我们可能需要使用`BufferedImage`读取图片,然后转换成流。例如: ```java BufferedImage image =...

    struts数据库国际化

    Struts框架本身提供了一套完整的国际化解决方案,包括资源文件、标签库等。但在某些情况下,需要对数据库中存储的数据进行国际化处理,尤其是在数据直接存储为字符串时。 #### 四、数据库字符国际化组件 根据提供...

    第六章JAVA框架_STRUTS国际化与连接池_实验指导书.doc

    3. **实现Struts国际化**:在Struts框架中,可以通过配置文件指定不同语言版本的资源文件路径。当用户访问应用时,Struts会根据用户的`Locale`加载相应的资源文件。 #### 难点提示 1. **设定本地语言**:需要根据...

Global site tag (gtag.js) - Google Analytics