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

南通网站建设公司seo兼职平台

南通网站建设公司,seo兼职平台,东阳市建设规划局网站,应用软件是指什么TableName(“表名”) 假设 表名是 book,实体类类名是 Book MyBatisPlus会进行自动映射 但如果 表名是 tab_book,实体类类名是 Book 那么MyBatisPlus就无法进行自动映射,需要我们使用 TableName注解 去指定实体类对应的表 如下 TableNa…

@TableName(“表名”)

假设

表名是 book,实体类类名是 Book

MyBatisPlus会进行自动映射

但如果 表名是 tab_book,实体类类名是 Book

那么MyBatisPlus就无法进行自动映射,需要我们使用 @TableName注解 去指定实体类对应的表

如下

@TableName("tab_book")
@Data
public class Book {private Integer id;private String name;private String type;private String description;
}

@TableId()

查看@TableId 注解源码,如下

@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD, ElementType.ANNOTATION_TYPE})
public @interface TableId {String value() default "";IdType type() default IdType.NONE;
}

我们发现有两个属性 value 和 type

其中的 type 用于指定Id的生成策略,我再另外一篇博客进行了非常详细的整理,地址如下:

MyBatisPlus之id生成策略

value的作用类似@TableName,当 实体类的 主键 属性名 与 数据表 中的 主键 字段名不同时,就通过value做映射,如下<表中的字段名为 uid >

@TableName("tab_book")
@Data
public class Book {@TableId(value = "uid")private Integer id;private String name;private String type;private String description;
}

如果属性名为value,则value可以不显式指明

    @TableId("uid")private Integer id;

@TableField

实体类的 主键 属性名 与 数据表 中的 主键 字段名不同时,通过 @TableId() 中的value属性做映射

那实体类的 非主键 属性名 与 数据表 中的 非主键 字段名不同时,就使用 @TableField

比如:实体类属性名为name,而表中字段名为book_name,那么就需要做如下映射

@TableName("tab_book")
@Data
public class Book {@TableId(value = "uid")private Integer id;@TableField("book_name")private String name;private String type;private String description;
}

但是 如果实体类属性名为bookName,而表中字段名为book_name,那么我们就无需再指定,MyBatisPlus 能自动处理这种映射

@TableLogic

真实删除 – 使用 delete语句 将数据库中的记录直接删除,但是这种做法是十分危险的,因此开发中的删除一般是逻辑删除

逻辑删除 – 使用一个删除标记字段,如 is_deleted ,初始值为0,置为 1 为逻辑上删除

因此逻辑删除实际上是修改功能

那如何使用呢?

首先在表中添加 is_deleted 字段,类型为int ,长度为1,默认值为 0

在实体类中添加 isDeleted 属性,然后在该属性上添加 @TableLogic 注解,如下

@TableName("tab_book")
@Data
public class Book {@TableId(value = "uid")private Integer id;@TableField("book_name")private String name;private String type;private String description;@TableLogicprivate Integer isDeleted;
}

运行删除方法

    @Testvoid testGetById() {bookService.removeById(1);}

查看日志

JDBC Connection [HikariProxyConnection@1430358188 wrapping com.mysql.cj.jdbc.ConnectionImpl@1f43cab7] will not be managed by Spring
==>  Preparing: UPDATE tab_book SET is_deleted=1 WHERE id=? AND is_deleted=0
==> Parameters: 1(Integer)
<==    Updates: 1
Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@21a9a705]

发现是update ,并且是将 is_deleted 字段由 0 变 1

http://www.hkea.cn/news/481269/

相关文章:

  • 淄博网站建设方案网络推广是做什么的
  • 网站建设销售工作职责seo平台怎么样
  • 免费的网站给一个百度seo优化服务项目
  • 现代广告创意设计郑州百度网站优化排名
  • 兰州网站建设哪家专业谷歌seo网站推广
  • 崇信门户网站留言回复上优化seo
  • 网站建设费用有哪些站长工具搜索
  • 云主机能干什么独立站seo怎么做
  • 苏州专业网站建设设计公司免费发布推广信息的b2b
  • 空间 两个网站网络推广培训班
  • 零基础学做网站推广公司简介
  • 公司做网站最好引擎搜索器
  • 济南手工网站建设北京百度seo服务
  • 网站建设原创百度seo官网
  • 徐州企业网站建设衡阳seo服务
  • 网站自然排名优化seo专员是什么职业
  • 视频网站制作广告代理公司
  • wordpress主题域名授权密钥生成镇海seo关键词优化费用
  • 北京东直门+网站建设汕头seo外包平台
  • 长沙 做网站企业网络组网设计
  • 北京哪家做网站优化产品seo基础优化
  • 招商加盟网站建设百度网址安全检测
  • 知名做网站费用2024年将爆发新瘟疫
  • 河北省城乡与建设厅网站企业关键词排名优化哪家好
  • 网站开发合同协议百度百科推广费用
  • 推荐黄的网站产品推广策划
  • 济南网站建设设计公司线上运营推广
  • 小清新 wordpressseo排名是什么意思
  • 从客户—管理者为某一公司做一份电子商务网站管理与维护的方案自媒体是如何赚钱的
  • 黑龙江住房和城乡建设厅网站首页每日精选12条新闻