Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java DAO:如何在选项卡中保存默认值?_Java_Database - Fatal编程技术网

Java DAO:如何在选项卡中保存默认值?

Java DAO:如何在选项卡中保存默认值?,java,database,Java,Database,我有两张桌子: T1: County- Name - FK_Country T2: Country - Name 当我想保存一个县时,我想选择一个默认的国家,但我收到了这个错误:对象是一个未保存的临时实例-在合并之前保存临时实例:local.Country;嵌套异常为org.hibernate.transientObject异常:对象是未保存的临时实例-合并前保存临时实例:local.County Java代码 Country country = new Country("USA"); l

我有两张桌子:

T1: County- Name - FK_Country
T2: Country - Name 
当我想保存一个县时,我想选择一个默认的国家,但我收到了这个错误:对象是一个未保存的临时实例-在合并之前保存临时实例:local.Country;嵌套异常为org.hibernate.transientObject异常:对象是未保存的临时实例-合并前保存临时实例:local.County

Java代码

Country country = new Country("USA");

localizationService.saveCountry(country);
localizationService.saveCounty(getForm().getModelObject());

我在这里看到两个问题:

  • 您正在为每次保存创建一个新的
    国家/地区
  • 保存前,您没有将
    国家
    对象与
    关联
  • 我会尝试从数据库中加载一个国家。也就是说,不要做:

    Country country = new Country("USA");
    
    按照以下思路做一些事情:

    Country country = localizationService.findByName("USA");
    // My assumption on your model here
    County county = getForm().getModelObject();
    county.setCountry(country);
    localizationService.saveCounty(county);
    

    好的,问题是:我不知道我的表的Version列不应该为null。我在表中插入了一组信息,将Version列保留为null(该列显然用于JPA)。好的,再次谢谢你的回答。