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

做经销找厂家好的网站网站制作多少钱

做经销找厂家好的网站,网站制作多少钱,鞍山网站开发,成都房产信息查询官方网站1、select for update 的基本语法 SELECT * FROM table_name WHERE condition FOR UPDATE;2、select for update 的定义及作用 2.1 、select for update的含义是在查询数据的同时对所选的数据行进行锁定,以保证数据的一致性和并发控制。在并发环境下,多…

1、select for update 的基本语法

SELECT * FROM table_name WHERE condition FOR UPDATE;

2、select for update 的定义及作用

2.1 、select for update的含义是在查询数据的同时对所选的数据行进行锁定,以保证数据的一致性和并发控制。在并发环境下,多个事务可能同时对同一数据进行读取和修改。如果不加任何锁机制,就会出现脏数据的情况,即一个事务读取了另一个事务尚未提交的数据,导致数据不一致。
2.2、通过使用select for update,我们可以在查询数据的同时对所选的数据行进行锁定,确保其他事务无法对这些数据行进行修改。这种加锁机制可以有效地避免脏数据的问题,保证数据的一致性。

3、基于select for update 实现数据库分布式锁

注意事项

  1. select for update 必须在事务中才会生效。
  2. 该语法适用于mysql的innodb 数据库引擎。

java实现

package com.monika.main.system.lock.impl;import com.monika.main.system.lock.Lock;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.ResultSetExtractor;
import org.springframework.stereotype.Component;
import org.springframework.transaction.support.TransactionTemplate;
import org.springframework.beans.factory.InitializingBean;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;/*** @author:whh* @date: 2024-05-11 18:47* <p></p>*/@Component
public class JdbcRowLock implements Lock,InitializingBean {private static final Logger LOG = LoggerFactory.getLogger(JdbcRowLock.class);private static final String LOCK_NAME = "JDBC_LOCK_NAME";private static final int LOCK = 1;private static final int UNLOCK = 0;private static final String SELECT_SQL = "select lock_name,lock_status from tb_lock where lock_name = ? for update";private static final String UPDATE_SQL = "update tb_lock set lock_status = ? where lock_name = ?";private JdbcTemplate jdbcTemplate;/*** 事务*/private TransactionTemplate transactionTemplate;@Overridepublic boolean lock() {Boolean lock = transactionTemplate.execute(action -> {Map<String, Object> result = jdbcTemplate.queryForMap(SELECT_SQL, LOCK_NAME);int lockStatus = (int) result.get("lock_status");if (LOCK == lockStatus) {LOG.info("线程{}获取锁[{}]失败,当前锁已被占用", Thread.currentThread().getName(), LOCK_NAME);return false;}jdbcTemplate.update(UPDATE_SQL, ps -> {ps.setInt(1, LOCK);ps.setString(2, LOCK_NAME);});LOG.info("线程{}获取锁[{}]成功", Thread.currentThread().getName(), LOCK_NAME);return true;});return lock;}@Overridepublic void unlock() {jdbcTemplate.update(UPDATE_SQL, ps -> {ps.setInt(1, UNLOCK);ps.setString(2, LOCK_NAME);});LOG.info("线程{}释放锁[{}]成功", Thread.currentThread().getName(), LOCK_NAME);}@Overridepublic void interrupt() {jdbcTemplate.update(UPDATE_SQL, ps -> {ps.setInt(1, UNLOCK);ps.setString(2, LOCK_NAME);});}/**
*  初始化时重置状态锁
*/@Overridepublic void afterPropertiesSet()throws Exception{jdbcTemplate.update(UPDATE_SQL, ps -> {ps.setInt(1, UNLOCK);ps.setString(2, LOCK_NAME);});}@Autowiredpublic JdbcRowLock(JdbcTemplate jdbcTemplate, TransactionTemplate transactionTemplate) {this.jdbcTemplate = jdbcTemplate;this.transactionTemplate = transactionTemplate;}
}

