我的项目是一个使用Hibernate和服务器的java项目.EJB3Weblogic
为了方便起见(据我所知,这是典型的hibernate),一些实体包含循环依赖(父知道孩子,孩子知道父母).此外,对于某些子类 - hashCode()和equals()方法依赖于它们的父级(因为它是一个唯一的键).
在工作时我看到了一个奇怪的行为 - 从服务器返回到客户端的一些集合虽然包含正确的元素,但它们的行为却没有包含任何内容.例如,一个简单的测试,例如:set.contains(set.toArray()[0])返回false虽然hashCode()方法很好.
经过大量的调试后,我能够生成2个简单的类来重现问题(我可以向你保证hashCode(),这两个类中的函数都是自反的,传递的和对称的):
package test;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.HashSet;
import java.util.Set;
public class ClientTest implements Serializable {
public static void main(String[] args) throws Exception {
SerializableClass serializationTest = new SerializableClass();
FieldOfSerializableClass hashMember = new FieldOfSerializableClass();
hashMember.setParentLink(serializationTest);
serializationTest.setHashCodeField("Some string");
serializationTest
.setSomeSet(new HashSet<FieldOfSerializableClass>());
serializationTest.getSomeSet().add(hashMember);
System.out.println("Does it …Run Code Online (Sandbox Code Playgroud) 我有一个奇怪的 Java 问题 - 由于某种原因,当我打开一个对话框时,它经常变成黑色。当我强制重绘(例如,将其再次拖出并进入屏幕)时,它会再次正常绘制。问题似乎只发生在我的电脑上(相同的代码适用于朋友),而且它不仅仅是一个类 - 似乎我打开的几乎每个对话框(在不同的项目上)都会遇到这个问题。甚至 JOptionPane.showMessageDialog() 也会遇到这个问题。更奇怪的是,它甚至在我打开 java 控制面板时发生!我能做什么?它让我疯狂!如果重要的是我在 Windows 7 上运行,我的 GPU 是安装了最新 CATALYST 驱动程序的 ATI HD4800。提前致谢!
我希望能够记录我触摸 Android 手机屏幕的所有时间并播放它(无需 root)。使用这个人的回答,我设法记录了我使用 adb 触摸手机的次数的回放。
然而,在回放时,我所做的所有触摸都立即出现,无需等待手机上的内容。例如,如果我想进入我的应用程序并点击它,它会启动应用程序,但不要等待应用程序加载,只需一次输入所有触摸并关闭。
我尝试使用adb shell getevent -t(使用时间戳)记录触摸,但是当我尝试播放时,我得到了use: sendevent device type code value
我sleep(2)在每次主要接触后都尝试使用,并得到了/sdcard/sendevent_input.sh[17]: syntax error: '2' unexpected
我尝试使用shell input touchscreen tap x y并每隔几秒钟播放一次,并且设法重播两次触摸,但是由于某种原因,触摸变得随机(我只使用 ABS_MT_POSITION 记录记录adb shell getevent -lt,并认为方向是问题,所以尝试使用 xy, yx, 1080 - x 1920 - y 和 1920 - y 1080 -x 但它们都不起作用)。
我想要的只是用 adb(没有 root)记录我的触摸并播放它们。
如何?
我已经使用tomcat和spring很长时间了(一年多)。一切顺利。今天,突然我在启动tomcat时收到一个奇怪的错误:
Caused by: java.lang.IllegalStateException: Using named parameters for method public abstract java.util.List com.securegion.monitorcenter.dao.IncidentsViewRepository.getFixedIncidents(java.lang.String,java.util.List,java.lang.String,java.lang.String,int,int) but parameter 'text' not found in annotated query 'select * from siemincidents where fixed = 1 and descriptioninfo like %?1% and incidentseverity in ?2 and starttimestamp >= ?3 and endtimestamp <= ?4 order by starttimestamp desc limit ?5, ?6'!
我不知道该怎么做,但是没人使用这种方法,所以我删除了它。然后我重新启动了tomcat,并得到了
Using named parameters for method public abstract java.util.List com.securegion.monitorce
nter.dao.IncidentsViewRepository.getFixedIncidents(int,int) but parameter 'start' not found in annotated query 'select * from siemincidents where fixed = 1 order …