给定一张Meber和Product表,得到如下信息:

1.获取一个用户访问的所有商品信息

2.获取一个商品被哪些用户浏览过的信息

package Mapping_transformation;

class Meber
{
private String name ;
private int age ;
private Product products[] ; //一个人浏览多个商品
public Meber(String name , int age)
{
this.name = name ;
this.age = age ;
}
public void setProducts(Product products[] )
{
this.products = products ;
}
public Product[] getProducts()
{
return products ;
}
public String getInfo()
{
return "【用户信息】姓名:"+this.name + "年龄:"+this.age ;
}
}
class Product
{
private String name ;
private double price ;
private Meber mebers[] ; //一个商品被多个人浏览
public Product(String name ,double price)
{
this.name = name ;
this.price = price ;
}
public String getInfo()
{
return "【商品信息】名称:"+this.name + "价格:"+this.price ;
} public void setMebers(Meber[] mebers) {
this.mebers = mebers;
} public Meber[] getMebers() {
return mebers;
}
}
public class Many_to_many {
public static void main(String[] args) {
//设置关系
Meber meberA = new Meber("小兔子",35); //设置两个用户
Meber meberB = new Meber("小白喵",20);
Product proA = new Product("c++从入门到放弃",50.00); //设置三个商品
Product proB = new Product("java从入门到放弃",49.00);
Product proC = new Product("C语言从入门到放弃",46.00);
meberA.setProducts(new Product[]{proA,proB}); //设置用户浏览过的商品
meberB.setProducts(new Product[]{proA,proC});
proA.setMebers(new Meber[]{meberA});
proB.setMebers(new Meber[]{meberA,meberB}); //设置商品被浏览的用户
proC.setMebers(new Meber[]{meberB});
//获取数据
System.out.println("-----------------根据用户查看浏览商品信息--------------------");
System.out.println(meberA.getInfo());
for(int i = 0 ; i<meberA.getProducts().length ;i++)
{
System.out.println("\t|-"+meberA.getProducts()[i].getInfo());
}
System.out.println("-----------------根据被浏览的商品查看用户--------------------");
System.out.println(proA.getInfo());
for(int i = 0 ; i< proA.getMebers().length ; i++)
{
System.out.println("\t|-"+proA.getMebers()[i].getInfo());
} }
}
result:
-----------------根据用户查看浏览商品信息--------------------
【用户信息】姓名:小兔子年龄:35
|-【商品信息】名称:c++从入门到放弃价格:50.0
|-【商品信息】名称:java从入门到放弃价格:49.0
-----------------根据被浏览的商品查看用户--------------------
【商品信息】名称:c++从入门到放弃价格:50.0
|-【用户信息】姓名:小兔子年龄:35

