src/main/java :主程序入口Application,可以通过直接运行该类来启动 Spring Boot 应用。
*
1创建时需要在com.example.demo项目下新建一个 domain 包 一般用来存放实体类
然后在该包下 新建实体类Company.class
*
知识点
1)@开头表示注解 但IDEA约定大于配置 所以也相当于声明(应该是这样)
// @Entity 声明这是一个实体类
//@Table(name = “company”) 表示要创建的表 叫company 一般与类名保持一致 IDEA 就会自动在mariaDB 里面进行配置 创建一个叫mariaDB的表
//因为已经再配置文件yml里面 配置好了 jap和 数据库(数据源)(类型是update 所以 在实体类中再次加入字段 跑一次之后 数据库也会跟新 但如果在实体类里面加了之后 再从
// 实体类中删掉 并不会把这个字段再删掉) 所以他会自动生成数据表
/**
公司实体类
*/
@Entity
@Table(name = “company”)
// @Entity 声明这是一个实体类
//@Table(name = “company”) 表示要创建的表 叫company 一般与类名保持一致 IDEA 就会自动在mariaDB 里面进行配置
//因为已经再配置文件yml里面 配置好了 数据库对应 和 类型(类型是update 所以 在实体类中再次加入字段 跑一次之后 数据库也会跟新 但如果在实体类里面加了之后 再从
// 实体类中删掉 并不会把这个字段再删掉) 所以他会自动生成数据表
// 导入包快捷键 alt+ Enter
public class Company {
@Id
// @Id 注解 表明此字段 为主键
@GeneratedValue(generator = “myuuid”)
// 这个是JPA的主键生成器注解 下面这个是hibernate 的主键生成器注解 因为Jpa并没有uuid主键生成策略 而Hibernate是Jpa的扩展
// 里面有丰富的主键生成策略 所以可以用Hibernate
@GenericGenerator(name = “myuuid”, strategy = “uuid”)
// myuuid 前后两个一定要保持一致 至于名字是什么 都无所谓 只要一致就可以 后面的uuid 必须得是uuid 表示是uuid主键类型
// uuid采用128位uuid算法生成主键 被编码为一个32位16进制数字的字符串 占用空间大(字符串类型)
// 也可以用identity 自增主键 虽然不能用到Oracle中,但MySQL和SQLServer 中很常用
@Column(length = 32)
// 表示下面的属性字段 和数据库字段一一对应
private String uuid;
// 如果只是单纯的 private String uuid 数据库表中 并不会出现与之一一对应的字段
@Column(length = 60)
private String comname;
@Column(name = “aa”,length = 120)
private String comaddress;
// 实体里面的属性是comaddress 对应到表里的字段名称 是aa 一般通用的做法是 不再单独命名字段的名称
@Column(length = 30)
private String comurl;
@Column(length = 30)
private String comtelephone;
@Column(columnDefinition = “char(7)”)
// 万能定义语句 直接按数据库里面定义类型输入即可
private String establishdate;
@Column
// 整型直接不用指定长度 直接注解跟数据库字段一一对应即可
private int employeenumber;
@Column(columnDefinition = “float(20,4) default’0.0000’”)
// 万能定义语句 直接按数据库里面定义类型输入即可 后面的是默认值这个必须得输入 因为浮点型 没有默认值报错
private float totaloutput;
@Column(columnDefinition = “text”)
private String comdesc;
@Column(columnDefinition = “char(4)”)
private String comstatus;
@Column(length = 20)
private String contactname;
@Column(columnDefinition = “char(11)”)
private String contactmobile;
@Column(length = 30)
private String contactemail;
//
IDENTITY自增列主键
// @Id
// // @Id 注解 表明此字段 为主键
// @GeneratedValue(strategy = GenerationType.IDENTITY)
用JPA生成器 标明主键类型是IDENTITY 因为IDENTITY 再Jpa里面就有 所以不用再调用Hibernate扩展
// @Column
表示下面的属性字段 和数据库字段一一对应 IDENTITY主键类型 int类型 直接表名即可 因为整型只有是三十二位的整型
// private int uuid
// 因为是实体类 所以还需要一件生成 get set 方法
// 右键 generate -》 set get … -》 然后 全部选中 点击生成
public String getUuid() {
return uuid;
}
public void setUuid(String uuid) {
this.uuid = uuid;
}
public String getComname() {
return comname;
}
public void setComname(String comname) {
this.comname = comname;
}
public String getComaddress() {
return comaddress;
}
public void setComaddress(String comaddress) {
this.comaddress = comaddress;
}
public String getComurl() {
return comurl;
}
public void setComurl(String comurl) {
this.comurl = comurl;
}
public String getComtelephone() {
return comtelephone;
}
public void setComtelephone(String comtelephone) {
this.comtelephone = comtelephone;
}
public String getEstablishdate() {
return establishdate;
}
public void setEstablishdate(String establishdate) {
this.establishdate = establishdate;
}
public int getEmployeenumber() {
return employeenumber;
}
public void setEmployeenumber(int employeenumber) {
this.employeenumber = employeenumber;
}
public float getTotaloutput() {
return totaloutput;
}
public void setTotaloutput(float totaloutput) {
this.totaloutput = totaloutput;
}
public String getComdesc() {
return comdesc;
}
public void setComdesc(String comdesc) {
this.comdesc = comdesc;
}
public String getComstatus() {
return comstatus;
}
public void setComstatus(String comstatus) {
this.comstatus = comstatus;
}
public String getContactname() {
return contactname;
}
public void setContactname(String contactname) {
this.contactname = contactname;
}
public String getContactmobile() {
return contactmobile;
}
public void setContactmobile(String contactmobile) {
this.contactmobile = contactmobile;
}
public String getContactemail() {
return contactemail;
}
public void setContactemail(String contactemail) {
this.contactemail = contactemail;
}