Browse Source

jfinal 3.4

James 8 years ago
parent
commit
a6363d7445
1 changed files with 20 additions and 16 deletions
  1. 20 16
      src/main/java/com/jfinal/plugin/activerecord/dialect/Dialect.java

+ 20 - 16
src/main/java/com/jfinal/plugin/activerecord/dialect/Dialect.java

@@ -272,14 +272,16 @@ public abstract class Dialect {
 	protected void fillStatementHandleDateType(PreparedStatement pst, List<Object> paras) throws SQLException {
 		for (int i=0, size=paras.size(); i<size; i++) {
 			Object value = paras.get(i);
-			if (value instanceof java.sql.Date) {
-				pst.setDate(i + 1, (java.sql.Date)value);
-			} else if (value instanceof java.sql.Timestamp) {
-				pst.setTimestamp(i + 1, (java.sql.Timestamp)value);
-			} else if (value instanceof java.util.Date) {	// 该分支放在最后,否则另外两项将无意义
-				// Oracle、SqlServer 中的 TIMESTAMP、DATE 支持 new Date() 给值
-				java.util.Date d = (java.util.Date)value;
-				pst.setTimestamp(i + 1, new java.sql.Timestamp(d.getTime()));
+			if (value instanceof java.util.Date) {
+				if (value instanceof java.sql.Date) {
+					pst.setDate(i + 1, (java.sql.Date)value);
+				} else if (value instanceof java.sql.Timestamp) {
+					pst.setTimestamp(i + 1, (java.sql.Timestamp)value);
+				} else {
+					// Oracle、SqlServer 中的 TIMESTAMP、DATE 支持 new Date() 给值
+					java.util.Date d = (java.util.Date)value;
+					pst.setTimestamp(i + 1, new java.sql.Timestamp(d.getTime()));
+				}
 			} else {
 				pst.setObject(i + 1, value);
 			}
@@ -292,14 +294,16 @@ public abstract class Dialect {
 	protected void fillStatementHandleDateType(PreparedStatement pst, Object... paras) throws SQLException {
 		for (int i=0; i<paras.length; i++) {
 			Object value = paras[i];
-			if (value instanceof java.sql.Date) {
-				pst.setDate(i + 1, (java.sql.Date)value);
-			} else if (value instanceof java.sql.Timestamp) {
-				pst.setTimestamp(i + 1, (java.sql.Timestamp)value);
-			} else if (value instanceof java.util.Date) {	// 该分支放在最后,否则另外两项将无意义
-				// Oracle、SqlServer 中的 TIMESTAMP、DATE 支持 new Date() 给值
-				java.util.Date d = (java.util.Date)value;
-				pst.setTimestamp(i + 1, new java.sql.Timestamp(d.getTime()));
+			if (value instanceof java.util.Date) {
+				if (value instanceof java.sql.Date) {
+					pst.setDate(i + 1, (java.sql.Date)value);
+				} else if (value instanceof java.sql.Timestamp) {
+					pst.setTimestamp(i + 1, (java.sql.Timestamp)value);
+				} else {
+					// Oracle、SqlServer 中的 TIMESTAMP、DATE 支持 new Date() 给值
+					java.util.Date d = (java.util.Date)value;
+					pst.setTimestamp(i + 1, new java.sql.Timestamp(d.getTime()));
+				}
 			} else {
 				pst.setObject(i + 1, value);
 			}