SSH框架中使用双向关联如何处理外键(添加)

简介: EG:已知表customer :user 为1:多关系

EG:已知表customer :user 为1:多关系

(一个user可以对应多个customer客户,一个customer只对应一个user用户)

外键在Customer表中,外键名为cust_user_id

class bean .hbm.xml
User 添加关联属性 配置一对多
Customer 添加关联属性 配置多对一


演示:


User中的Bean 内联代码片。

private String id;//用户id
private String username;//用户名称
private String password;//用户密码
//1的方:添加关联属性 customer-外键cust_user_id-关联到user
private Set customer =new HashSet(0);
public Set getCustomer() {
  return customer;
}
public void setCustomer(Set customer) {
  this.customer = customer;
}
//
public User(String 接收的名称) {
  this.接收的名称=接收的名称;
}
复制代码


.hbm.xml中配置一对多:

<!-- 1的一方,设置一对多,实现双向查询  set name中的数值是与bean中设置的关联属性名一致-->
    <set name="customer" inverse="true">
            <key>
                <column name="cust_user_id"/>
            </key>
              <one-to-many class="com.zero.domain.Customer" />
      </set>
复制代码


演示:


Customer中的Bean 内联代码片。

private String cust_id;//客户id
   private String cust_name;//客户名字
//  private String cust_user_id;//用户跟进客户的id
//  外键处理
   private User user;
   //接受的名称
   private String 接收的名称;
   public User getUser() {
    return user;
   }
   public void setUser(User user) {
    this.user = user;
   }
   public String get接收的名称() {
    return 接收的名称;
   }
   public void setId(String 接收的名称) {
    this.接收的名称= 接收的名称;
   }
复制代码


.hbm.xml中配置一对多:

<many-to-one lazy="false" name="user" class="User" fetch="select">
        <column name="cust_user_id" length="32" />
     </many-to-one>
复制代码

最后在添加的页面中的input的name值应该填写: name="user.接收的名称"

就实现了双向关联处理外键问题


拓展


单向one-to-many是只能多方查询到一方,而一方查询不了关联在多方的信息。

双向many-to-many双向可以互相查询,两个表的类中都有外键属性,但是表中的外键还是在多方。

目录
相关文章
|
Java 关系型数据库 MySQL
JSP SSH公车拍卖系统myeclipse开发mysql数据库bs框架java编程网结构
JSP SSH公车拍卖系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发,系统主要采用B/S模式开发。
82 0
|
2月前
|
Java 数据库连接 数据库
让星星⭐月亮告诉你,SSH框架01、Spring概述
Spring是一个轻量级的Java开发框架,旨在简化企业级应用开发。它通过IoC(控制反转)和DI(依赖注入)降低组件间的耦合度,支持AOP(面向切面编程),简化事务管理和数据库操作,并能与多种第三方框架无缝集成,提供灵活的Web层支持,是开发高性能应用的理想选择。
40 1
|
6月前
|
监控 Java 网络安全
java获取ssh连接时报错com.jcraft.jsch.JSchException: Packet corrupt如何处理?
【6月更文挑战第5天】java获取ssh连接时报错com.jcraft.jsch.JSchException: Packet corrupt如何处理?
1079 5
|
6月前
|
网络安全 数据安全/隐私保护
分布式系统详解--框架(Hadoop-Ssh免密登陆配置)
分布式系统详解--框架(Hadoop-Ssh免密登陆配置)
68 0
|
7月前
|
Java 数据库连接 网络安全
SSH 组合框架模式小知识分享
【5月更文挑战第4天】SSH 组合框架模式小知识分享
51 0
|
7月前
|
前端开发 Java 网络安全
基于SSH框架甜品商城管理系统【源码+数据库】
基于SSH框架甜品商城管理系统【源码+数据库】
|
前端开发 Java 关系型数据库
JSP仓库进销存系统ssh框架mysql数据库myeclipse开发mvc结构java
JSP 仓库进销存系统(struts2+hibernate) 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。
59 0
|
Java 网络安全 Spring
SSH框架学习中遇到的问题
SSH框架学习中遇到的问题
55 0
|
Java 应用服务中间件 网络安全
【ssh系列一】——框架搭建
建立项目(SpringMVC+Spring+hibernate的maven项目)
|
设计模式 开发框架 缓存
SSH框架简介篇
SSH框架简介篇
423 0