我在mysql数据库中有一个表,其列名为“name”。我希望每当任何查询来存储这个列中的name时,name的长度都应该大于2并且<=100。
名字只能以字母开头。
我不想检查数据库表。我想把这张支票放在密码里。
@Entity
@Table(name = "member")
public class Member implements Serializable{
private static final long serialVersionUID = 9045098179799205444L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
Long id;
@Column(name = "name")
String name;
@Column(name = "email")
String email;
}
3条答案
按热度按时间bsxbgnwa1#
whhtz7ly2#
有bean验证注解,比如@size和@pattern。您可以用它们注解所需的字段。下面是这些注解的列表。
3ks5zfa03#
我不想检查数据库表。我想把这张支票放在密码里。
编辑:这篇文章是为那些不想使用注解的人写的,如果你认为实体是“datatable”。如果您想使用注解,那么使用下面的正则表达式
@Pattern
注解如果不想将其存储在数据库中,则需要在pojo上方的服务层或模型成员类内部处理。这取决于您对pojo/dto的看法,不管有没有业务逻辑。
支票本身很简单
此模式检查字符串是否以字母字符开头,字母字符后是否至少还有2个字符,第一个字符后最多99个字符。