hibernate注解配置的问题(二)

  1.笔者由于 初学 hibernate ,遇到了 很多的 麻烦, 但是在 百度 寻找 注解配置 的 过程中,发现并没有 直接了当的 答案, 索性 自己写, 伏惟尚飨。。

  2. 所有的 单向配置,  都最好只 在 儿子这边 配置,意思就是 儿子类 需要 写 private father father;@manyToone                   _____________________@joincolumn(name="father_id") 

  3.后面 全是 双向的: 直接 上来 一对一

             父亲类:

@Entity<pre name="code" class="java">

public class idcard(){private int id; private String idno; private person person;

 @Id

 public getId(){} 

@oneToone(mappedby="很重要的 一个idcard")//儿子 里面的一个 属性值 

publci getPerson(){} }

 儿子类 

@Entity
public class person(){ private int id;

 
private idcard ;
@Id
  public getId(){

} 
@oneToone
@joincolumn(name="自己命名 id_id")
 publci getidcard (){
}
        
}
 3—1: 一对多的父亲的 

@Entity
public class comhj  implements Serializable{

	private int sm;
	private Set<function_right> ss=new HashSet<function_right>();
	
	@Id
	public int getSm() {
		return sm;
	}
	public void setSm(int sm) {
		this.sm = sm;
	}
	
	
	@OneToMany(mappedBy="comhj")// 必须是对应 起来的
	public Set<function_right> getSs() {
		return ss;
	}
	public void setSs(Set<function_right> ss) {
		this.ss = ss;
	}
	
	
	
}

儿子的 多对一:

@Entity
public class function_right implements Serializable {

	private int  compment;
    private comhj comhj;
    
	@Id
	@Column(name="c_id")
	public int getCompment() {
		return compment;
	}

	public void setCompment(int compment) {
		this.compment = compment;
	}
	@ManyToOne
	@JoinColumn(name=comhj_id)// 自己 命名的 最好和 父亲是 关联的
	public comhj getComhj() {
		return comhj;
	}

	public void setComhj(comhj comhj) {
		this.comhj = comhj;
	}
	
	
	
}
3-3 多对多,我们这里不讲解;用的 很少

 接下来 是 联合主键的 问题

就 很麻烦啊

  功能 模块 操作 权限:分析 + 分解 下来 :3个 主键 就是 说 

                      @Id 写三个 ,

           2个外键 就是:

                     @manyToone @joincolumn() 

                       写两个 

@Entity
public class function_right implements Serializable {

	private int  compment;
    private commss coms;// 必须 写 父亲的 实力类, 才能 向对应的
    private comhj comhj;
    
	@Id
	@Column(name="c_id")
	public int getCompment() {
		return compment;
	}

	@Id
	@ManyToOne
	@JoinColumn(name="coms_id")
	public commss getComs() {
		return coms;
	}

        @Id
	@ManyToOne
	@JoinColumn(name="comhj_id")</span>
	public comhj getComhj() {
		return comhj;
	}

	
}

功能 权限可控的字段 

   分析 三个 主键 恰好又是 三个 外键,

@Entity
public class function_xpl  implements Serializable{

	private function_right function_right;
    private String name;
  
	
    @Id
	@ManyToOne
	@JoinColumns({@JoinColumn(name="c_id"),
		@JoinColumn(name="coms_id"),
		@JoinColumn(name="comhj_id")})
	public function_right getFunction_right() {
		return function_right;
	}
	
	
}

由于  百度 太令人 失望, 所以 费了 很大的功夫才 把这些 归纳出来,

    


















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值