@TableName是MyBatis-Plus框架中的注解,用于标识实体类对应的数据库表名。这个注解通常与对象关系映射(ORM)框架一同使用,比如MyBatis或Hibernate。
当使用MyBatis-Plus时,查询使用的是通用接口,这些接口动态产生数据库的查询语句。如果不加@TableName注解,查询语句所查询的表名称与实体类名称一致,但有可能实体类名称与表名称是不一致的。此时,加上@TableName(value="表名")的话,查询语句查询的表名称就为value的值。
@TableName注解的主要作用是实现Java实体类型与数据库中的表之间的映射关系,尤其在表名与实体类名不一致或不符合命名规范时(如驼峰命名)非常有用。通过在类上添加@TableName注解并指定表名,ORM框架将会将该类与指定的数据库表进行映射。
在MyBatis-Plus中,@TableName注解可以帮助我们避免在映射文件中编写重复的表名,并提高代码的可读性和维护性。MyBatis-Plus的目标是简化开发,提高生产效率,并在项目中推广一种约定大于配置的开发理念。