【原创】Hibernateonetoone
来源:互联网 发布:log4j2 输出sql 编辑:程序博客网 时间:2024/04/28 03:26
两个表user,card
create table `test`.`user`(
`userid` int default '' not null,
`username` varchar(20),
primary key (`userid`)
);
create unique index `PRIMARY` on `test`.`user`(`userid`);
create table `test`.`card`(
`cardid` int default '' not null,
`cardnum` int,
primary key (`cardid`)
);
create unique index `PRIMARY` on `test`.`card`(`cardid`);
index.jsp
<body>
<a href="servlet/addUser">add user</a>
</body>
addUser.java
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
User user=new User();
user.setUsername("rockie");
Card card=new Card();
user.setCard(card);
card.setCardnum(new Integer(777));
card.setUser(user);
UserDAO userdao=new UserDAO();
userdao.save(user);
}
User.java
package org.rockie;
/**
* User generated by MyEclipse - Hibernate Tools
*/
public class User implements java.io.Serializable {
// Fields
private Integer userid;
private String username;
private Card card;
// Constructors
public Card getCard() {
return card;
}
public void setCard(Card card) {
this.card = card;
}
/** default constructor */
public User() {
}
/** full constructor */
public User(String username) {
this.username = username;
}
// Property accessors
public Integer getUserid() {
return this.userid;
}
public void setUserid(Integer userid) {
this.userid = userid;
}
public String getUsername() {
return this.username;
}
public void setUsername(String username) {
this.username = username;
}
}
Card.java
package org.rockie;
/**
* Card generated by MyEclipse - Hibernate Tools
*/
public class Card implements java.io.Serializable {
// Fields
private Integer cardid;
private Integer cardnum;
private User user;
// Constructors
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
/** default constructor */
public Card() {
}
/** full constructor */
public Card(Integer cardnum) {
this.cardnum = cardnum;
}
// Property accessors
public Integer getCardid() {
return this.cardid;
}
public void setCardid(Integer cardid) {
this.cardid = cardid;
}
public Integer getCardnum() {
return this.cardnum;
}
public void setCardnum(Integer cardnum) {
this.cardnum = cardnum;
}
}
UserDAO.java
package org.rockie;
import org.hibernate.Session;
import org.hibernate.Transaction;
public class UserDAO {
public void save(User user)
{
Session session=HibernateSessionFactory.getSession();
Transaction tx=session.beginTransaction();
session.save(user);
tx.commit();
}
}
User.hbm.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--
Mapping file autogenerated by MyEclipse - Hibernate Tools
-->
<hibernate-mapping>
<class name="org.rockie.User" table="user">
<id name="userid" type="java.lang.Integer">
<column name="userid" />
<generator class="native" />
</id>
<property name="username" type="java.lang.String">
<column name="username" length="20" />
</property>
<one-to-one name="card" class="org.rockie.Card" cascade="all"></one-to-one>
</class>
</hibernate-mapping>
Card.hbm.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--
Mapping file autogenerated by MyEclipse - Hibernate Tools
-->
<hibernate-mapping>
<class name="org.rockie.Card" table="card">
<id name="cardid" type="java.lang.Integer">
<column name="cardid" />
<generator class="foreign">
<param name="property">user</param>
</generator>
</id>
<property name="cardnum" type="java.lang.Integer">
<column name="cardnum" />
</property>
<one-to-one name="user" class="org.rockie.User"></one-to-one>
</class>
</hibernate-mapping>
转载时..
请注明:
转至http://blog.csdn.net/Kipen/ 作者:rockie(石の頭丶)
请尊重他人的劳动果实..
谢谢..
--by rockie(石の頭丶)
- 【原创】Hibernateonetoone
- 原创!!!
- 原创
- 原创
- 原创
- [原创]
- 原创
- 原创
- 原创
- 原创
- 原创
- 原创
- 原创
- 原创
- 原创
- 原创
- 原创
- 原创
- 指针, 指针的指针, 数组, 指针数组, 数组指针, 指针函数, 函数指针
- 有感于最长的/最大的......
- VC系统热键的注册
- 回顾一年来的理财历程
- WebWork深入浅出
- 【原创】Hibernateonetoone
- 平衡记分卡(BSC)初探
- 又开始写blog了......
- 如何结合hibernate进行复杂的查询功能设计
- 中国各种资格认证考试一览表
- 烦恼的一天
- 简单的通讯(B进程怎么样接收A进程发来的消息啊?)
- 老外名字之间的点花了我一个多小时
- Get rid of 'Continious Partial attention'——警惕"持续局部注意力"效率杀手