小编leo*_*orn的帖子

午夜日期与时区发送到时区无知系统

首先快速总结一下我的问题,然后详细说明.

我有一个日历日期00:00:00作为时间,因为它对业务不重要.此值将发送到Web服务,该服务生成XML,其中值以下列格式结束:2014-09-12T07:55:07.000Z.我注意到这是原始值转换为+0时区(UTC)(我们的是CET,+ 1,但是目前是CEST,+ 2,因为DST).

我目前不知道读取XML的系统是否考虑了时区,或者是否会提取2014-09-12并假设它在+2时区.

我注意到发送" 2014-09-12 00:00:00"本地时间(tz +2)最终会像2014-09-11T22:00:00.000Z在XML中一样.没有什么大惊喜,它转换了它...但如果它被另一个系统解释为它,它会认为日期比它应该早一天.

可以做些什么来确保将其解释为预期?

我正在考虑使用正午而不是午夜来确保时区转换不会影响解释,但这感觉就像一个肮脏的把戏.或者也许我应该作弊并将日历时区设为+0,以便在放入XML时不会时移?


Q&A

为什么"将日历发送到网络服务"?

该应用程序位于Coldfusion 7中.为了与SOAP Web服务进行通信,服务器生成一组Java类,这些类适合webservice期望的参数定义.该参数显然是一个具有大量属性和子属性的大对象.因此,实例化主Java类并使用setter和其他类的进一步instanciations来"填充"所有属性.

你必须使用日历吗?

是的,无法更改Java对象定义.它期望所有日期的日历.

这是什么2014-09-11T22:00:00.000Z格式?

我不知道.这似乎是最终系统对日期的期望.

你应该使用JODA

除非JODA类扩展Calendar并且与Java 1.3兼容(Coldfusion服务器上的当前Java版本 - 是的,它是旧的),我怀疑它会起作用.

你能在其他系统上做多少钱?

另一个系统是另一个团队的责任,显然很难改变.我希望我们的应用程序必须找到解决方案.

java coldfusion timezone

6
推荐指数
1
解决办法
169
查看次数

返回Java对象时我应该使用哪种返回类型?

返回使用createObject("java", "<someclass>")函数创建的Java对象时,我应该使用哪种返回类型?

"Any"是唯一的解决方案吗?

coldfusion coldfusion-7

5
推荐指数
1
解决办法
214
查看次数

Coldfusion如何在内部处理createObject?

假设我想从cfscript块中的CFC调用静态函数.据我所知,唯一的方法是使用createObject()返回对CFC对象的引用.

这是好习惯吗?我想我记得读过cfinvoke肯定是巧妙地实现了对象,并且不会多次实例化静态CFC.这是否正确,如果是这样,使用createObject()时仍然如此吗?

coldfusion coldfusion-7

3
推荐指数
1
解决办法
164
查看次数

在查询中使用人类可读的常量

这是一个示例查询:

SELECT thing_id
FROM thing
WHERE thing_type IN (3, 7)
Run Code Online (Sandbox Code Playgroud)

我想将3和7变成人类可读的名称,以帮助理解查询真正在做什么.像下面这样的东西会很棒:

SELECT thing_id
FROM thing
WHERE thing_type_id IN (OPENED, ONHOLD)
Run Code Online (Sandbox Code Playgroud)

知道OPENED和ONHOLD会将其实际值声明在其他地方.

我想也许有一种方法可以通过一个thing_type表的JOIN来做到这一点.

请注意,我陷入了直接编码查询而不是使用抽象框架的环境中.

sql oracle

2
推荐指数
2
解决办法
102
查看次数

如何确保cfobject变量是函数的本地变量?

假设常规.cfm文件中有以下代码,而不是 CFC:

<cffunction name="myFunction"> <cfobject type="java" action="create" class="path.to.my.java.class" name="myJavaVariable"> </cffunction>

什么是创建对象的范围?我感觉它不仅限于功能范围.如果是这样,如何让它成为本地的?以下工作会怎样?

<cfset var myJavaVariable = ""> <cfobject ... name="myJavaVariable">

编辑:我忘了说我在Coldfusion MX 7下,因为它确实阻止了网络上的一些有用的解决方案.

我找到了一个解决方法,其中一个创建一个假的本地范围(<cfset var local = StructNew()>).它甚至可以用于这样的标记,因为你可以把返回变量作为local.someVar.

coldfusion

2
推荐指数
1
解决办法
165
查看次数

最佳集合存储Java的卡列表?

我有一个Card类,现在我想创建一个Deck类.我正在查看收藏中可用于存储卡片列表的内容,因为我知道我需要尽可能多地自由操作卡片.

我希望能够在牌组的任何地方插入新牌,随机播放(Collections.shuffle()应该可以使用),偷看任何牌并从顶部,底部和中间的任何位置取出(移除)牌.你可以用一堆卡片做任何事情.例如,没有"仅LIFO"限制.

以下是我到目前为止所发现的以及我对每个问题的看法:

  • 清单:似乎提供了我所需要的尽可能多的自由,但显然,我需要为更简单的事情添加一些辅助功能,例如在顶部挑选卡片.现在仍然是我最喜欢的解决方案.
  • 堆栈:可能是我要问的所有,但是,从我所读到的,并不是最好的实现(扩展Vector并且不仅仅是它的行为中的堆栈?)
  • Deque:有我想要的功能,但似乎不允许在任何索引处插入新项目(也不是"getAt(index)"afaik)

对于我正在尝试做的事情,是否有比上述任何一个更好的预制课程?如果不存在"完美",那么我应该将哪个类用作扩展的基础?

值得注意的是:我现在不知道我是否关心同步.我也从Java 6的角度来看这个,但我对Java 7解决方案持开放态度,特别是如果有一个现成的解决方案.

java collections

1
推荐指数
1
解决办法
629
查看次数

标签 统计

coldfusion ×4

coldfusion-7 ×2

java ×2

collections ×1

oracle ×1

sql ×1

timezone ×1