数据表与简单java类——多对多映射的更多相关文章

  1. 数据表与简单java类——一对多映射

    例如:给定一个分类表和子分类表 得到如下信息: 1.一个分类的完整信息: 2.根据分类获取其对应的子分类 package Mapping_transformation; class item { pr ...

  2. 数据表与简单java类映射转换

    简单的Java类的定义来源于数据表的结构, 例如:雇员信息表.部门信息表描述的就是雇员或部门的信息, 在实际的开发之中,数据表和简单java类之间的映射关系如下: 1. 数据实体表设计 = 类的定义: ...

  3. Java基础_0311: 数据表与简单Java类映射

    数据表与简单Java类映射 现在假设有如下的关系表,现在要求实现如下的数据关联操作: 一个部门有多个雇员: 一个雇员有一个或零个领导 代码实现 class Dept { private int dep ...

  4. 菜鸡的Java笔记 数据表与简单java类映射

    利用实际的数据表实现表与类的操作转换        简单java类是整个项目开发中的灵魂所在,它有自己严格的开发标准,而最为重要的是它需要于数据表是完全对应的        不过考虑到现在没有接触到过 ...

  5. java--分析简单java类与反射的联系

    分析简单java类与反射的联系 web对反射的操作支持 在JSP之中有一种技术--javaBean.而且在jsp里面也配套有相应的操作方式,javaBean的核心在于简单java类,于是下面演示此操作 ...

  6. Java基础_0305:简单Java类

    简单Java类 简单Java类是一种在实际开发之中使用最多的类的定义形式,在简单Java类中包含有类.对象.构造方法.private封装等核心概念的使用,而对于简单Java类首先给出如下的基本开发要求 ...

  7. JAVA基础学习之路(四)定义简单java类

    简单java类开发一般原则: 类名称必须有意义,再怎么说,要让人家看的明白吧 类之中所有属性必须使用private封装,并提供setter,getter方法 类之中可以有多个构造方法,但是必须保留有一 ...

  8. 进阶Java编程(10)反射与简单Java类

    1,传统属性自动赋值弊端 简单Java类主要由属性构成,并且提供有setter与getter类,同时简单Java类最大的特征就是通过对象保存相应的类属性的内容.但是如果使用传统的简单Java类开发,那 ...

  9. java反射(四)--反射与简单java类

    一.传统简单java类 简单的java类主要是由属性所组成,并且提供有相应的setter以及getter的处理方法,同时简单java类最大的特征就是通过对象保存相应的类的属性内容,但是如果使用传统的简 ...

随机推荐

  1. @ConditionalOnProperty注解

    一 源码解析 查看ConditionalOnProperty的源码 package org.springframework.boot.autoconfigure.condition; import j ...

  2. 百度语音合成---前端vue项目

    ☞:官方文档 ☞:网页示例 具体步骤: 1.通过 socket.io 接收后端传过来的数据. 2.判断是否在播放声音.  如果没有则直接获取百度 token 播放声音 3.如果有,则存入数组.声音播放 ...

  3. net core WebApi——使用xUnits来实现单元测试

    目录 前言 单元测试 xUnit 小结 附录 前言 从开始敲代码到现在,不停地都是在喊着记得做测试,记得自测,测试人员打回来扣你money之类的,刚开始因为心疼钱(当然还是为了代码质量),就老老实实自 ...

  4. 泛微ecology OA系统某接口存在数据库配置信息泄露漏洞

    2漏洞详情 攻击者可通过该漏洞页面直接获取到数据库配置信息,攻击者可通过访问存在漏洞的页面并解密从而获取数据库配置信息,如攻击者可直接访问数据库,则可直接获取用户数据,由于泛微e-cology默认数据 ...

  5. 解决本地无法访问vm虚拟机上centos7服务器中已配置好的hugo站点的问题

    一.配置VM网络连接 打开vm,找到"编辑",打开"虚拟网络编辑器" 选中下面截图中的上方为类型为"NAT模式"那一栏,然后点击下方的&qu ...

  6. 【Canvas真好玩】从黑客帝国开始

    前言 笔者之前有一段时间一直在学习Canvas相关的技术知识点,通过参考网上的一些资料文章,学着利用简单的数学和物理知识点实现了一些比较有趣的动画效果,最近刚好翻看到以前的代码,所以这次将这些代码实践 ...

  7. 【自然语言处理】利用LDA对希拉里邮件进行主题分析

    首先是读取数据集,并将csv中ExtractedBodyText为空的给去除掉 import pandas as pd import re import os dir_path=os.path.dir ...

  8. 网站搭建-IIS Windows系统搭建网站 (不小心看到自己的密码 - 怎么找回网站记住的密码)

    上一期说到IIS可以用自己喜欢的网站来直接玩,然后得得瑟瑟将自己的博客园账号首页拿过去玩(今天第一天水博客园). 然后自己访问啊,访问啊,然后就一直点啊点的,当然,其实后面的链接都是跳转到博客园里面去 ...

  9. PHP-PSR 现代PHPer的开发规范

    PSR是PHP Standards Recommendation的简称,意为PHP推荐标准.要想了解PSR,首先得知道制定这一标准的人/组织是谁————PHP-FIG. PHP-FIG PHP-FIG ...

  10. 资深架构师Sum的故事:正则!入门就是这样简单

    | 故事背景 职场如战场!Sum带领三个小队友用了两周,成功把代理功能给干出来了.如果说产品经理是最魔鬼的指挥官,那测试就是最魔鬼的教官.这两周,让Sum深深领略了什么是X市的日出. 不过话又说回来, ...