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

豆芽网站建设 优帮云网站建成后应该如何推广

豆芽网站建设 优帮云,网站建成后应该如何推广,天津注册公司优惠政策,秦皇岛网站制作哪个好MybatisPlus------常用注解以及设置统一前缀以及主键生成策略#xff08;六#xff09; 在使用MybatisPlus的过程中时#xff0c;实力类的Mapper继承BaseMapper#xff0c;此时不要添加TableName注解也能够对表数据实现增删改查。 // mybatispuls 提供了接口实现单表的增…MybatisPlus------常用注解以及设置统一前缀以及主键生成策略六 在使用MybatisPlus的过程中时实力类的Mapper继承BaseMapper此时不要添加TableName注解也能够对表数据实现增删改查。 // mybatispuls 提供了接口实现单表的增删改查 // 使用 Mapper public interface BaseProcedureMapper extends BaseMapperBaseProcedure {MapString,BaseProcedure selcetMapById(String id); }为什么不加TableName注解也能够对表进行增删改查 如果没写TableNameMybatisPlus会通过BaseMapper中传入的实体类对象根据驼峰转下划线的规则来匹配数据表。 比如BaseProcedure类会转义成base_procedure表 如果该表名或表面和实体类的关系不匹配就会报找不到这个表的异常 如果修改表名或者不符合驼峰转下划线的规则需要指定表名也建议最好指定表名 在实体类上加上TableName“表名”即可为实体类指定对应表。 Data TableName(base_procedure) public class BaseProcedure {// 默认使用雪花算法,对象ID需要使用 Long类型TableId(value id, type IdType.ASSIGN_UUID)private String id;private String procedureCode; 有时公司会统一设置表名为t_作为起始或者base_作为起始。 此时可以MybatisPlus可在配置文件中设置全局的统一的前缀这样TableName上就不用写统一的前缀 在application.yml文件中配置 mybatis-plus:## 设置log打印执行的SQL语句configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl## 设置mybatisplus的全局配置global-config:db-config:## 设置实体类所对应的表的统一前缀table-prefix: base_实体类进行修改 Data TableName(procedure) public class BaseProcedure {// 默认使用雪花算法,对象ID需要使用 Long类型TableId(value id, type IdType.ASSIGN_UUID)private String id;private String procedureCode;TableId 当主键不为id为uid时 在不写TableId时当主键为id时myabtisPlus也能够对表操作进行解析一旦不为id比如改为uid则会解析失败。 此时需要在uid属性上加上TableId注解指定该字段作为主键。 Data TableName(procedure) public class BaseProcedure {// 默认使用雪花算法,对象ID需要使用 Long类型// 将属性所对应的字段指定为主键TableId(type IdType.ASSIGN_UUID)private String uid;当属性为id但主键为uid时value TableId中有value属性能够指定当前属性对应数据库表中的哪个字段。 Data TableName(procedure) public class BaseProcedure {// 默认使用雪花算法,对象ID需要使用 Long类型// 将属性所对应的字段指定为主键TableId(value uid, type IdType.ASSIGN_UUID)private String id;TableId的type属性 type默认时雪花算法。 type IdType.AUTO 自动递增数据库必须设置id自增否则无效 type IdType.NONE 雪花算法生成ID type IdType.INPUT 用户输入ID type IdType.ASSIGN_ID 雪花算法适用于Number和String与数据库是否设置无关 type IdType.ASSIGN_UUID 生成UUID随机ID /*** 生成ID类型枚举类** author hubin* since 2015-11-10*/ Getter public enum IdType {/*** 数据库ID自增* p该类型请确保数据库设置了 ID自增 否则无效/p*/AUTO(0),/*** 该类型为未设置主键类型(注解里等于跟随全局,全局里约等于 INPUT)*/NONE(1),/*** 用户输入ID* p该类型可以通过自己注册自动填充插件进行填充/p*/INPUT(2),/* 以下2种类型、只有当插入对象ID 为空才自动填充。 *//*** 分配ID (主键类型为number或string,* 默认实现类 {link com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator}(雪花算法)** since 3.3.0*/ASSIGN_ID(3),/*** 分配UUID (主键类型为 string)* 默认实现类 {link com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator}(UUID.replace(-,))*/ASSIGN_UUID(4);private final int key;IdType(int key) {this.key key;} }如果自己在传参时传入ID那么配置的idtype就不会生效 通过全局配置主键生成策略 通过操作id-type属性。 mybatis-plus:## 设置log打印执行的SQL语句configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl## 设置mybatisplus的全局配置global-config:db-config:## 设置实体类所对应的表的统一前缀table-prefix: base_## 设置全局主键生成策略## id-type: assign_id## id-type: assign_uuid## id-type: auto## id-type: inputid-type: noneTableField 主键不一致时可以通过TableId注解。 mybatisplus会默认的将驼峰转换为下划线不需要额外配置。 TableField指定属性对应的字段名 Accessors(chain true) TableName(base_procedure) public class BaseProcedure {// 默认使用雪花算法,对象ID需要使用 Long类型// 将属性所对应的字段指定为主键TableId(value id, type IdType.ASSIGN_UUID)private String id;TableField(procedure_code)private String procedureCode;TableLogic逻辑删除 用于逻辑删除。 在是否生效字段上加上TableLogic这个字段就会用于逻辑删除。 Accessors(chain true) TableName(base_procedure) public class BaseProcedure {// 默认使用雪花算法,对象ID需要使用 Long类型// 将属性所对应的字段指定为主键TableId(value id, type IdType.ASSIGN_UUID)private String id;TableField(procedure_code)private String procedureCode;private String procedureName;//表示逻辑删除字段//是否生效标志TableLogicprivate Integer active;当执行delete语句时本质上并不会执行delete语句而是执行update语句 Testpublic void testDeleteByID(){//根据对象的id进行删除BaseProcedure baseProcedure new BaseProcedure();baseProcedure.setId(ef5397a26b7a469c6fe1de0e);int result baseProcedureMapper.deleteById(baseProcedure);System.out.println(result:{}result);}执行SQL看控制台打印 Preparing: UPDATE base_procedure SET active1 WHERE id? AND active0Parameters: ef5397a26b7a469c6fe1de0e(String)Updates: 0TableLogic 如不特殊注明默认生效为0失效为1.如果定义的相反需要特殊注明 TableLogic(value原值,delval改值)value 未删除的值默认值为0delval 删除后的值默认值为1修改注解 //表示逻辑删除字段//是否生效标志TableLogic(value 1,delval 0)private Integer active;执行删除语句查看执行SQL Preparing: UPDATE base_procedure SET active0 WHERE id? AND active1Parameters: ef5397a26b7a469c6fe1de0e(String)Updates: 1并且在执行maybatispuls框架所提供的数据库操作时会自动带上这个生效条件 Testpublic void testSelectList(){//会自带active 1ListBaseProcedure baseProceduress baseProcedureMapper.selectList(null);baseProceduress.forEach(System.out::println);//会自带active 1ListBaseProcedure baseProcedures baseProcedureMapper.selectList(new QueryWrapperBaseProcedure().eq(id,ef5397a26b7a469c6fe1de0e));baseProcedures.forEach(System.out::println);//不会自带active 1MapString, BaseProcedure result baseProcedureMapper.selcetMapById(ef5397a26b7a469c6fe1de0e);System.out.println(result);//会自带active 1Long aLong baseProcedureMapper.selectCount(new LambdaQueryWrapperBaseProcedure().eq(BaseProcedure::getId, ef5397a26b7a469c6fe1de0e));System.out.println(aLong);}如果是在mapperl.xml中自定义的SQL需要自己加上active1的生效条件否则不会生效
http://www.dnsts.com.cn/news/53573.html

