摘要:longtext是mysql中的一个大文本类型,那么在java中对应什么类型呢?

例如我们存储一个图片使用base64进行编码存储

表中的字段设计如下

1
2
`cardPic` longtext COLLATE utf8mb4_unicode_ci COMMENT '图片正面',
`cardPic1` longtext COLLATE utf8mb4_unicode_ci COMMENT '图片背面',

我这使用的是Hibernate所以直接注解映射了:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
@Entity
@Table(name="real_user")
public class RealUser {

@Id
@Column(name = "idCard", length = 45)
private String idCard;

/*身份证正面*/
@Lob @Basic(fetch=LAZY)
@Column(name = "cardPic")
private String cardPic;

/*身份证反面*/
@Lob
@Column(name = "cardPic1")
private String cardPic1;

//。。。。。。省略get set。。。。。。
}

@Basic(fetch=LAZY)

LAZY:定义数据可以被懒加载。

@Lob //声明属性对应的数据库字段为一个大文本类,文件属性也是用这个声明映射。