JavaSE
的
MV
模式(国际化)
一、简介
国际化(
internationalization
)是设计和制造容易适应不同区域要求的产品的一种方式。它要求从产品中抽离所有的与语言,国家/地区和文化相关的元素。换言之,
应用程序
的功能和代码设计考虑在不同地区运行的需要,其代码简化了不同本地版本的生产。开发这样的程序的过程,就称为国际化。
Java
作为一个跨平台的东西,如果想着自己的产品推向世界,
Java
实现国际化,在现在现在编程工程上是必不可少的了。
********************************
猥琐分割线
*******************************
另外:
再说,很多童鞋都说我们缩写的应用软件都基本谈不上国际化,基本能在国内使用已经很了不起了。
我得反驳下这一个说法。
大家都熟知的我们在写
web
项目的时候通常都在使用
MVC
模式的开发,为什么
~
,那是具有一个巨大的有点,功能应用,图形显示,逻辑结构都分开了,利于维护,利于分工。
那么我们就应该想到,如果这一个模式也应用的
JavaSE
上面的画,我们之前所学的东西不都具有这些优点了吗?不能说完全的是,也不能说完全的没有。
做过
android
项目开发的童鞋相对都有那么一定的经验。写每一个
activity
的时候,基本都要在
string
中载入他们每一个控件所对应的值。
好,那我们就看看在
JavaSE
上面的具体操作把。大家感受感受。
二、国际化的步骤
1
、实现国际的程序
2
、实现国际化的参数文件
property
3
、装载
properties
4
、装载对应的
key
三、具体实现
1
、实现国际的程序
先写一个简单的
JavaSE
程序,由于这个相对与本文不是重点,这个就不罗嗦了。
2
、实现国际化的参数文件
property
简单说明:
property
文件
就是一个数据信息的文件,
具体为格式为:
参数
=
对应值
有点类似我们的
map
对应关系
比如我们已经实现了一个
Properties
En.properties
内容为:
title = english
button = my_button
logo = bin/qq.gif
3
、装载
properties
在我们的程序中载入就可以
Properties prop ;//设置文件
/**
* 构造方法,载入properties
*/
public international(){
prop = new Properties();// 属性集合对象
FileInputStream fis = null;
try {
fis = new FileInputStream("src/en.properties");
prop.load(fis);//载入
fis.close();// 关闭流
} catch (Exception e) {
e.printStackTrace();
}
}
4
、装载对应的
key
/**
* 显示界面
*/
public void showUI(){
//设置大小
this.setSize(400,300);
this.setTitle(prop.getProperty("title","中文"));//设置默认值为"中文"
this.setLayout(new java.awt.FlowLayout());
javax.swing.JButton jb = new javax.swing.JButton(prop.getProperty("button","我的按钮"));//设置默认值为"我的按钮"
this.add(jb);
javax.swing.JLabel logo = new javax.swing.JLabel();
logo.setIcon(new ImageIcon(prop.getProperty("logo","bin/360.png")));
this.add(logo);
this.setVisible(true);
}
好我们看看装载前,装载后的效果。
即,将步骤
1
注释后,和没有注视的效果
注释后:
没注释:
当然
,
如果我们载入的是一个鸟语的话
,
即
:
写好鸟语的
properties
文件
title = bird languange
button = bird_button
logo = bin/bird.jpg
只需将
fis = new FileInputStream("src/en.properties");
改为
:
fis = new FileInputStream("src/bird.properties");
即可
四、分析
显然,这么以来,逻辑结构和视图结构基本就能分开了。版本翻译,维护,分工相对以前都比较方便了。同一个模式的来学习
,
现在的主流模式
,
之后学习
web,android
什么的
,
都会相对于比较方便了
.
附件中贴上自己的拙劣代码
.
- 大小: 10.4 KB
- 大小: 13.4 KB
- 大小: 11.1 KB
分享到:
相关推荐
JavaSE可视化编程插件是一种强大的开发工具,它极大地简化了Java应用程序的开发过程,特别是对于初学者和希望提高效率的开发者来说。通过这种插件,用户不再需要编写大量的代码,而是可以通过图形化界面,直接通过...
### JavaSE单例模式的各种实现方法 #### 一、懒汉式(线程不安全) **定义:** 懒汉式单例模式是最简单的实现方式之一,它的特点是第一次被调用时才实例化对象。 **代码示例:** ```java public class ...
正则表达式则是文本处理中的强大工具,可用于数据验证和模式匹配。 总的来说,这个JavaSE学习资料包将引导开发者全面地学习Java语言的核心特性,掌握基本编程技巧,理解并运用集合框架、IO流等关键概念,从而具备...
本项目针对JavaSE的多个核心知识点进行了综合性的测试,涵盖了线程、集合、内部类、设计模式、枚举、IO流以及自定义注解等多个关键领域。 1. **线程**:在Java中,线程是程序执行的最小单位,通过`Thread`类或者...
在这个“javase基础 格式化模板”主题中,我们将深入探讨Java语言的基础知识,包括语法、数据类型、控制结构、类与对象等,并重点关注代码的格式化和模板使用。 1. **Java语言基础** - **语法**:Java语言具有严格...
赠送jar包:javase-2.2.jar; 赠送原API文档:javase-2.2-javadoc.jar; 赠送源代码:javase-2.2-sources.jar; 赠送Maven依赖信息文件:...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
JavaSE 1.6 参考文档 JavaSE 1.6 API
javase脑图.emmx
8. 设计模式:项目可能包含对单例、工厂、观察者等常见设计模式的应用,这些模式在解决特定编程问题时非常有用。 9. 异常处理:了解如何正确地捕获和处理异常,这是编写健壮代码的关键。 10. 注解与反射:通过使用...
JAVASE基础知识详解
JavaSE(Java Standard Edition)是Java编程语言的核心部分,它为开发桌面应用程序、服务器端应用程序以及网络应用提供了基础框架和工具。在这个“JavaSE项目最终总结”中,我们将深入探讨JavaSE的重要概念、核心...
JavaSE,全称为Java Standard Edition,是Java平台的核心部分,主要面向桌面应用和服务器端开发。这个讲义可能涵盖了Java编程语言的基础知识、核心概念以及高级特性,旨在帮助学习者全面掌握Java编程技能。 首先,...
【标题】"王道JavaSE阶段测试"涵盖了Java标准版(Java Standard Edition,简称JavaSE)的核心编程知识,这是学习Java编程的基础阶段。这个阶段主要目的是掌握Java语言的基本语法、面向对象编程概念以及常用的数据...
6. **项目组织与管理**:一个完整的项目会包含良好的代码结构和模块化设计,遵循一定的设计模式,比如单例模式、工厂模式等。此外,版本控制系统如Git的使用,Maven或Gradle构建工具的集成,以及单元测试和集成测试...
同时,这也会涉及到一些设计模式,比如单例模式(`Singleton`)可能用于`Bank`类,工厂模式(`Factory`)可能用于创建不同类型的`Account`,等等。 总的来说,这个"Javase银行类源码"项目是一个很好的实践平台,...
JavaSE基础.md
学习JavaSE的全面的课件学习JavaSE的全面的课件学习JavaSE的全面的课件学习JavaSE的全面的课件学习JavaSE的全面的课件学习JavaSE的全面的课件学习JavaSE的全面的课件学习JavaSE的全面的课件学习JavaSE的全面的课件...
赠送jar包:javase-3.3.3.jar; 赠送原API文档:javase-3.3.3-javadoc.jar; 赠送源代码:javase-3.3.3-sources.jar;...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
JavaSE(Java Standard Edition)是Java开发平台的一个核心组件,主要针对桌面应用和服务器端应用程序的开发。它提供了丰富的类库和API,使得开发者能够构建跨平台的应用程序。JavaSE包含了JVM(Java虚拟机)、Java...