0

私は Hibernate の初心者で、3 つのテーブルを 2 つのエンティティにマッピングする際に問題を発見しました。

SQL コード:

CREATE TABLE users (
  userid int unsigned auto_increment,
  username varchar(20) not null,
  password varchar(64) not null,
  primary key (userid)
);

CREATE TABLE roles (
  roleid int unsigned auto_increment,
  rolename varchar(10) not null,
  description varchar(255) not null
  primary key (roleid)
);

CREATE TABLE userroles (
  userid int unsigned not null,
  roleid int unsigned not null,
  primary key (userid,roleid),
  foreign key (userid) references users (userid),
  foreign key (roleid) references roles (roleid)
);

現在のマッピング xml

User.hbm.xml

<class name="com.model.User" table="users">
  <id name="userId" column="userid">
    <generator class="native"/>
  </id>
  <property name="userName" column="username"/>
  <property name="password" column="password"/>
</class>

Role.hbm.xml

<class name="com.model.Role" table="roles">
  <id name="roleId" column="roleid">
    <generator class="native"/>
  </id>
  <property name="roleName" column="rolename"/>
  <property name="description" column="description"/>
</class>

エンティティ Java ファイルの作成方法も教えてください。ありがとう

4

1 に答える 1

0

3 番目のテーブルのマッピングに問題があると思います。3 番目のテーブルには複合キーを使用する必要があります。役に立つと思われるいくつかのリンクを次に示します 。 thread_id=22638

それでもファイルの作成に問題がある場合は、回答にコメントを追加してください。さらにお手伝いさせていただきます。Java ファイルを作成するには、getter と setter を使用してファイルを作成し、get メソッドを使用してデータを抽出し、set メソッドを使用して新しいデータを入力します。

于 2012-09-06T03:10:23.737 に答える