当前位置: 首页 > article >正文

Entity实体设计

Entity实体设计

💡用来和数据库中的表对应,解决的是数据格式在Java和数据库间的转换。

(一)设计思想

数据库Java
对象
字段(列)属性

(二)实体Entity编程

编码规范

💡Java中将所有数据库的数据,使用Java对象进行表示。

  • ① 通常一张表对应一个实体,命名规范:表名t_person,实体类名Person

  • ② 实体类必须实现Serializable

  • ③ 表中的一个字段,对应实体的一个属性。实体属性必须使用包装类型。封装并提供set和get方法。

  • ④ 必须手动提供无参构造方法(必须),如果需要也可以提供有参构造方法(非必要)

  • ⑤ 代码要放在entity包下

示例1:

  • MySQL库表

create table t_person(
    person_id int primary key auto_increment,
    person_name varchar(20) not null,
    age tinyint,
    sex varchar(6),
    mobile varchar(20),
    address varchar(50)
);
  • 实体类

package com.xx.entity;
//1. 实体类,实现序列化
public class Person implements Serializable{
    // 2. 属性
    private Integer personId;
    private String personName;
    private Integer age;
    private String sex;
    private String mobile;
    private String address;
    // 3. 无参构造方法+有参构造方法(可选)
    public Person(){}
    // 4. get和set方法
    public Integer getPersonId(){return personId;}
    public void setPersonId(Integer personId){this.personId = personId;}
    public String getPersonName(){return personName;}
    public void setPersonName(String personName){this.personName = personName;}
    public Integer getAge(){return age;}
    public void setAge(Integer age){this.age = age;}
    public String getSex(){return sex;}
    public void setSex(String sex){this.sex = sex;}
    public String getMobile(){return mobile;}
    public void setMobile(String mobile){this.mobile = mobile;}
    public String getAddress(){return address;}
    public void setAddress(String address){this.address = address;}
}
​

补充:

事实上JdbcTemplate的RowMapper的结果集映射对象,就是ORM思想的应用。

示例2:

  • MySQL库表

    create table t_account(
        account_id int primary key auto_increment,
        account_name varchar(20) not null unique,
        account_password varchar(20) not null,
        balance decimal(10,1)
    )

  • 实体类

     

http://www.kler.cn/a/226679.html

相关文章:

  • 【数据结构与算法】二叉树前序,中序,后序遍历非递归版。Leetcode接口
  • 基于 Echarts 的 Python 图表库:Pyecahrts交互式的日历图和3D柱状图
  • 【极简】conda同一个服务器上迁移环境 export / create
  • Spring事件之注解@EventListener讲解
  • 空间数据分析入门POI与莫兰指数基础知识笔记
  • LeetCode 每日一题Day 54 - 61
  • ElementUI Form:Radio 单选框
  • RT-Thread线程管理(使用篇)
  • gRPC使用详解
  • 一文速学-selenium高阶操作连接已存在浏览器
  • Unity项目从built-in升级到URP(包含早期版本和2023版本)
  • 爱上算法:每日算法(24-2月2号)
  • 小程序 自定义组件和生命周期
  • Vue组件通信讲解[父子组件通信]
  • docker-学习-2
  • 第七篇:node中间件详解
  • 猫用空气净化器好吗?好用的养猫宠物空气净化器品牌推荐
  • MySQL语句 |条件语句 IFNULL 和 COALESCE 的区别
  • npm 淘宝镜像正式到期,更新使用成功
  • 新站长工具箱,站长在线工具,php常用工具集合源码