dorodo报错记录(持续更新)

1:注意 pagesize

2:注意 mapping “标示符无效”

3:报空指针的错误,一般都是后台方法的错误。

4:Impl中一定要写上实现的方法。

5:No row with the given identifier exists
   有两张表,table1和table2.产生此问题的原因就是table1里做了关联<one-to-one>或者<many-to-one unique="true">(特殊的多对一映射,实际就是一对一)来关联table2.当hibernate查找的时候,table2里的数据没有与table1相匹配的,这样就会报No row with the given identifier exists这个错.(一句话,就是数据的问题!)
    假如说,table1里有自身的主键id1,还有table2的主键id2,这两个字段.
    如果hibenrate设置的单项关联,即使table1中的id2为null值,table2中id2中有值,查询都不会出错.但是如果table1中的id2字段有值,但是这个值在table2中主键值里并没有,就会报上面的错!
    如果hibernate是双向关联,那么table1中的id2为null值,但是table2中如果有值,就会报这个错.这种情况目前的解决办法就是改成单项关联,或者把不对应的数据改对!

6:Timestamp format must be yyyy-mm-dd hh:mm:ss[.fffffffff] 
ava中一个属性类型是java.util.Date类型,但是数据库表中是varchar类型,在页面上显示记录的时候出现此错误,必须把数据库里改成Timestamp

import java.sql.Date;
import java.text.SimpleDateFormat;
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 
String sdate=df.format(Date.valueOf(request.getParameter("senddate")));
//从前台获取日期并格式化为:2010-11-10 00:00:00
 
  Xinxiissue xinxiissue=new Xinxiissue();//创建对象

  //String aaString=request.getParameter("senddate");//2010-11-10
  //Date bbString=Date.valueOf(request.getParameter("senddate"));//  2010-11-10
xinxiissue.setSenddate(Timestamp.valueOf(sdate));//set对象的日期:2010-11-10 00:00:00.0


package test;
import java.sql.Timestamp;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
 * 时间戳与字符串转换
 * @author Administrator
 *
 */
public class DateUtil {
 /**
  * 默认日期格式
  */
 private static final String DEFAULT_FORMAT = "yyyy-MM-dd HH:mm:ss.SSS";//Timestamp format must be yyyy-mm-dd hh:mm:ss[.fffffffff]
 /**
  * 默认构造函数
  */
 private DateUtil() {
 }
 /**
  * 字符串转换成日期 如果转换格式为空,则利用默认格式进行转换操作
  * @param str 字符串
  * @param format 日期格式
  * @return 日期
  * @throws java.text.ParseException 
  */
 public static Date str2Date(String str, String format){
  if (null == str || "".equals(str)) {
   return null;
  }
  // 如果没有指定字符串转换的格式,则用默认格式进行转换
  if (null == format || "".equals(format)) {
   format = DEFAULT_FORMAT;
  }
  SimpleDateFormat sdf = new SimpleDateFormat(format);
  Date date = null;
   try {
    date = sdf.parse(str);
    return date;
   } catch (ParseException e) {
    e.printStackTrace();
   }
  return null;
 }
 /** 日期转换为字符串
  * @param date 日期
  * @param format 日期格式
  * @return 字符串
  */
 public static String date2Str(Date date, String format) {
  if (null == date) {
   return null;
  }
  SimpleDateFormat sdf = new SimpleDateFormat(format);
  return sdf.format(date);
 }
 /**
  * 时间戳转换为字符串
  * @param time
  * @return
  */
 public static String timestamp2Str(Timestamp time) {
  Date date = null;
  if(null != time){
   date = new Date(time.getTime());
  }
  return date2Str(date, DEFAULT_FORMAT);
 }
 /** 字符串转换时间戳
  * @param str
  * @return
  */
 public static Timestamp str2Timestamp(String str) {
  Date date = str2Date(str, DEFAULT_FORMAT);
  return new Timestamp(date.getTime());
 }
 
 public static void main(String[] args) throws Exception {
  String tm = "2011-01-01 10:00:00.123";
  Timestamp tstamp = str2Timestamp(tm);
  System.out.println(tstamp);
  System.out.println(timestamp2Str(null));
 }
}

猜你喜欢

转载自qiong-dorado.iteye.com/blog/1679086