ALL is Well!
敏捷是一條很長的路,摸索著前進(jìn)著
BlogJava
::
首頁
::
新隨筆
::
聯(lián)系
::
聚合
::
管理
::
30 隨筆 :: 23 文章 :: 71 評(píng)論 :: 0 Trackbacks
<
2010年12月
>
日
一
二
三
四
五
六
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
公告
聲明:
本博客文章如無特別注明,均為原創(chuàng),作者保留所有權(quán)利!歡迎轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)注明出處
BlogJava
。
常用鏈接
我的隨筆
我的文章
我的評(píng)論
我的參與
最新評(píng)論
留言簿
(3)
給我留言
查看公開留言
查看私人留言
隨筆分類
Freemarker(4)
(rss)
J2EE(3)
(rss)
J2SE(3)
(rss)
Java(16)
(rss)
JUnit(2)
(rss)
Linux(1)
(rss)
Maven2(8)
(rss)
MyBatis/iBatis(1)
(rss)
POI(1)
(rss)
Quartz(1)
(rss)
Spring(7)
(rss)
Struts2(3)
(rss)
TDD
(rss)
敏捷開發(fā)
(rss)
隨筆檔案
2011年4月 (2)
2011年3月 (2)
2010年12月 (4)
2010年11月 (3)
2010年10月 (5)
2010年9月 (26)
文章分類
J2EE(1)
(rss)
J2SE(3)
(rss)
JavaScript(1)
(rss)
MyBatis/iBatis
(rss)
POI
(rss)
技術(shù)知識(shí)(6)
(rss)
數(shù)據(jù)庫(1)
(rss)
經(jīng)驗(yàn)點(diǎn)滴(1)
(rss)
隨筆
(rss)
文章檔案
2010年12月 (1)
2010年9月 (10)
交流社區(qū)
CSDN
eoe(Android開發(fā))
JavaEye
友情鏈接
Daniel Teng's blog
Max On Java
我在CSDN的家
胡奇的專欄
學(xué)習(xí)資源庫
Maven -Available Plugins
maven repository
得益網(wǎng)
搜索
最新評(píng)論
1.?re: JUnit單元測試Mock技術(shù)之jMock用法介紹
JMockService是啥?
--pjl
2.?re: 通過Spring實(shí)現(xiàn)對(duì)自定義注解屬性進(jìn)行資源注入
ffhty
--如煩人煩人
3.?re: 詳細(xì)描述 快速排序 的過程 附Java實(shí)現(xiàn)
誤人子弟啊!
--哥哥
4.?re: POI3.6 生成Excel2007 效率低的解決辦法
本來就應(yīng)該這樣寫,而且可以直接在構(gòu)造方法中實(shí)例化這些樣式,然而即使這樣也沒有根本性的解決問題。當(dāng)數(shù)據(jù)量稍微大些,多用戶操作的時(shí)候就不知道怎么死的了。
--老左
5.?re: Java SSH遠(yuǎn)程執(zhí)行Shell腳本實(shí)現(xiàn)
請(qǐng)問如果腳本中的命令為top的話請(qǐng)問該怎么返回執(zhí)行結(jié)果呢?
--tlone
閱讀排行榜
1.?MyEclipse的Maven插件 安裝與配置(17827)
2.?java代碼實(shí)現(xiàn)利用 classloader 動(dòng)態(tài)加載 jar包、文件夾到classpath中(13716)
3.?Java SSH遠(yuǎn)程執(zhí)行Shell腳本實(shí)現(xiàn)(13622)
4.?JUnit4用法詳解(13222)
5.?JUnit單元測試Mock技術(shù)之jMock用法介紹(12095)
評(píng)論排行榜
1.?擴(kuò)展Spring-實(shí)現(xiàn)對(duì)外部引用的屬性文件進(jìn)行加密、解密(8)
2.?Java SSH遠(yuǎn)程執(zhí)行Shell腳本實(shí)現(xiàn)(7)
3.?MyEclipse的Maven插件 安裝與配置(7)
4.?freemarker數(shù)字格式化引入的問題(6)
5.?iBatis/MyBatis 主子表關(guān)聯(lián)查詢(5)
freemarker數(shù)字格式化引入的問題
問題
freemarker在解析數(shù)據(jù)格式的時(shí)候,默認(rèn)將數(shù)字按3位來分割,例如1000被格式化為1,000,這樣做看似美觀,但在實(shí)際操作時(shí)候會(huì)帶來問題。例如我一個(gè)頁面有一個(gè)元素,該元素的值由后臺(tái)綁定且超過1000,那么當(dāng)我要使用這個(gè)元素的值的時(shí)候,便會(huì)出現(xiàn)問題。
例如,我在ftl文件中這樣寫:
<
input
type
="hidden"
id
="testElement"
name
="testElement"
value
="${size}"
/>
假設(shè)后臺(tái)綁定的size為1000。
然后我在js里使用這個(gè)testElement元素的值。
var
t
=
$(
"
#testElement
"
);
alert(t);
alert(parseInt(t));
alert(Number(t));
得到的值是:
1,000
1
NaN
這下悲劇了,沒有一個(gè)是我想要的數(shù)值類型1000,這讓我情何以堪啊。
我之前有一個(gè)隨筆,
基于Struts2、Freemarker的分頁組件實(shí)現(xiàn)(附工程源碼)
,便因?yàn)閒reemarker的數(shù)字格式化問題,存在一個(gè)bug。
在數(shù)據(jù)超過1000時(shí)候,點(diǎn)擊下一頁,便會(huì)報(bào)錯(cuò)。原因是將1,000傳到了后臺(tái),當(dāng)作是總記錄數(shù),而這個(gè)值并非數(shù)值。
解決問題
* 在模板中直接加.toString()轉(zhuǎn)化數(shù)字為字符串,如:${size.toString()};
* 在freemarker配置文件freemarker.properties(在類路徑下即可)加<#setting number_format="#">;
* 在模板中直接加<#setting number_format="#">;
* 通過freemarker.template.Configuration的config.setNumberFormat("#")來設(shè)定freemarker對(duì)數(shù)值的格式化;
其實(shí)后三種方法的思路是一致的,只是實(shí)現(xiàn)方法不同而已。如果應(yīng)用中已經(jīng)存在了
freemarker.properties 并配置了其他的屬性,可以在這里配置,否則推薦使用最后一種方法。
最后我是用最后一種方法解決的問題。分頁組件上的問題也解決了。
posted on 2010-12-29 14:54
李 明
閱讀(5839)
評(píng)論(6)
編輯
收藏
所屬分類:
Freemarker
評(píng)論
#
re: freemarker數(shù)字格式化引入的問題
2010-12-29 19:50
disget
${size?c}就可以完成純數(shù)字輸出
LZ火候欠大了
多看多學(xué)習(xí),別閉門造車
回復(fù)
更多評(píng)論
#
re: freemarker數(shù)字格式化引入的問題
2010-12-30 08:48
禮物
我暈,好好看看文檔再說吧,這不是bug
回復(fù)
更多評(píng)論
#
re: freemarker數(shù)字格式化引入的問題
2010-12-30 13:12
Ronaldo
回復(fù)樓上:
我有一點(diǎn)很奇怪了。
我有說過這是freemarker的bug嗎?
我是說我自己寫的東西,因?yàn)楹雎粤诉@一點(diǎn),存在bug。
由于freemarker這種將數(shù)字超過3位的格式化為形如1,000的,導(dǎo)致了我之前的寫一個(gè)分頁的宏點(diǎn)擊下一頁或上一頁時(shí)都會(huì)報(bào)異常。
麻煩看清楚了再評(píng)論。謝謝。
回復(fù)
更多評(píng)論
#
re: freemarker數(shù)字格式化引入的問題
2010-12-30 13:23
Ronaldo
@disget
解決問題的方式有很多種。你說的方法也確實(shí)可行。
但這個(gè)要在每個(gè)需要的地方都要這樣寫才行。
回復(fù)
更多評(píng)論
#
re: freemarker數(shù)字格式化引入的問題
2012-09-07 14:35
youke
@disget
這是個(gè)辦法但是工作量太大,很是麻煩的。自己水平有限還批評(píng)別人,忒搞笑了吧
回復(fù)
更多評(píng)論
#
re: freemarker數(shù)字格式化引入的問題
2012-09-28 10:09
禮物
@Ronaldo
“我之前有一個(gè)隨筆,基于Struts2、Freemarker的分頁組件實(shí)現(xiàn)(附工程源碼) ,便因?yàn)閒reemarker的數(shù)字格式化問題,存在一個(gè)bug。
在數(shù)據(jù)超過1000時(shí)候,點(diǎn)擊下一頁,便會(huì)報(bào)錯(cuò)。原因是將1,000傳到了后臺(tái),當(dāng)作是總記錄數(shù),而這個(gè)值并非數(shù)值。”
針對(duì)這個(gè)問題freemarker可以使用格式化定義: <#setting number_format="0.####">
回復(fù)
更多評(píng)論
新用戶注冊(cè)
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關(guān)文章:
freemarker數(shù)字格式化引入的問題
基于Struts2、Freemarker的分頁組件實(shí)現(xiàn)(附工程源碼)
解決 freemarker 變量沒有值時(shí)拋出異常
基于Struts2和freemarker的異常提示信息的統(tǒng)一處理
Powered by:
BlogJava
Copyright © 李 明
主站蜘蛛池模板:
亚洲成a人片在线观看播放
|
春意影院午夜爽爽爽免费
|
免费观看国产精品
|
最新亚洲成av人免费看
|
亚洲国产精品久久久久秋霞影院
|
精品久久久久久久免费加勒比
|
中文在线观看免费网站
|
国产精品亚洲精品
|
亚洲日本va在线视频观看
|
成人特黄a级毛片免费视频
|
精品国产免费一区二区三区
|
亚洲a级片在线观看
|
国产亚洲美女精品久久久
|
欧美男同gv免费网站观看
|
中文字幕成人免费高清在线视频
|
免费国产成人α片
|
久久无码av亚洲精品色午夜
|
久久综合日韩亚洲精品色
|
国产成人高清精品免费软件
|
精品无码国产污污污免费网站
|
日韩在线观看免费
|
中文字幕亚洲男人的天堂网络
|
久久综合亚洲色HEZYO社区
|
亚洲福利精品电影在线观看
|
亚洲三级高清免费
|
黄页免费在线观看
|
人人鲁免费播放视频人人香蕉
|
国产亚洲福利在线视频
|
久久久无码精品亚洲日韩蜜臀浪潮
|
亚洲成AV人网址
|
日本19禁啪啪无遮挡免费动图
|
亚洲美女免费视频
|
午夜免费福利片观看
|
本免费AV无码专区一区
|
日韩在线观看免费
|
在线亚洲v日韩v
|
亚洲国产区男人本色
|
va天堂va亚洲va影视中文字幕
|
亚洲视频精品在线
|
亚洲av日韩av不卡在线观看
|
在线亚洲午夜理论AV大片
|