相关文章:

  • 正规的南昌网站建设网页设计软件介绍
  • 网站底部浮动代码国家工商注册网
  • 南充做网站多少钱简单网站建设规划方案
  • 四川华泰建设集团网站百度收录不了网站吗
  • html5网站链接标签wordpress 点击排行
  • 端子东莞网站建设智能营销客户管理系统
  • 做视频网站推广挣钱吗广东专业网站优化公司
  • 网站设计简单网页百度搜索网站优化
  • 建设信用卡中心网站百度推送 wordpress
  • 做酒的网站托者设计吧官网
  • 永久免费建站空间推广普通话主题班会记录
  • 台州网站专业制作公司流程管理系统
  • 做网站策划遇到的问题软件开放和网站开发
  • 怎么做返利网之类的网站北京网络推广平台
  • cms网站地图模板如何做好网站内更新
  • 手机qq钓鱼网站怎么做临沂网站建设培训
  • 个人网站建设实验心得航佳网站建设
  • c 转网站开发国外的旅游网站做的如何
  • 公明 网站建设做钓鱼网站查处
  • 网站发外链达内教育学费价目表
  • 淮北市做网站最好的公司很多网站没有后台
  • 济南建设工程交易中心网站北京做招聘网站的公司
  • 用美图秀秀做网站图片家居网站关键词怎么做
  • 建站服务论坛精神文明建设网站专栏
  • 通州网站网站建设常见的网络营销方式有哪几种
  • 长沙模板建站源码html网页制作的软件下载
  • 视频网站架构网站站外推广方式有哪些
  • wordpress娃娃插件丹东seo排名公司
  • 福州网站维护公司北京移动端网站多少钱
  • 知识付费网站源码四川网站建设