原因: 时间与空字符串比较是无效的,如果拿传入的时间类型参数与空字符串''进行对比则会引发invalid comparison:java.util.data and java.lang.string异常 解决方法: 把xxx.xml中的 <if test="XXX !=null and XXX!='' "> XXX!='' 去掉,只保留非空判断…
原文链接:http://blog.csdn.net/wanghailong_qd/article/details/50673144 mybatis异常invalid comparison: java.util.Date and java.lang.String 开发中改动mapper文件后需要重新编译发布, 由于工程比较大非常耗时, 所以为方便快速测试干脆写了一个小java工程. 工程中用到的dao, mapper和实体类都是从工程中拷出来的, 数据库也是同一个. 但是遇到一个比较奇怪的问题 实…
严重: Servlet.service() for servlet [spring] in context with path [] threw exception [Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: ### E…
mybatis中使用动态sql,报错: invalid comparison: java.util.ArrayList and java.lang.String] with root cause 是由于  list != ' ' 导致的,引起了集合与string类型的比较 <if test="lsit != null and list != ''"> B.COMMID IN ( <foreach collection="list" item=&qu…
在重构项目的时候,遇到了mybatis的一个异常: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String 随后在网上查询解决方法时看到,这个是mybatis在3.3.0版本修复的一个bug,3.3.0之前是没有问题,之后就会报异常. 原因是: 对于时间参数进行比较时的一个bug. 如果拿传入的时间类型参数与空字符串''进行对比判断则会引发异常. <if test=&quo…
报错: Caused by: org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.ArrayList and java.lang.String ### Cause: java.lang.IllegalArgumentException: inva…
我数据库里用到了日期类型.用java编程的时候同时import了java.util.*和java.sql.*,发现直接申明Date类型 Date dt; 会报错,查了一下才发现有java.util.Date和java.sql.Date,在定义日期类型的时候要使用全名,就是像这样: java.util.Date udt; java.sql.Date sdt; 然后我就查java.util.Date和java.sql.Date的区别和用法,这方面网上资料挺全,我就不赘述了,大致区别就是java.ut…
java.util.Date是在除了SQL语句的情况下面使用的.java.sql.Date是针对SQL语句使用的,它只包含日期而没有时间部分它 们都有getTime方法返回毫秒数,自然就可以直接构建. java.util.Date 是 java.sql.Date 的父类,前者是常用的表示时间的类,我们通常格式化或者得到当前时间都是用他,后者之后在读写数据库的时候用他,因为PreparedStament的 setDate()的第2参数和ResultSet的getDate()方法的第2个参数都是ja…
java.util.Date是在除了SQL语句的情况下面使用的.java.sql.Date是针对SQL语句使用的,它只包含日期而没有时间部分它们都有getTime方法返回毫秒数,自然就可以直接构建. java.util.Date 是 java.sql.Date 的父类,前者是常用的表示时间的类,我们通常格式化或者得到当前时间都是用他,后者之后在读写数据库的时候用他,因为PreparedStament的setDate()的第2参数和ResultSet的getDate()方法的第2个参数都是java…
java.util.Date 就是在除了SQL语句的情况下面使用java.sql.Date 是针对SQL语句使用的,它只包含日期而没有时间部分它都有getTime方法返回毫秒数,自然就可以直接构建java.util.Date d = new java.util.Date(sqlDate.getTime());... --------------------------------------------------------------------------------java.util.D…
java.util.Date是在除了SQL语句的情况下面使用的. java.sql.Date是针对SQL语句使用的,它只包含日期而没有时间部分 它们都有getTime方法返回毫秒数,自然就可以直接构建. java.util.Date 是 java.sql.Date 的父类,前者是常用的表示时间的类,我们通常格式化或者得到当前时间都是用他,后者之后在读写数据库的时候用他,因为PreparedStament的setDate()的第2参数和ResultSet的getDate()方法的第2个参数都是ja…
java.util.Date与的String互转 java.util.Date---->String /** * 将java.util.Date对象转化为String字符串 * @param date * 要格式的java.util.Date对象 * @param strFormat * 输出的String字符串格式的限定(如:"yyyy-MM-dd HH:mm:ss") * @return 表示日期的字符串 */ public static String dateToStr(j…
一.java.util.HashMap 1.1 java.util.HashMap 综述 java.util.HashMap继承结构如下图 HashMap是非线程安全的,key和value都支持null HashMap的节点是链表,节点的equals比较的是节点的key和value内容是否相等. static class Node<K,V> implements Map.Entry<K,V> { final int hash; final K key; V value; Node&…
在我们启动项目的时候经常会出现内存溢出这个错误  设置一下内存就ok 错误信息 java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: PermGen space 解决方法: 步骤1:打开myeclipse的,点击上面的window的按钮,选择最下面的那个preferences这个按钮 步骤2:选择其中的java这个选项,点击java这个选项中Installed JREs这个出现右边的界面 步骤3:出现右边的这个选…
Date 的类型转换:首先记住java.util.Date 为 java.sql.Date的父类 1.将java.util.Date 转换为 java.sql.Date java.lang.ClassCastException: java.util.Date cannot be cast to java.sql.Date Date d=new Date();  //java.util.Datenew java.sql.Date(d.getTime())  //将java.util.Date 转换…
最近无意中发现,在oracle中同一样的一个Date类型字段,存储的日期格式有两种不同的情况,第一种是2011-1-1 12:00:00,第二种是2011-1-1,仔细查找发现在向数据库中写数据的时候定义的变量的问题. 第一种是:java.util.Date类型的变量,第二种是:java.sql.Date类型的变量,后来写了下面的代码测试了下. java.util.Date和java.sql.Date 区别应该是:java.util.Date 类型写到数据库后存储的值可以到秒,java.sql.…
1.Android Studio报错 Attempt to invoke interface method 'boolean java.util.List.add(java.lang.Object)' on a null 原因:List没有初始化,比如 List<>list:  没有  List<>list = new ArrayList<>();…
tomcat内存溢出的解决方法(java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError:) 最简单的解决办法: 在eclipse中,window-->preferences-->Java-->Installed JREs 选中JRE 点击Edit 写入这句话: -Xms800m -Xmx800m -XX:MaxNewSize=256m -XX:MaxPermSize=256m 来自:http://blog.1…
在ResultSet中我们经常使用的setDate或getDate的数据类型是java.sql.Date,而在平时java程序中我们一般习惯使用 java.util.Date. 因此在DAO层我们经常会碰到这俩种数据类型的相互转换. 两者的关系java.lang.Object|+---java.util.Date|+----java.sql.Date 从这个图中我们可以知道java.sql.Date是从java.util.Date继承过来的. 相互转换1. 使用getTime()函数这两个类都提…
java.lang.Object ....|__java.util.Date ..........|__java.sql.Date/java.sql.Timestamp /java.sql.Time [父类]java.util.Date日期格式为:年月日时分秒 [子类]java.sql.Date日期格式为:年月日[只存储日期数据不存储时间数据] [子类]java.sql.Time日期格式为:时分秒 [子类]java.sql.Timestamp日期格式为:年月日时分秒纳秒(毫微秒) 针对不同的数据…
在web开发中,避免不了对日期的操作,就几种常见的日期操作做个总结(部分参考网络,在此表示感谢): java.util.Date.java.sql.Date.java.sql.Time.java.sql.Timestamp java.lang.Object ....|__java.util.Date ..........|__java.sql.Date/java.sql.Timestamp /java.sql.Time ....|__java.security.Timestamp java.ut…
选中ccs项目后,选择debug on server,但是运行到一半,跳出错误: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: PermGen space       我就想,是不是我运行的web程序太多了,于是我就删掉了server下的其他项目,再次运行就成功了.  …
java.util.Date.java.sql.Date.java.sql.Time.java.sql.Timestamp区别和联系 栏目:Java基础 作者:admin 日期:2015-04-19 评论:0 点击: 1,276 次 在Web开发中,避免不了对日期的操作,常用的关于时间的类有这么几个:java.util.Date.java.sql.Date.java.sql.Time.java.sql.Timestamp,这几个类在JDK的定义如下所示:java.lang.Object ....…
java.util.Date是在除了SQL语句的情况下面使用的.java.sql.Date是针对SQL语句使用的,它只包含日期而没有时间部分它 们都有getTime方法返回毫秒数,自然就可以直接构建. java.util.Date 是 java.sql.Date 的父类,前者是常用的表示时间的类,我们通常格式化或者得到当前时间都是用他,后者之后在读写数据库的时候用他,因为PreparedStament的 setDate()的第2参数和ResultSet的getDate()方法的第2个参数都是ja…
1.将java.util.Date 转换为 java.sql.Date java.sql.Date sd; java.util.Date ud; //initialize the ud such as ud = new java.util.Date(); sd = new java.sql.Date(ud.getTime()); 2.若要插入到数据库并且相应的字段为Date类型 可使用PreparedStatement.setDate(int ,java.sql.Date)方法 其中的java.…
java.util.Date和java.sql.Date的区别及应用   java.util.Date 就是在除了SQL语句的情况下面使用 java.sql.Date 是针对SQL语句使用的,它只包含日期而没有时间部分 它都有getTime方法返回毫秒数,自然就可以直接构建 java.util.Date d = new java.util.Date(sqlDate.getTime()); ... --------------------------------------------------…
关系: java.util.Date是java.sql.Date的父类 区别:(java.sql.Date包含年月日信息,java.util.Date包含年月日时分秒) 1:“规范化”的java.sql.Date只包含年月日信息,时分秒毫秒都会清零.格式类似:YYYY-MM-DD. 当我们调用ResultSet的getDate()方法来获得返回值时,java程序会参照"规范"的java.sql.Date来格式化数据库中的数值. 如果数据库中存在的非规范化部分的信息将会被截取,如: 20…
问:java.sql.Date 和 java.util.Date 有什么区别?   答:这两个类的区别是 java.sql.Date是针对 SQL 语句使用的,它只包含日期而没有时间部分,一般在读写数据库时用.java.util.Date 是在除了 SQL 语句外的所有情况下使用的,一般是日常日期字段.java.util.Date 是 java.sql.Date 的父类.唯一的相同点就是都有 getTime 方法返回毫秒数(因为继承了util下的getTime 方法).代码解释所示: publi…
java.util.Arrays类是数组的工具类,一般数组常用的方法包括 二分查找:public static int  binarySearch(array[],int key),返回key的下标index 扩容缩容:public static int[]  copyOf(array[],newLength),返回新数组 取部分:public static int[]  copyOfRange(array[],fromindex,toindex)   ,注意[from,to)是开区间,返回新数…
1.问题:我在tomcat中放入了大量的war包,启动的时候报:java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: PermGen space: 2.问题分析: PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中,它和存放类实例(I…