在Java中将UTC时间转换为本地时区

我知道这个话题已被打死,但在搜索了几个小时之后我不得不问这个问题。 我的问题:根据客户端应用程序(iphone)的当前时区对服务器上的日期进行计算。 客户端应用程序会在几秒钟内告诉服务器它的时区离GMT有多远。 我想使用此信息对服务器中的日期进行计算。 服务器上的日期都存储为UTC时间。 因此,我希望在将UTC Date对象转换为此本地时区后获得它的HOUR。 我目前的尝试: int hours = (int) Math.floor(secondsFromGMT / (60.0 * 60.0)); int mins = (int) Math.floor((secondsFromGMT – (hours * 60.0 * 60.0)) / 60.0); String sign = hours > 0 ? “+” : “-“; Calendar now = Calendar.getInstance(); TimeZone t = TimeZone.getTimeZone(“GMT” + sign + hours + “:” + […]

Java 8中throwMerger的替代方案

我正在实现使用合并function的自己的收集器。 不幸的是,对于我的一些情况,我不能重用抛出IllegalStateException的以下JDK合并函数。 java.util.stream.Collectors#throwingMerger 它发生的原因是它具有私有访问修饰符,并且来自其他(非内部)类的访问受到限制。 但是,javadoc说: 这可用于强制假设所收集的元素是不同的 但是,正如我所见,java doc已经过时了。 它不能使用。 问题是JDK是否为java开发人员提供了类似function的访问权限(类似方法,常量等),还是应该自己编写?

通过JPA / Eclipselink无法看到更新的数据(在数据库中)

我有使用JPA / Eclipselink连接到数据库的Oracle DB和Java项目。 问题是当数据库中的某些数据更新(手动使用Oracle SQL开发人员)时,这些数据不能通过JPA看到,只能看旧值。 什么会导致这样的问题?

Getter不与任何字段相关联

我收到编译器错误“ Getter getLength_inch未与任何字段关联 ”以获取以下代码。 getLength_inch只是一种实用方法…… import io.realm.RealmObject; public class Measurement extends RealmObject { private float length_mm; public void setLength_mm(float c){length_mm = c;} public float getLength_mm() { return length_mm;} public float getLength_inch() { return length_mm * 0.0394f;} } 似乎RealmObject的任何后代都不能实现除了与其字段相关的任何东西。 这是正确的还是有一些方法来注释这个方法,以便你的处理器忽略它? 谢谢

添加MessageDialog消息的链接

我在做Eclipse插件开发。 我正在使用MessageDialog类。 API可以在这里找到。 我想在MessageDialog的消息中添加一个像我在“here”中所做的链接。 这是我在做的事情: String errorMessage = “You have received an error. Please visit ” + URL_NEEDED_HERE MessageDialog.openError(getShell(), “Get Existing Data Sources Error”, errorMessage); URL一直显示为String。 它可以显示为链接吗?

为什么主要顺序中没有呼叫?

我正在阅读一本关于线程/同步的简单示例,该书声称使用synchronized将允许在同一实例上调用一个线程来访问该方法。 它确实按照承诺进行了序列化,但似乎在下面的Synch main方法中创建的第三个Caller大约9/10倍出现在第二个之前。 此代码是示例代码,显示没有同步方法的问题。 class CallMe { void call(String msg) { System.out.print(“[” + msg); try { Thread.sleep(1000); } catch (InterruptedException e) { System.out.println(“CallMe Interrupted”); } System.out.println(“]”); } } class Caller implements Runnable { String msg; CallMe target; Thread t; public Caller (CallMe target, String msg) { this.target = target; this.msg = msg; t = new […]

空白的最终字段INITIAL可能尚未初始化

我是用Java编程的。 我已经为每个方法添加了注释来解释他们应该做什么(根据作业)。 我已将我所知道的内容添加到Password.java的存根中(我在研究学校提供的javadoc后创建了该存根)。 我的问题不是关于几个函数,我知道testWord和setWord中有错误,但我会自己处理。 我的问题是关于这一行: public static final java.lang.String INITIAL; 这条线是由学校提供的,所以我必须假设它是正确的,我无法找到关于常数字段值INITIAL的任何文档,所以如果有人能够提供关于那将是惊人的信息(例如,如何是处理?它存储什么?如果有的话?键入?)。 我在Eclipse中的这一行上得到了一个错误: 空白的最终字段INITIAL可能尚未初始化 为什么这个错误在这里? 提前感谢您的评论。 FYI来自Password.java的代码: package ss.week1; public class Password extends java.lang.Object { // —————— Instance variables —————- /** * The standard initial password. */ public static final java.lang.String INITIAL; // —————— Constructor ———————— /** * Constructs a Password with the initial word provided […]

Hibernate“PreInsertEvent.getSource()”NoSuchMethodError

尝试插入时,我收到以下错误: java.lang.NoSuchMethodError:org.hibernate.event.PreInsertEvent.getSource()Lorg / hibernate / event / EventSource; 由于hibernate jar不兼容,我见过其他人有同样的问题,但我相信我做对了(根据兼容性矩阵 ) 这是我的pom.xml中的相关部分: org.hibernate hibernate-annotations 3.4.0.GA org.hibernate hibernate-commons-annotations 3.3.0.ga org.hibernate hibernate-core 3.3.1.GA org.hibernate hibernate-validator 3.1.0.GA org.hibernate hibernate-entitymanager 3.4.0.GA 任何人都可以建议吗? 问候 马蒂

将Curl转换为Java等效项

我第一次使用New Relic REST API ,我有一个curl命令: curl -X GET ‘https://api.newrelic.com/v2/applications/appid/metrics/data.json’ \ -H ‘X-Api-Key:myApiKey’ -i \ -d ‘names[]=EndUser/WebTransaction/WebTransaction/JSP/index.jsp’ 我想在java servlet中发送此命令并从响应中获取JSON对象以备解析,什么是最佳解决方案? HttpURLConnection的? Apache httpclient? 我已经尝试了一些不同的解决方案,但到目前为止没有任何工作,我能找到的大多数示例都使用了折旧的DefaultHttpClient 以下是我尝试之一的示例: String url = “https://api.newrelic.com/v2/applications.json”; HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection(); conn.setRequestProperty(“Content-Type”, “application/json”); conn.setRequestProperty(“X-Api-Key”, “myApiKey”); conn.setRequestMethod(“GET”); JSONObject names =new JSONObject(); try { names.put(“names[]=”, “EndUser/WebTransaction/WebTransaction/JSP/index.jsp”); } catch (JSONException e) { e.printStackTrace(); } OutputStreamWriter wr= […]

单例DAO对象可以吗?

考虑以下类的结构: BaseDAO使用方法来准备PreparedStatement并从池中获取连接 AccountDAO extends BaseDAO以通过JDBC使用Account表。 这个class是单身 AccountService女巫调用AccountDAO的方法如下: AccountDAO.getInstance().login(name, password). AccountDAO是一个带有@Transactional注释的Spring bean,用于插入一些数据的方法。 这个可以吗? 我认为单例DAO类可能会导致性能问题。 可能最好在服务层类中使用一些弹簧注入? (我是Spring的新手,所以任何建议都会受到关注)