Jsp 国际化访问首页选择展示不同字体小例子
要求:创建一个首页,默然显示英文信息,但可以让用户选择使用英文,繁体中文或简体中文.
1.编写hello_en_US.txt,内容如下:
cc.openhome.welcome=welcome
cc.openhome.font=English
cc.openhome.name=This is your front page
2.编写hello_zh_CN.txt,内容如下:
cc.openhome.welcome=欢迎
cc.openhome.font=简中
cc.openhome.name=这是你的预设首页
3.编写hello_zh_TW.txt,内容如下:
cc.openhome.welcome=歡迎
cc.openhome.font=繁中
cc.openhome.name=這是你的預設首頁
4.文件编码需要注意:
在idea18 中 英文和简体中文 .txt文本编辑采用的UTF-8格式,编码格式使用的是:jdk自带的native2ascii 生成 .propertities
$ native2ascii -encoding utf-8 hello_en_US.txt hello_en_US.properties
中文繁体编码采用的big5 编码方式,需要把编辑器设置为Big5编码格式,类似:编码为Big5
$ native2ascii -encoding Big5 hello_zh_TW.txt hello_zh_TW.properties
5.处理请求jsp
<%--
* created by on 12/4/18
homework p282 7-1
--%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page import="java.util.ResourceBundle" %>
<%@ page import="java.util.Locale" %>
<%@ page import="javax.servlet.jsp.jstl.fmt.LocalizationContext" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="UTF-8" %>
<%
ResourceBundle zh_TW = ResourceBundle.getBundle("cc.openhome.hello", new Locale("zh","TW"));
ResourceBundle zh_CN = ResourceBundle.getBundle("cc.openhome.hello",new Locale("zh","CN"));
ResourceBundle ja_JP = ResourceBundle.getBundle("cc.openhome.hello",new Locale("ja","JP"));
ResourceBundle en_US = ResourceBundle.getBundle("cc.openhome.hello",new Locale("en","US")); pageContext.setAttribute("zh_TW",new LocalizationContext(zh_TW));
pageContext.setAttribute("zh_CN",new LocalizationContext(zh_CN));
pageContext.setAttribute("ja_JP",new LocalizationContext(ja_JP));
pageContext.setAttribute("en_US",new LocalizationContext(en_US)); %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<c:choose>
<c:when test="${param.local =='en_US'}">
<title><fmt:message bundle="${en_US}" key="cc.openhome.welcome"/></title>
</c:when>
<c:when test="${param.local =='zh_CN'}">
<title><fmt:message bundle="${zh_CN}" key="cc.openhome.welcome"/></title>
</c:when>
<c:when test="${param.local =='zh_TW'}">
<title><fmt:message bundle="${zh_TW}" key="cc.openhome.welcome"/></title>
</c:when>
<c:otherwise>
<title><fmt:message bundle="${en_US}" key="cc.openhome.welcome"/></title>
</c:otherwise>
</c:choose>
<style type="text/css">
#menu li {
float: left;
border: 27px solid #fff;
line-height : 33px;
height: 10px;
list-style-type: none;
}
</style>
</head>
<body> <ul id="menu">
<li>
<a href='<c:url value="index.jsp">
<c:param name="local" value="en_US"/>
</c:url> '>
<fmt:message bundle="${en_US}" key="cc.openhome.font"/>
</a>
</li>
<li>
<a href='<c:url value="index.jsp">
<c:param name="local" value="zh_CN"/>
</c:url> '>
<fmt:message bundle="${zh_CN}" key="cc.openhome.font"/>
</a>
</li>
<li>
<a href='<c:url value="index.jsp">
<c:param name="local" value="zh_TW"/>
</c:url> '>
<fmt:message bundle="${zh_TW}" key="cc.openhome.font"/>
</a>
</li>
</ul>
<br><br><br><br>
<hr>
<c:choose>
<c:when test="${param.local =='en_US'}">
<fmt:message bundle="${en_US}" key="cc.openhome.name"/>
</c:when>
<c:when test="${param.local =='zh_CN'}">
<fmt:message bundle="${zh_CN}" key="cc.openhome.name"/>
</c:when>
<c:when test="${param.local =='zh_TW'}">
<fmt:message bundle="${zh_TW}" key="cc.openhome.name"/>
</c:when>
<c:otherwise>
<fmt:message bundle="${en_US}" key="cc.openhome.name"/>
</c:otherwise>
</c:choose>
</body>
</html>
6.运行效果

