tomcat在运行的过程中,不同的国家输出的信息(log信息)是不同的语言,通过以下方法做到的:
根据本地化对象来实现,它封装了适用于本地环境的资源。
tomcat将一些资源配置信息写入properties文件中,这样便于读取与编辑,如果将所有类的错误信息都写在一个properties文件,优惠导致文件太大,不便于读写。为避免这种情况,tomcat将properties文件按照不同的包进行划分,每个包下都有自己的properties文件。org.apache.catalina.connector包下的properties文件包含了该包下所有的类中可能抛出的错误与配置信息。每个properties文件都由一个org.apache.catalina.util.StringManager实例来处理。在tomcat运行时,会建立很多StringManager类的实例,每个实例对应一个properties文件。
在每个类需要查找某个配置的提示信息时,会先获取对应的StringManager实例。
eg:
StandardServer.java类来说(只贴出部分代码):
public static final String Package = "org.apache.catalina.core";
//上面的这个属性来自Constants.java类里
private static Hashtable managers = new Hashtable();
/**
* The string manager for this package.
*/
private static final StringManager sm =
StringManager.getManager(Constants.Package);
public synchronized static StringManager getManager(String
packageName) {
StringManager mgr = (StringManager)managers.get(packageName);
if (mgr == null) {
mgr = new StringManager(packageName);
managers.put(packageName, mgr);
}
return mgr;
}
private StringManager(String packageName) {
String bundleName = packageName + ".LocalStrings";
try {
bundle = ResourceBundle.getBundle(bundleName);
return;
} catch( MissingResourceException ex ) {
而在StandardServer.java类中是这样使用的,
public void start() throws LifecycleException {
// Validate and update our current component state
if (started) {
log.debug(sm.getString("standardServer.start.started"));
//根据这里的key值在资源文件中查找对应的value值,LocalStrings.properties资源文件中可以找到standardServer.start.started=This server has already been started配置项
return;
}
如果本地环境为日文系统,那么通过org.apache.catalina.startup.LocalStrings键值取得的资源是org.apache.catalina.startup.LocalStrings_ja.properties中的文件信息。
最后通过bundle.getString(key);方法,即可得到本地资源信息。
ResourceBundle.getBundle("config.page");使用方法得学习一下
项目中对日志内容等进行国际化管理。并且,日志内容用两个文件处理。
日志内容资源文件是Log.properties.
那么建立两个资源束分别处理这这个本地资源。
bundle = ResourceBundle.getBundle("Log.");
使用时,只需要添加不同的本地信息即可。例如:Log_ja.properties,Log_en.properties等
分享到:
相关推荐
10. **国际化支持**:Tomcat 7.0增强了对多语言环境的支持,使得全球化的Web应用部署更为方便。 总之,Apache Tomcat 7.0是一个强大且成熟的Web服务器,它的功能丰富,易于使用,并且在性能和稳定性上都有显著提升...
7. **多语种支持**:增强了国际化(i18n)支持,使得应用程序更容易面向全球用户。 在安装这两个版本时,可以根据项目需求选择适合的版本。对于Windows系统,可以选择`.zip`格式的Tomcat 7安装包,而Linux或macOS...
8. **国际化与本地化**:Tomcat支持多语言环境,通过资源包(Resource Bundle)提供不同语言版本的内容,使得Web应用可以面向全球用户。 9. **集群与负载均衡**:虽然Tomcat 6.0.10的集群和负载均衡功能相对较简单...
9. **多语种支持**:Tomcat 7支持多种语言环境,可以方便地进行国际化设置。 10. **文档完善**:官方文档详尽且全面,对于开发者和管理员来说是一份宝贵的资源。 在7.0.109这个特定版本中,可能会包括一些bug修复...
11. **国际化与本地化**:Tomcat支持多语言环境,允许开发人员为不同地区提供本地化的Web应用。 12. **版本兼容性**:Tomcat 8.0.42支持Java EE 7规范,这意味着它可以运行基于该规范的Web应用。 13. **社区支持**...
4. **国际化支持**:增加了对多种语言的支持,方便了全球范围内的用户使用。 5. **JMX支持**:集成了Java Management Extensions (JMX),允许通过JMX管理Tomcat实例,监控服务器状态和性能。 **Tomcat6.0** ...
这通常涉及到设置正确的字符编码,如UTF-8,以确保非ASCII字符在日志中正确显示,这对国际化应用尤其重要。 5. **安全性增强**:Tomcat 8.5增强了默认的安全配置,包括加强的密码加密和更严格的SSL/TLS设置,为应用...
Tomcat 9.0.44的jar包包含了服务器运行所需的所有组件,如servlet容器、JSP引擎、连接器、国际化支持、JNDI服务、WebSocket支持等。这些jar包包括但不限于:`tomcat-coyote.jar`(Coyote HTTP/1.1协议处理)、`...
9. **国际化和本地化**:支持多种语言的显示,允许开发者轻松地为不同地区的用户提供本地化的Web应用。 10. **错误处理和异常报告**:Tomcat提供了详细的错误页面和异常报告,有助于开发者快速定位和解决运行时问题...
12. **国际化与本地化**:对国际化和本地化支持的增强,使得应用程序更容易适应不同的语言环境。 在解压"apache-tomcat-8.5.61"这个压缩包后,你会得到一个包含各种组件和配置文件的目录结构,如bin目录下的启动和...
9. **国际化和本地化(i18n & l10n)**:Tomcat支持多语言环境,`java.util.ResourceBundle`和`javax.servlet.jsp.jstl.fmt.LocalizationContext`等相关类在API文档中描述了如何处理本地化资源。 10. **错误处理**...
8. **国际化与本地化**:Tomcat支持多语言环境,可以在web应用中通过Locale对象和资源包实现。 9. **错误处理**:Tomcat提供定制化的错误页面,通过配置error-page元素在web.xml中定义。 10. **集群与负载均衡**:...
10. **国际化与本地化**:TomCat API支持多种语言环境,通过`ResourceBundle`和`Localizer`类,可以轻松实现应用的国际化和本地化。 总体来说,TomCat API是一个功能强大的工具集,它为开发者提供了构建高效、可...
10. **国际化和本地化**:Tomcat支持多语言环境,通过资源包(Resource Bundle)实现本地化的Web应用。 总之,Apache Tomcat 8.0.50 64位版本是一个强大的Web应用服务器,广泛应用于各种规模的Java Web项目中。了解...
本项目“基于i18n国际化微服务统一处理错误码”就是针对这一需求而设计的。通过结合SpringBoot框架和i18n(国际化)技术,我们可以实现错误信息的多语言支持,让错误信息能够适应不同的用户群体。 首先,让我们来...
12. **国际化与本地化**:Tomcat支持多种语言,通过`Accept-Language`请求头,可以提供不同语言的响应。 总之,“apache-tomcat-9.0.65”是一个功能强大的Java Web服务器,它提供了丰富的配置选项和扩展能力,是...
10. **国际化和本地化**: 对于多语言环境,Tomcat 8支持更丰富的国际化和本地化设置,可以轻松调整应用的语言环境。 在解压版的Apache Tomcat 8.0.51中,包含了运行Tomcat所需的所有文件,包括服务器的启动脚本、...
10. **国际化与本地化支持**:由于是UTF-8编码版本,这个Tomcat实例能很好地处理多种语言环境,提供更好的全球化支持。 在解压"apache-tomcat-7.0.108"后,你会得到包括bin、conf、lib、logs、webapps、work等目录...
9. **多语种支持**:Tomcat 5.0.28支持多种语言的国际化,开发者可以通过`WEB-INF/web.xml`文件中的locale元素设置。 10. **热部署**:Tomcat具有热部署功能,即在不重启服务器的情况下,可以更新或替换正在运行的...
10. **国际化和本地化**: `org.apache.catalina.util`包下的`ResourceBundle`类和相关资源文件展示了Tomcat如何支持多种语言环境。 通过深入研究Tomcat 5.5的源代码,开发者不仅可以提升对Servlet和JSP技术的理解...