Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
为 GitLab 提交贡献
登录/注册
切换导航
H
h2database
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
Administrator
h2database
Commits
670bf2bc
提交
670bf2bc
authored
10 年前
作者:
Thomas Mueller
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Improved performance for some date / time / timestamp conversion operations.
上级
c1b159d4
显示空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
7 行增加
和
6 行删除
+7
-6
DateTimeUtils.java
h2/src/main/org/h2/util/DateTimeUtils.java
+5
-5
ValueTimestamp.java
h2/src/main/org/h2/value/ValueTimestamp.java
+2
-1
没有找到文件。
h2/src/main/org/h2/util/DateTimeUtils.java
浏览文件 @
670bf2bc
...
@@ -327,7 +327,7 @@ public class DateTimeUtils {
...
@@ -327,7 +327,7 @@ public class DateTimeUtils {
* Calculate the milliseconds since 1970-01-01 (UTC) for the given date and
* Calculate the milliseconds since 1970-01-01 (UTC) for the given date and
* time (in the specified timezone).
* time (in the specified timezone).
*
*
* @param tz the timezone of the parameters
* @param tz the timezone of the parameters
, or null for the default timezone
* @param year the absolute year (positive or negative)
* @param year the absolute year (positive or negative)
* @param month the month (1-12)
* @param month the month (1-12)
* @param day the day (1-31)
* @param day the day (1-31)
...
@@ -378,7 +378,7 @@ public class DateTimeUtils {
...
@@ -378,7 +378,7 @@ public class DateTimeUtils {
int
year
,
int
month
,
int
day
,
int
hour
,
int
minute
,
int
second
,
int
year
,
int
month
,
int
day
,
int
hour
,
int
minute
,
int
second
,
int
millis
)
{
int
millis
)
{
Calendar
c
;
Calendar
c
;
if
(
tz
==
TimeZone
.
getDefault
()
)
{
if
(
tz
==
null
)
{
c
=
CACHED_CALENDAR
.
get
();
c
=
CACHED_CALENDAR
.
get
();
}
else
{
}
else
{
c
=
Calendar
.
getInstance
(
tz
);
c
=
Calendar
.
getInstance
(
tz
);
...
@@ -626,7 +626,7 @@ public class DateTimeUtils {
...
@@ -626,7 +626,7 @@ public class DateTimeUtils {
* @return the date
* @return the date
*/
*/
public
static
Date
convertDateValueToDate
(
long
dateValue
)
{
public
static
Date
convertDateValueToDate
(
long
dateValue
)
{
long
millis
=
getMillis
(
TimeZone
.
getDefault
()
,
long
millis
=
getMillis
(
null
,
yearFromDateValue
(
dateValue
),
yearFromDateValue
(
dateValue
),
monthFromDateValue
(
dateValue
),
monthFromDateValue
(
dateValue
),
dayFromDateValue
(
dateValue
),
0
,
0
,
0
,
0
);
dayFromDateValue
(
dateValue
),
0
,
0
,
0
,
0
);
...
@@ -651,7 +651,7 @@ public class DateTimeUtils {
...
@@ -651,7 +651,7 @@ public class DateTimeUtils {
s
-=
m
*
60
;
s
-=
m
*
60
;
long
h
=
m
/
60
;
long
h
=
m
/
60
;
m
-=
h
*
60
;
m
-=
h
*
60
;
long
ms
=
getMillis
(
TimeZone
.
getDefault
()
,
long
ms
=
getMillis
(
null
,
yearFromDateValue
(
dateValue
),
yearFromDateValue
(
dateValue
),
monthFromDateValue
(
dateValue
),
monthFromDateValue
(
dateValue
),
dayFromDateValue
(
dateValue
),
dayFromDateValue
(
dateValue
),
...
@@ -676,7 +676,7 @@ public class DateTimeUtils {
...
@@ -676,7 +676,7 @@ public class DateTimeUtils {
s
-=
m
*
60
;
s
-=
m
*
60
;
long
h
=
m
/
60
;
long
h
=
m
/
60
;
m
-=
h
*
60
;
m
-=
h
*
60
;
long
ms
=
getMillis
(
TimeZone
.
getDefault
()
,
long
ms
=
getMillis
(
null
,
1970
,
1
,
1
,
(
int
)
(
h
%
24
),
(
int
)
m
,
(
int
)
s
,
(
int
)
millis
);
1970
,
1
,
1
,
(
int
)
(
h
%
24
),
(
int
)
m
,
(
int
)
s
,
(
int
)
millis
);
return
new
Time
(
ms
);
return
new
Time
(
ms
);
}
}
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/value/ValueTimestamp.java
浏览文件 @
670bf2bc
...
@@ -153,7 +153,8 @@ public class ValueTimestamp extends Value {
...
@@ -153,7 +153,8 @@ public class ValueTimestamp extends Value {
String
tzName
=
"GMT"
+
s
.
substring
(
timeZoneStart
);
String
tzName
=
"GMT"
+
s
.
substring
(
timeZoneStart
);
tz
=
TimeZone
.
getTimeZone
(
tzName
);
tz
=
TimeZone
.
getTimeZone
(
tzName
);
if
(!
tz
.
getID
().
startsWith
(
tzName
))
{
if
(!
tz
.
getID
().
startsWith
(
tzName
))
{
throw
new
IllegalArgumentException
(
tzName
);
throw
new
IllegalArgumentException
(
tzName
+
" ("
+
tz
.
getID
()
+
"?)"
);
}
}
timeEnd
=
timeZoneStart
;
timeEnd
=
timeZoneStart
;
}
else
{
}
else
{
...
...
This diff is collapsed.
Click to expand it.
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论