Java实体类中封装其他实体类并引用

在Java开发过程中有很多情况是二个表及以上的联合操作,这是需要分清楚表的主次关系。在引用的时候有人会把二个表的数据全都封装在一个实体类中,然后在对这个实体类进行操作,但如果是三个表呢?四个表呢?还都封装在一个实体类吗?这样被封装的实体类的数据是不是太多了呢?而且也会照成层次不分,大大的抬高了代码的耦合性。和实体类泛滥的情况。下面开始介绍该如何正确的封装实体类

第一个实体类

public class UsersLogin {
    private Integer usersId;
    private String usersName;
    private String pass;
    private int flag;
    //省略Getter和Setter
    }

第二个实体类

public class Shoopping {
    private Integer shoopId;
    private String goodsName;
    private Double price;
    private String address;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date produceDate;
    private String picture;
    private String categoryName;
    private int num;
    private int flag;
    //引用第一个表的实体对象
    private UsersLogin usersLogin;
    //省略Getter和Setter
    }

使用

    <insert id="insertShoopping" parameterType="com.aaa.entity.Shoopping">
        insert into shoopping(goodsName,price,address,produceDate,picture,categoryName,num,flag,usersId)
        values(#{goodsName},#{price},#{address},#{produceDate},#{picture},#{categoryName},
#{num},#{flag},#{usersLogin.usersId})
    </insert>

使用的时候不管是html页面还是myBatisd的xml文件中都可以通过usersLogin.usersId的这种形式来使用。

发布了22 篇原创文章 · 获赞 2 · 访问量 1138

猜你喜欢

转载自blog.csdn.net/javaasd/article/details/105166580