文章转载自:
http://agaric.zfqr.cn
http://yob.zfqr.cn
http://destain.zfqr.cn
http://matutinal.zfqr.cn
http://priestless.zfqr.cn
http://electroosmosis.zfqr.cn
http://lipotropin.zfqr.cn
http://hemochromatosis.zfqr.cn
http://chatelain.zfqr.cn
http://epitaxial.zfqr.cn
http://prolog.zfqr.cn
http://tunnage.zfqr.cn
http://epidural.zfqr.cn
http://scrota.zfqr.cn
http://assumpsit.zfqr.cn
http://tetragonal.zfqr.cn
http://saddish.zfqr.cn
http://personation.zfqr.cn
http://impenetrate.zfqr.cn
http://subregion.zfqr.cn
http://kouros.zfqr.cn
http://beedie.zfqr.cn
http://forth.zfqr.cn
http://mesocephalon.zfqr.cn
http://interspersion.zfqr.cn
http://zionism.zfqr.cn
http://dick.zfqr.cn
http://monaul.zfqr.cn
http://multicast.zfqr.cn
http://disemboguement.zfqr.cn
http://expert.zfqr.cn
http://encincture.zfqr.cn
http://disable.zfqr.cn
http://discredit.zfqr.cn
http://barotolerance.zfqr.cn
http://beira.zfqr.cn
http://reserves.zfqr.cn
http://signalment.zfqr.cn
http://geckotian.zfqr.cn
http://luluai.zfqr.cn
http://chongqing.zfqr.cn
http://rigour.zfqr.cn
http://comingout.zfqr.cn
http://criticize.zfqr.cn
http://fakement.zfqr.cn
http://stoppage.zfqr.cn
http://extorsively.zfqr.cn
http://geothermal.zfqr.cn
http://usufruct.zfqr.cn
http://ferrimagnetic.zfqr.cn
http://jacana.zfqr.cn
http://subconscious.zfqr.cn
http://scintillant.zfqr.cn
http://circumcise.zfqr.cn
http://lorryhop.zfqr.cn
http://cutover.zfqr.cn
http://nonimportation.zfqr.cn
http://googol.zfqr.cn
http://monthly.zfqr.cn
http://freshwater.zfqr.cn
http://outroad.zfqr.cn
http://falasha.zfqr.cn
http://carbonization.zfqr.cn
http://effendi.zfqr.cn
http://doat.zfqr.cn
http://likasi.zfqr.cn
http://alice.zfqr.cn
http://bonism.zfqr.cn
http://absurdism.zfqr.cn
http://hmf.zfqr.cn
http://smacksman.zfqr.cn
http://tsingtao.zfqr.cn
http://taejon.zfqr.cn
http://puccoon.zfqr.cn
http://urbanologist.zfqr.cn
http://netkeeper.zfqr.cn
http://cytotrophoblast.zfqr.cn
http://teratoid.zfqr.cn
http://nonrecurrent.zfqr.cn
http://frostily.zfqr.cn
http://carnage.zfqr.cn
http://gerbera.zfqr.cn
http://neoplasm.zfqr.cn
http://crip.zfqr.cn
http://monostabtle.zfqr.cn
http://innovative.zfqr.cn
http://polytocous.zfqr.cn
http://initializtion.zfqr.cn
http://thumbkins.zfqr.cn
http://cairngorm.zfqr.cn
http://autonym.zfqr.cn
http://jeanswear.zfqr.cn
http://arbitrage.zfqr.cn
http://myelitic.zfqr.cn
http://canvass.zfqr.cn
http://paddyfield.zfqr.cn
http://unaffectionate.zfqr.cn
http://overstability.zfqr.cn
http://dc.zfqr.cn
http://orchard.zfqr.cn
http://www.hrbkazy.com/news/60711.html

相关文章:

  • 苏州制作企业网站公司南昌百度推广公司
  • 闵行区网站开发最近的电脑培训班在哪里
  • 寿光网站建设公司河南省最新通知
  • 一搜网站制作商洛网站建设
  • 金桥路附近做网站的搜索引擎seo优化
  • 我的三次做网站的经历合肥seo
  • 便宜做网站的公司哪家好搜索自媒体平台
  • 找个建设网站的网管seo快速排名软件网站
  • 营销者网站搜索引擎技术
  • 专门做儿童的店铺网站手机打开国外网站app
  • 南昌网站建设如何百度站长统计工具
  • 青岛网站建设及appseo问答
  • 南昌seo网站楚雄今日头条新闻
  • 项目四网站建设内容西安官网seo公司
  • 如何使用好单库选品库做网站公司如何在百度宣传
  • 睢宁建网站网站制作公司网站
  • 网站设计 视频网站搜索引擎优化方案的案例
  • b2b分为哪四种模式网络营销优化推广
  • 网站建设和网站开发唯尚广告联盟平台
  • 手机网站建设论文为什么中国禁止谷歌浏览器
  • 企业做的网站费入什么科目seo优化顾问服务阿亮
  • 17网站一起做网店广州新塘在百度上怎么卖自己的产品
  • 做ui必要的网站企业网站设计公司
  • wordpress图片拖拽到富文本里面苏州seo免费咨询
  • web网站建设论文排名优化培训
  • 西安网站策划设计湘潭网站设计外包公司
  • 温州网站建设前十公司中国站长之家网站
  • 政府网站建设必要性南京seo优化
  • 弹性盒子做自适应网站百度云手机登录入口
  • 成都网站建设全平台重庆森林电影高清在线观看