java.sql.SQLException: Lock wait timeout exceeded; try restarting tra
nsaction at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3558)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3490)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1959)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2109)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2648)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.ja
va:2077)
at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:
2228)
at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:
208)
at org.hibernate.loader.Loader.getResultSet(Loader.java:1812)
at org.hibernate.loader.Loader.doQuery(Loader.java:697)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Lo
ader.java:259)
at org.hibernate.loader.Loader.loadEntity(Loader.java:1885)
... 131 more
Run Code Online (Sandbox Code Playgroud)
当我更新记录时,我正在重复锁定超时超出异常.
我正在使用Java Struts 2.1 Hibernate配置.DB Used是MYSQL.
任何人都知道如何解决它.. ??
码
public String testDate(){
TimeZone.setDefault(TimeZone.getTimeZone("US/Eastern"));
Calendar fromDate = Calendar.getInstance();
Date date= new Date();
System.out.println(fromDate);
System.out.println(date);
}
Run Code Online (Sandbox Code Playgroud)
我的日历变量在调试下面的日历变量时显示cdate值2013-12-09T00:00:00.000Z和时间值1386649779590.
Calendar cal = Calendar.getInstance();
Run Code Online (Sandbox Code Playgroud)
我在打印对象时看到的完整日历详细信息
System.out.println(cal);
Run Code Online (Sandbox Code Playgroud)
安慰
java.util.GregorianCalendar[time=1386649779590,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="US/Eastern",offset=-18000000,dstSavings=3600000,useDaylight=true,transitions=235,lastRule=java.util.SimpleTimeZone[id=US/Eastern,offset=-18000000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=3,startMonth=2,startDay=8,startDayOfWeek=1,startTime=7200000,startTimeMode=0,endMode=3,endMonth=10,endDay=1,endDayOfWeek=1,endTime=7200000,endTimeMode=0]],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2013,MONTH=11,WEEK_OF_YEAR=50,WEEK_OF_MONTH=2,DAY_OF_MONTH=9,DAY_OF_YEAR=343,DAY_OF_WEEK=2,DAY_OF_WEEK_IN_MONTH=2,AM_PM=1,HOUR=11,HOUR_OF_DAY=23,MINUTE=29,SECOND=39,MILLISECOND=590,ZONE_OFFSET=-18000000,DST_OFFSET=0]
Run Code Online (Sandbox Code Playgroud)
而我的java.util.date变量显示日期为Mon Dec 09 07:37:50 EST 2013,同时调试日期变量
Date date= new Date();
Run Code Online (Sandbox Code Playgroud)
我设置的默认值timezone是在程序启动时指定的EST
TimeZone.setDefault(TimeZone.getTimeZone("US/Eastern"));
Run Code Online (Sandbox Code Playgroud)
而我正在从timezone IST工作.
我的问题是
为什么cal中Calendar和date的Date()不同?
我想在Object不使用setter的情况下向变量插入值.怎么可能.
这是一个例子
Class X{
String variableName;
// getters and setters
}
Run Code Online (Sandbox Code Playgroud)
现在我有一个包含variable name,value to be set和a的功能Object of the Class X.
我试图使用泛型方法将值设置为Object(objectOfClass),其值为i已传递(valueToBeSet)在相应的变量(variableName)中.
Object functionName(String variableName, Object valueToBeSet, Object objectOfClass){
//I want to do the exact same thing as it does when setting the value using the below statement
//objectOfClass.setX(valueToBeSet);
return objectOfClass;
}
Run Code Online (Sandbox Code Playgroud) 要求:
当服务器中的某些值发生更改时,触发jsp页面刷新.
Ajax是一种选择,但是以特定间隔刷新JSP将增加服务器上的负载.由于我正在处理处理大量数据的系统,因此优化具有更高优先级的最佳数据.
任何可能有用的新技术或设计模式都非常感谢.
注意:我已经看到了符合我在HTML 5中的要求的技术.但我正在寻找适用于所有内容的东西.