import java.sql.*; import java.util.*; import java.text.*; public class bug55398 { public static void main(String args[]) throws Exception { TimeZone.setDefault(TimeZone.getTimeZone("Europe/Warsaw")); Calendar utcCalendar=Calendar.getInstance(TimeZone.getTimeZone("UTC")); SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); format.setTimeZone(TimeZone.getTimeZone("UTC")); Timestamp t=new Timestamp(format.parse("2010-07-01 00:00:00").getTime()); Connection c=DriverManager.getConnection("jdbc:mysql://localhost/test?user=root&password=root&serverTimezone=UTC&useLegacyDatetimeCode=false&autoReconnect=true"); PreparedStatement s; ResultSet rs; System.out.println("with utc calendar:"); s=c.prepareStatement("select * from atime where atimestamp=?"); s.setTimestamp(1,t,utcCalendar); rs=s.executeQuery(); while(rs.next()) { System.out.println(rs.getTimestamp(1)); } s.close(); System.out.println("with local calendar:"); s=c.prepareStatement("select * from atime where atimestamp=?"); s.setTimestamp(1,t,Calendar.getInstance()); rs=s.executeQuery(); while(rs.next()) { System.out.println(rs.getTimestamp(1)); } s.close(); System.out.println("without calendar:"); s=c.prepareStatement("select * from atime where atimestamp=?"); s.setTimestamp(1,t); rs=s.executeQuery(); while(rs.next()) { System.out.println(rs.getTimestamp(1)); } s.close(); } }