Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.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 使用spring在所有者项目中提供相同对象的多对多xml关系_Java_Xml_Spring_Hibernate - Fatal编程技术网

Java 使用spring在所有者项目中提供相同对象的多对多xml关系

Java 使用spring在所有者项目中提供相同对象的多对多xml关系,java,xml,spring,hibernate,Java,Xml,Spring,Hibernate,我有两个表用户和dailyGame在其中有可能映射。我想发送以下信息以响应每日游戏列表: 游戏名 格式 开始时间 费用 成员计数(我想从第三个表(即dailyGame_用户)中获取计数。) My user.hbm.xml文件包含: <set name="dailyGames" table="dailygame_user" inverse="false" lazy="true" fetch="select" cascade="all" > <

我有两个表用户和dailyGame在其中有可能映射。我想发送以下信息以响应每日游戏列表:

  • 游戏名
  • 格式
  • 开始时间
  • 费用
  • 成员计数(我想从第三个表(即dailyGame_用户)中获取计数。)
My user.hbm.xml文件包含:

<set name="dailyGames" table="dailygame_user" 
        inverse="false" lazy="true" fetch="select" cascade="all" >
        <key>
            <column name="userId" not-null="true" />
        </key>
        <many-to-many entity-name="com.mindbowser.draftDynasty.dto.DailyGameDTO">
            <column name="groupId" not-null="true" />
        </many-to-many>
    </set>

和DailyGame.hbm.xml:

    <set name="members" table="dailygame_user" inverse="true" lazy="true" fetch="select">
        <key>
            <column name="gameId" not-null="true" />
        </key>
        <many-to-many entity-name="com.mindbowser.draftDynasty.dto.UserDTO">
            <column name="userId" not-null="true" />
        </many-to-many>
    </set>

UserDTO.java:
Set dailyGames=new HashSet()

DailyGameDTO.java:
Set members=newhashset()

对于获取每日游戏列表,我使用以下代码: dailyGameDao:

public List<DailyGameDTO> getDailyGameList() {
    List<DailyGameDTO> gameList = null;
    DailyGameDTO dailyGameDTO=null;
    List<DailyGameDTO> memList=null;
    try {
        Criteria criteria = getCurrentSession().createCriteria(DailyGameDTO.class);
        gameList = criteria.list();
        } catch (HibernateException ex) {
        logger.error(ex.getStackTrace(), ex);
        throw ex;
    }
    return gameList;
}
public List getDailyGameList(){
List gameList=null;
DailyGameDTO DailyGameDTO=null;
List memList=null;
试一试{
Criteria=getCurrentSession().createCriteria(DailyGameDTO.class);
gameList=criteria.list();
}捕获(HibernateeException例外){
logger.error(例如getStackTrace(),例如);
掷骰子;
}
返回游戏列表;
}

此“gameList”变量应包含userDTO对象,但它仅包含dailyGameDTO对象,而不是userDTO。

尝试将lazy=“true”更改为lazy=“false”。

如果您添加一个小说明,说明为什么应该这样做,您的答案可能会更有用。