7.总结:
(1).设计 jstl核心标签库的使用.<c choose>,<c when>,<c otherwise>,<c url> <fmt bundle>,<fmt message>.
(2).国际化处理流程的简单理解.
(3).前端页面的简单调试.
(4).有待优化,重复代码写的太多.
Jsp 国际化访问首页选择展示不同字体小例子的更多相关文章
- 4_3.springboot2.x之默认访问首页和国际化
1.默认访问首页 1.引入thymeleaf和引入bootstrap <!--引入thymeleaf--> <dependency> <groupId>org.sp ...
- MySQL+Service+Servlet+Jsp实现Table表格分页展示数据
下面以一个示例讲解如何使用MySQL+Service+Servlet+Jsp实现Table表格分页展示数据: eg:请假管理系统 要求如下: 一.打开首页页面, 访问查询请假记录的 servlet , ...
- 怎么修改tomcat默认访问首页
一般情况下安装好tomcat之后我们的默认访问首页是index了,但我们如果要修改或增加一个默认首页,我们可参考下面办法来解决. 通过 ip:port 访问到的是 tomcat 的管理页面,其他常规部 ...
- IntelliJ IDEA 2017版 spring-boot2.0.访问jsp页面;IDE Springboot JSp 页面访问
1.编译器设置. 生成项目后,点击file 点开Modules 选中main,右键 选择新建文件夹 选中外部 右边添加 选中项目如图: 选好后选OK退出 webapp带点了,就是成功了,在这里建立的J ...
- java:maven中webapp下的jsp不能访问web-inf下面的bean
java:maven中webapp下的jsp不能访问web-inf下面的bean 当然 WEB-INF下面的文件是不能访问的,只能吧jsp文件放入到WEB-INF下面,然后通过配置WEB-INF下we ...
- jsp网站访问次数统计的几种方法
我采用的是jsp网页,但是不管采用什么语言,原理是一样的. 第一种,单页面统计.就是说,只要点击这个页面就会统计一次. <body> <%!//在这种标记中定义的变量为全局变量 in ...
- 自建目录中jsp页面访问servlet路径出错404
---恢复内容开始--- 自建目录中jsp页面访问servlet路径出错404 使用eclipse建立的项目,总是会遇到路径问题,比如jsp页面访问servlet,jsp在默认的路径.jsp在自建目录 ...
- nginx thinkphp只能访问首页
代码部署到了服务器上,发现无论怎样请求,都是跳转到index/index/index(模块/控制器/方法),最后需要nginx重新地址即可 参考:Linux下Nginx部署Thinkphp5访问任何地 ...
- nginx报错:403 Forbidden 并且访问首页index.php是下载文件的状态
nginx报错:403 Forbidden 并且访问首页index.php是下载文件的状态,不能正常解析php 系统有其他两个站访问是正常的 看日志没有看到明显的错误 搜索了下: 答案如下: php的 ...
随机推荐
- Olap学习笔记
数据仓库建设--OLAP和数据立方体概念 http://student-lp.iteye.com/blog/2263154 OLAP(On-LineAnalysis Processing)在线分析处理 ...
- Flask最强攻略 - 跟DragonFire学Flask - 第十五篇 Flask-Script
其实本章就是为下一章做的铺垫啦,但是也要认真学习哦 Flask-Script 从字面意思上来看就是 Flask 的脚本 是的,熟悉Django的同学是否还记得Django的启动命令呢? python ...
- Fast Matrix Calculation HDU - 4965
One day, Alice and Bob felt bored again, Bob knows Alice is a girl who loves math and is just learni ...
- 超详MySQL5.7.17压缩包安装图文教程
靠吹风机暖手写完这篇教程...网络上关于MySQL 5.7.17的安装教程很少且不详细,所以总结了这样一篇文章,希望能帮到大家:(相较于Oracle的安装,MySQL还是简单得多) 1. 下载网址:h ...
- JavaScript test() 方法
JavaScript test() 方法 JavaScript RegExp 对象 定义和用法 test() 方法用于检测一个字符串是否匹配某个模式. 语法 RegExpObject.test(str ...
- shell编程(一)之变量
变量:命名的内存空间 bash的变量种类: 根据变量的生效范围等标准 本地变量: 生效范围为当前shell进程:对当前shell之外的其他shell进程,包括当前shell的子shell进程均无效 环 ...
- linux基础之正则表达式
一.基本正则表达式 字符匹配 . : 匹配任意单个字符 [] : 匹配中括号中的任意单个字符 [^] : 匹配指定范围外的任意单个字符 空白字符:[:space:].数字:[:digit:].小写字母 ...
- 解决Intellij IDEA中console窗口中文乱码的问题
配置完tomcat之后,测试运行时,中文是乱码,如下图(自己忘截图了,图源网络,看水印) 网上其他的修改方法我就不说了,至少我试了一个都没用. 下面两个方法也是网上的,在此总结一下: 1.在idea. ...
- Flex外包公司——Flex案例展示
Flex案例展示 做的mail系统: http://gowebtop.com/webtop/ 在线购书网站 http://book.orzar.net/ eBay购物网站 http://www. ...
- 调研IOS的开发环境的发展演变
一. 关于IOS的开发发展历史: 百度一下,关于这方面的详细资料有很多,在这里就不复制粘贴占用篇幅了. 二. 关于个人搭建IOS开发环境的体验: 本人用的是华硕电脑,window7的操作系统,本来为了 ...