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

网页设计网站名称seo外链建设的方法

网页设计网站名称,seo外链建设的方法,西安建设工程信息网官网入口,滨州注册公司1. IKeyGenerator主键生成 内置实现类,缺少mysql,因为mysql不支持序列,只能通过表模拟序列 H2KeyGenerator PostgreKeyGenerator KingbaseKeyGenerator 人大金仓的KES数据库 DB2KeyGenerator OracleKeyGenerator2. 新建表模拟序列 CREATE T…

1. IKeyGenerator主键生成

内置实现类,缺少mysql,因为mysql不支持序列,只能通过表模拟序列
H2KeyGenerator
PostgreKeyGenerator
KingbaseKeyGenerator	人大金仓的KES数据库
DB2KeyGenerator
OracleKeyGenerator

2. 新建表模拟序列

CREATE TABLE `dual_sequence` (`sequence_key` varchar(100) NOT NULL COMMENT '序列key(主键)',`step` int NOT NULL DEFAULT '1' COMMENT '步长',`start_value` bigint NOT NULL DEFAULT '0' COMMENT '开始值',`end_value` bigint DEFAULT NULL COMMENT '结束值',`ver` int DEFAULT NULL COMMENT '版本号',PRIMARY KEY (`sequence_key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='临时序列表 '--添加一条记录
INSERT INTO dual_sequence
(sequence_key, step, start_value, end_value, ver)
VALUES('next.dbid', 1, 0, NULL, 0);

3.代码实现

MysqlKeyGenerator类

package com.yl.mybatisplus.plugin;import com.baomidou.mybatisplus.core.incrementer.IKeyGenerator;
import com.yl.mybatisplus.mp.entity.DualSequence;
import com.yl.mybatisplus.mp.mapper.DualSequenceMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;@Component
public class MysqlKeyGenerator implements IKeyGenerator {@Autowiredprivate DualSequenceMapper dualNextMapper;/*** 执行sql** @param incrementerName 序列名称(对应类上注解 {@link KeySequence#value()} 的值)* @return*/@Overridepublic String executeSql(String incrementerName) {// 先查询悲观锁,再修改乐观锁 保证查询的是最新的,如果更新失败,再次获取最新的DualSequence dualSequence = dualNextMapper.selectById("next.dbid");Long startValue = dualSequence.getStartValue();int number = dualNextMapper.updateById(dualSequence);//如果更新失败,再次执行查询获取最新的if (number == 0) {return executeSql(incrementerName);}//更新后的是最新的起始值作为idreturn String.valueOf(startValue+dualSequence.getStep());}
}

其他类

package com.yl.mybatisplus.mp.entity;import lombok.Data;/*** 临时序列** @author liuxubo* @date 2023/8/10 10:27*/
@Data
public class DualSequence {private String sequenceKey;private Integer step;private Long startValue;private Long endValue;private Long ver;
}package com.yl.mybatisplus.mp.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yl.mybatisplus.mp.entity.DualSequence;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;/*** <p>* 临时序列表 Mapper 接口* </p>** @author admin* @since 2021-03-27*/
@Mapper
public interface DualSequenceMapper extends BaseMapper<DualSequence> {/*** 使用悲观锁,防止查询时,其他线程修改** @param sequenceKey* @return*/@Select("select * from dual_sequence where sequence_key=#{sequenceKey} for update")DualSequence selectById(String sequenceKey);/*** 使用版本号修改** @param dualSequence 临时序列* @return*/@Update("update dual_sequence set start_value=start_value+step, ver=ver+1 where sequence_key=#{sequenceKey} and ver=#{ver}")int updateById(DualSequence dualSequence);
}
package com.yl.mybatisplus.mp.controller;import com.yl.mybatisplus.plugin.MysqlKeyGenerator;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;/*** 临时序列** @author liuxubo* @date 2023/8/10 10:54*/
@RestController
@RequestMapping("/sequence")
public class DualSequenceController {@Autowiredprivate MysqlKeyGenerator mysqlKeyGenerator;@GetMapping("/nextId")public String nextId(){return mysqlKeyGenerator.executeSql(null);}}
http://www.tj-hxxt.cn/news/26662.html

相关文章:

  • 网站一般要设计几页艾滋病多长时间能查出来
  • 郑州做网站优化小学生关键词大全
  • 百度推广关键词价格查询无锡seo公司找哪家好
  • 西宁电商网站制作公司百度号码认证平台取消标记
  • 营销型网站建设哪里有站长友情链接
  • 用织梦同时做两个网站推广网站的公司
  • 商品网站开发需求表排名nba
  • 1688批发网官网登封seo公司
  • php网站开发图文教程专业seo网络营销公司
  • 软件开发具体流程克州seo整站排名
  • 网站建设详细工作汇报班级优化大师网页版
  • 网站建设 系统维护海外推广营销系统
  • 做电影网站收入点金推广优化公司
  • 网站建设里怎么写文章竞价推广是做什么的
  • 网站优化关键词排名怎么做最吸引人的营销广告词
  • 东宁网站制作p2p万能搜索种子
  • 网盘可以做网站空间吗域名收录提交入口
  • 深圳 网站建设公广州seo推广
  • 政府网站建设 会议湖北seo关键词排名优化软件
  • 做网站用什么数据库品牌策划方案怎么做
  • 百度站长网站规则改版seo推广如何做
  • wordpress文章迁移seo公司 杭州
  • 做电子书的网站很有名后来被关闭了百度健康
  • 网站备案哪个部门百度排名怎么做
  • 网页设计实验报告实验步骤盐城seo排名
  • 教育品牌加盟网站建设新浪体育最新消息
  • 求职网站开发开题报告产品宣传
  • 做网站如何快速推广一款产品百度快速排名优化工具
  • 中企动力做的电梯网站seo视频教程百度网盘
  • 工艺品网站设计站长工具官网