mybatis缓存

mybatis缓存有一级缓存和二级缓存,mybatis为什么会采用两种缓存机制呢?让我们带着问题进入今天的主题吧。

mybatis 一级缓存

mybatis缓存在执行相同的SQL和相同的参数时,不会去数据库中重复调用,只需要从缓存中取出来即可,只要保持在同一会话和其它相关的条件下,我们的多求请求实际只调用了一次,可以大大节省查询数据的开销。但在我们实际开发中,一级缓存使用的频率较低, 为什么呢?
一级缓存只存在于当前会话中, 如果脱离了当前会话将不可以使用,但我们常搭配spring来使用mybaits,但spring中每 条sq|语句处于单独的事务中,执行成功后默认就提交了事务并且关闭了会话。

小知识:我们之前有提到一个会话中有且只存在一 个事务, 所以spring在使用mybatis时默认每次都会重新开启一个新的会话,但如果我们给语言加上一 个事务@Transactional, 就可以使用事务了。

解读一级缓存

一级缓存的逻辑在BaseExecutor里面完成的,主要逻辑如下:

//源码位为BaseExecutor 140行
public <E> List<E> query(MappedStatement ms, Object parameter, RowBounds rowBounds, ResultHandler resultHandler, CacheKey key, BoundSql boundSql) throws SQLException {ErrorContext.instance().resource(ms.getResource()).activity("executing a query").object(ms.getId());if (closed) {throw new ExecutorException("Executor was closed.");}//flushCache 设置判断是不是需要清除缓存,这个参数可以设置//queryStack =0 时没有递归调用if (queryStack == 0 && ms.isFlushCacheRequired()) {clearLocalCache();}List<E> list;try {//防止调用时会被清空,这样递归调用到上面的时候就不会再清局部缓存了queryStack++;//先根据cachekey从localCache去查,如果设置了结果处理器同样不会使用一级缓存list = resultHandler == null ? (List<E>) localCache.getObject(key) : null;if (list != null) {//若在缓存列表中找到有对应的缓存,处理localOutputParameterCachehandleLocallyCachedOutputParameters(ms, key, parameter, boundSql);} else {//未命中缓存时从数据库中寻找list = queryFromDatabase(ms, parameter, rowBounds, resultHandler, key, boundSql);}} finally {queryStack--;}if (queryStack == 0) {//延迟加载队列中所有元素for (DeferredLoad deferredLoad : deferredLoads) {deferredLoad.load();}//清空延迟加载队列// issue #601deferredLoads.clear();if (configuration.getLocalCacheScope() == LocalCacheScope.STATEMENT) {// issue #482//缓存作用域如果是STATEMENT,由清除一级缓存和参数缓存clearLocalCache();}}return list;}

一级缓存的命中场景

运行时必要条件:

1.必须必在同一个会话
2.SQL语句、参数必须相同
3.相同的statementId
4.RowBounds 相同(即添加的分页属性)

    // 1.sql 和参数必须相同// 2.必须是相同的statementID// 3.sqlSession必须一样 (会话级缓存)// 4.RowBounds 返回行范围必须相同@Testpublic void test1(){UserMapper mapper = sqlSession.getMapper(UserMapper.class);// com.toto.UserMapper.selectByidUser user = mapper.selectByid(1);RowBounds rowbound=RowBounds.DEFAULT;//selectOne最终的底层调用的也是selectList,因为statementID、sqlSession、rowbound、sql和参数一样,所以一级缓存可用List user1 = sqlSession.selectList("com.toto.UserMapper.selectByid", 1,rowbound);System.out.println(user == user1.get(0));}

输出结果:
Preparing: select * from db_user where id=?
Parameters: 1(Integer)
Columns: id, name, password, status, nickname, createTime
Row: 1, admin, admin, 1, 管理员大哥, 2016-08-07 14:07:10
Total: 1
Cache Hit Ratio [com.toto.UserMapper]: 0.0
true

操作与配置相关条件:

1.未提交、回滚当前事务,这相当于手动清空缓存
2.未配置flushCache = true,默认default,如果配置true上面代码就会删除缓存,下面有图例
3.未执行update
4.缓存作用域不是STATEMENT

    // 1.未手清空// 2.未调用 flushCache=true的查询// 3.未执行Update// 4.缓存作用域不是 STATEMENT-->@Testpublic void test2(){// 会话生命周期是很短暂的UserMapper mapper = sqlSession.getMapper(UserMapper.class);User user = mapper.selectByid3(1);sqlSession.commit();// 这会调用clearCache()sqlSession.rollback();// 这会调用clearCache()
//        mapper.setNickName(1,"管理员小弟");// 修改时也会 clearCache()User user1 = mapper.selectByid3(1);// 数据一致性问题System.out.println(user == user1);}

在这里插入图片描述

一级缓存源码解析

我先发我整理的图运行流程图(太丑勿喷,能看就行):
在这里插入图片描述
我跟着流程把关键代码走读一下(多图警告):
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Spring与Mybatis一级缓存不得不说的事

前面我有提到增加事务就能使用Mybatis的事务,这是为什么呢?
让我们带速读一下流程吧
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

    @Testpublic void testBySpring(){ClassPathXmlApplicationContext context=new ClassPathXmlApplicationContext("spring.xml");UserMapper mapper = context.getBean(UserMapper.class);//动态代理                             动态代理                       MyBatis// mapper ->SqlSessionTemplate --> SqlSessionInterceptor-->SqlSessionFactoryDataSourceTransactionManager transactionManager =(DataSourceTransactionManager) context.getBean("txManager");// 手动开启事物TransactionStatus status = transactionManager.getTransaction(new DefaultTransactionDefinition());User user = mapper.selectByid(1); // 每次都会构造一个新会话 发起调用
// 每次都会构造一个新会话 发起调用,但开启事物后原会话没被关闭,仍使用同一个事务,即可使用一级缓存User user1 =mapper.selectByid(1);System.out.println(user == user1);}

总结

1.与会话密切相关,相同会话才能触发
2.参数条件相关,包括分页属性也是参数的条件,还有参数及其相关配置项
3.提交回滚,修改都会清空
MyBatis 对于其 Key 的生成采取规则为:[mappedStementId + offset + limit + SQL + queryParams + environment]生成一个哈希码。所以参数条件很重要

Mybatis 二级缓存

应用级缓存,可以跨线程使用,一般应用于修改情况比较少的表做查询缓存,并且查询时优先于一级缓存,搭配使用时攻防兼备。

完整的解决方案

1.内存存储: 实现简单,速度比较快,但不能持久化,并且容量比较有限
2.存到硬盘:可以持久化,容量较大,但访问速度没内存快
3.分布式存储:分布式场景存到单硬盘/内存服务器存储缓存会造成一些通病问题,可以使用redis来进行缓存,这也是分布式场景的解决方法之一。

缓存溢出淘汰机制

当容量满的了时候我们就会对缓存进行清除,清除的算法的就是溢出淘汰机制
常见的算法有:

1.FIFO:先进先出算法
2.LRU:最近最少使用
3.WeakReference:弱引用
将缓存对象进行弱引用包装,当Java进行gc的时候, 不论当前的内存空间是否足够,这个对象都会被回收
4.SoftReference:软引用
与弱引用类似,不同在于只有当空间不足时GC才回收软引用对象

缓存线程的安全问题

我们要保证二级缓存被其它线程使用,为了保证线程写和读的安全,当拿到缓存数据后,可以对它进行修改而不能影响原缓存数据, 通常采取的是序列化缓存对象然后进行深拷贝操作。所以这要求我们要缓存的实体类必须序列化(实现Serializable) ,不然会出现不能序列化的BUG.

小知识:我们常使用的存储类型基本都实现了Srializable方法,例如: hashmap,arraylist,String …

Mybatis二级缓存解决方案

mybaits是怎么实现它的二级缓存的解决方案呢?

mybaits使用的是责任链的解决方案,首先它定义了缓存中的一些最基本的公用方法,全部定义到Cache的类里面, 这些功能包括设置缓存,获取缓存,清除缓存,获取缓存数量,然后我们上述的所有功能都会对应一个组件类,并基于装饰者模式责任链的模式,将各个组件进行串连。在执行缓存的基本功能时,其它的缓存通过责任链来依次往下传递。
那它的设计模式有哪些优点呢?

职责单一,各个节点只负责自己的逻辑, 不关心其它逻辑
扩展性强,可根据需要扩展节点,删除节点还可以调换顺序,保证了灵活性
松耦合,各节点之间不仅没有强制依赖其它节点,而是通过顶层的Cache接口进行间接依赖

在这里插入图片描述
详细介绍每个缓存对应的功能篇幅较长,后面挖坑再更,mybatis提供的一些cache在org.apache.ibatis.cache包下,其中一级缓存使用的impl下的,二级缓存使用的是decorators包下的。

二级缓存开启条件

二级缓存不像一级缓存一样会默认开启,我们可以通过@CacheNamespace或为指定Mappedstatement做声明。声明后该缓存为该Mapper所独有, 其它未设置的不能便用。但如果需要多个mapper用同一个缓存空间,我们可以通过@CacheNamespaceRef来进行引用到同一个缓存空间。
如果是xml,可以通过标签来添加对此mapper进行级缓存,同理使用可以引用到同一个缓存会话空间。
下面介绍一下我们使用缓存时可以配置的相关参数:

配置名 配置描述
implementation 指定缓存的存储实现类默认是用PerpetualCache的HashMap存储在内存当中
eviction 指定缓存溢出淘汰实现类,默认LRU,清除最近最少使用
flushInterval 设置缓存定时全部清空时间,默认不清空。清空策略是到时间整体清空而不是为某个值清空
size 指定缓存容量,超出后会按eviction所指定的算法进行淘汰
readWith tue通过序列化复制来保证缓存对象是可读与的,默认true, false则多线程操作同个对象
blocking 为每个key的访问添加了阻塞锁,可以有效防止缓存击穿
properties 为上述组件,配置额外参数,key对应组件中的字段名

如:

@CacheNamespace(implementation = MybatisRedisCache.class,eviction = FifoCache.class)
 <cache type="com.toto.MybatisRedisCache"><property name="eviction" value="LRU" /><property name="size" value="1024" /><property name="readOnly" value="false" /></cache>

二级缓存命中条件

二级缓存和一级缓存命中差不多,但必须要提交会话,并且可以不同会话,下面列举了命中条件

1.会话提交
2.SQL语句和参数相同
3.相同的StatementId
4.RowBounds相同

为什么二级缓存一定需要提交事务呢,我画一张图来表示吧:
在这里插入图片描述
如果会话不提交,则会出现脏读,为了避免这种事情发生,所以必须先提交才能获取二级缓存,包括对缓存的清空,也必须是会话正常提交之后才生效。 那如果没提交,是不是存在一个临时存储区域呢?

二级缓存结构

为了实现会话提交之后才变更二级缓存,MyBatis为每个会话设立了若干个暂存区,当前会话对指定缓存空间的变更,都存放在对应的暂存区,当会话提交之后才会提交到每个暂存区对应的缓存空间。为了统一管理这些暂存区,每个会话都一个唯一的事物缓存管理器,所以这里暂存区也可叫做事物缓存。
如图:
在这里插入图片描述
我画了一张两个会话情景下事物缓存和暂存区的图:
在这里插入图片描述

二级缓存执行流程

原本会话是通过执行器来实现SQL调用,这里是基于装饰器模式使用CachingExecutor对SQL调用逻辑进行拦截,然后嵌入了二级缓存相关逻辑。
在这里插入图片描述

查询操作query

当会话调用query() 时,会基于查询语句、参数等数据组成缓存Key,然后尝试从二级缓存中读取数据。读到就直接返回,没有就调用被装饰的Executor去查询数据库,然后在填充至对应的暂存区。
图(太晚了后面会补源码对应的图):暂无

更新操作update

当执行update操作时,同样会基于查询的语句和参数组成缓存KEY,然后在执行update之前清空缓存。这里清空只针对暂存区,同时记录清空的标记,以便当会话提交之时,依据该标记去清空二级缓存空间。但如果在查询操作中配置了flushCache=true ,也会执行相同的操作。
图(太晚了后面会补源码对应的图):暂无

提交操作commit

当会话执行commit操作后,会将该会话下所有暂存区的变更,更新到对应二级缓存空间去。
图(太晚了后面会补源码对应的图):暂无

一级缓存和二级缓存的整理流程图

图(太晚了后面会补源码对应的图):暂无

查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. Mysql的可视化工具整理

    MySQL的管理维护工具非常多,除了系统自带的命令行管理工具之外,还有许多其他的图形化管理工具,这里我介绍几个经常使用的MySQL图形化管理工具,供大家参考。(个人习惯使用Navicat和SQLyog)MySQL是一个非常流行的小型关系型数据库管理系统,2008年1月16号被Sun公司收购。目…...

    2024/4/15 4:29:07
  2. 卸载 PyCharm

    卸载 PyCharm 1. rm -rf pycharm-community-2020.1.1/ (base) yongqiang@yongqiang:~$ cd software/ (base) yongqiang@yongqiang:~/software$ ls pycharm-community-2020.1.1 (base) yongqiang@yongqiang:~/software$ (base) yongqiang@yongqiang:~/software$ rm -rf pycharm-…...

    2024/4/15 4:29:06
  3. Spring源码阅读之bean对象的创建过程

    Spring源码阅读之bean对象的创建过程 ​ Spring是通过IOC容器来管理对象的,该容器不仅仅只是帮我们创建了对象那么简单,它负责了对象的整个生命周期-创建、装配、销毁。这种方式成为控制反转(组件对象控制权的转移,从程序代码本身转移到了外部容器,容器创建完对象后注入组…...

    2024/4/18 16:17:35
  4. 分布式锁+Redis,解决集群业务数据缓存

    文章目录分布式锁1. 分布式锁实现2. 使用redis实现分布式锁学习优化总结redis集群状态下的问题:使用redisson解决分布式锁1. 导入依赖 service-util2. 配置redisson可重入锁(Reentrant Lock)测试代码分布式锁 + AOP实现缓存1. 定义一个注解2. 定义一个切面类加上注解3. 将需…...

    2024/4/15 4:29:04
  5. 1期Java面试题

    1期Java面试题==和equals的区别? ==号基本数据类型:比较值 引用数据类型:比较引用地址equalsequals 本质上就是 ==,只不过 String 和 Integer 等重写了 equals 方法,把它变成了值比较HashCode 的作用有那些?一个对象的HashCode就是一个简单的Hash算法的实现,关系到对象在…...

    2024/4/15 4:29:03
  6. 程序设计思维模测 - M3

    T1 - 瑞神的序列 题目 瑞神的数学一向是最好的,连强大的咕咕东都要拜倒在瑞神的数学水平之下,虽然咕咕东很苦 恼,但是咕咕东拿瑞神一点办法都没有。 5.1期间大家都出去玩了,只有瑞神还在孜孜不倦的学习,瑞神想到了一个序列,这个序列长度为 ,也就是一共有 个数,瑞神给自己出了一…...

    2024/4/15 4:29:02
  7. 企业财务管理信息化现状思考与探索

    从经历过的项目实践看,企业在财务管理信息化建设上,存在缺乏整体观、数据观和价值观。总结之后有以下几个观点:一是,没有或很少将财务信息化融合到企业整体管理信息建设中去。缺少战略和业务上的支持。二是,没有或很少从数据管理的角度来思考财务数据流转和支持财务数据(…...

    2024/4/24 12:36:34
  8. Javascript-冒泡排序

    代码如下: <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title> </hea…...

    2024/4/24 12:36:33
  9. 超市

    超市 做法 显然,前t天,最多有t个物品。 因此,我们将物品按时间排序,对于第i个物品,将其日期和堆的个数比较。若日期>堆的个数,则可以直接插入,否则会相等,这个时候,则序号和堆顶元素进行比较判断。 问题 可能会有重合数据,直接用结构体重载会发生段错误。 因此在结…...

    2024/4/24 12:36:33
  10. nginx常用命令

    使用nginx命令前提条件 进入nginx目录 /usr/lcaol/nginx/sbin/ 查看nginx版本号./nginx -v启动nginx./nginx 查看nginx进程 ps -ef | grep nginx关闭nginx./nginx -s stop重新加载nginx一般情况下,对nginx.conf配置文件(/usr/local/nginx/sbin/conf/下)进行了修改,需要重新…...

    2024/4/24 12:36:33
  11. PHP判断关联数组的键值是否存在,使用empty或isset或array_key_exists

    本文目的前几天工作中,需要频繁判断数组中的键值对是否存在,起初使用的”!empty($arr[‘key’])”来判断,觉得这样读起来比较舒服,但是写出的代码无法通过单元测试(单元测试太好了)。排查很久,终于发现,当$arr[‘key’] == 0时,empty仍然返回true,这样破坏了业务逻辑…...

    2024/4/24 12:36:31
  12. 教你如何区别if else和switch case

    教你如何区别if else和switch case 注意: if…else会生成一个跳转表来指示实际的case分支的地址,而switch case却需要遍历条件分支直到命中条件。 一. if else的优缺点 (1)if else的优点:if else能应用于更多的场所以if else比较灵活 。 (2)if else的缺点:if else必须…...

    2024/4/24 12:36:32
  13. Java中的注解是什么意思,有什么用

    注解是什么 注解也叫元数据,例如我们常见的@Override和@Deprecated,注解是JDK1.5版本开始引入的一个特性,用于对代码进行说明,可以对包、类、接口、字段、方法参数、局部变量等进行注解。 注解可分为三类:一类是Java自带的标准注解,包括@Override(标明重写某个方法)、@…...

    2024/4/24 12:36:31
  14. Python基础05:运算符

    # 1、算术运算符 print(123 + 1) # 124 print(10 / 3) # 结果带小数 3.3333333333333335 print(10 // 3) # 结果只保留整数部分 3 print(10 % 3) # 取模、取余数 1 print(10 ** 3) # 取3次方 1000# 2、比较运算符 : > >= < <= == !=# 3、赋值运算符…...

    2024/4/24 12:36:27
  15. 阿里云【名师课堂】Java面向对象开发40:引用传递实际应用

    阿里云【名师课堂】Java面向对象开发40:引用传递实际应用首先:定义两个简单Java类:Member、Car改进:类中体现关系、对象间的引用继续改进:在类中新建属性还可以扩展 回顾:复习《阿里云【名师课堂】Java面向对象开发3 ~ 6:类与对象》中的引用传递初次分析部分,链接如下:…...

    2024/4/24 12:36:26
  16. JSP: 深入分析pageContext对象、request内置对象

    目录深入分析pageContext对象request内置对象处理请求乱码接收一组参数接收全部请求参数的名称取得上下文名称request其它操作深入分析pageContext对象pageContext只能设置页面上下文的属性信息,但是在整个JSP设计里面,赋予了pageContext更多的功能,这个类可以设置四种属性范…...

    2024/4/15 4:29:21
  17. ps -ef|grep java 命令解析

    ps -ef |grep+服务名来对于查询服务是否正常运行ps -ef是显示所有进程的消息中间的|是管道命令 是指ps命令与grep同时执行grep是查找输出包含想要的字符串的行后缀可以加参数-A  显示所有程序。 -e  此参数的效果和指定"A"参数相同。-f  显示UID,PPIP,C与STIME栏位…...

    2024/4/15 4:29:20
  18. Python基础06:流程控制之if判断

    语法1: if 条件:代码1代码2代码3age = 18 name = chenholngwei if not age>18:print(f{name} 现在还未成年) print(end) 语法2: if 条件:代码1代码2代码3 else:代码1代码2代码3age = 18 name = chenholngwei if not age>=18:print(f{name} 现在还未成年) else:pri…...

    2024/4/15 4:29:19
  19. springboot2常用技能(@Value、@ConfigurationProperties、自定义配置文件、Junit、多环境配置)

    一、使用@Value进行属性配置 1.创建User类,写入属性,重写toString方法。2.在自带的配置文件application.properties中插入值3.在User类中使用@Value进行属性注入4.到controller中注入User类后,直接return回toString方法。5.启动springboot,浏览中可查看运行结果。成功。6.总…...

    2024/4/15 4:29:19
  20. 用户输入整数:如果输入的是1~6的整数,则程序输出:your number is in 1-6.c=(用户输入的数)如果输入的是其他数字,输出:Your number is too large.

    var c=parseInt(prompt("请输入一个整数")); if (c>=1&&c<=6){c="you number is in 1~6."+c; } else{c="you number is too large."+c; } console.log(c);...

    2024/4/18 18:46:53

最新文章

  1. 37.WEB渗透测试-信息收集-企业信息收集(4)

    免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a; 易锦网校会员专享课 上一个内容&#xff1a;36.WEB渗透测试-信息收集-企业信息收集&#xff08;3&#xff09;-CSDN博客 关于主域名收…...

    2024/4/28 0:44:14
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. javaWeb网上零食销售系统

    1 绪 论 目前&#xff0c;我国的网民数量已经达到7.31亿人&#xff0c;随着互联网购物和互联网支付的普及&#xff0c;使得人类的经济活动进入了一个崭新的时代。淘宝&#xff0c;京东等网络消费平台功能的日益完善&#xff0c;使得人们足不出户就可以得到自己想要的东西。如今…...

    2024/4/27 19:08:10
  4. MySQL 底层数据结构 聚簇索引以及二级索引 Explain的使用

    数据结构 我们知道MySQL的存储引擎Innodb默认底层是使用B树的变种来存储数据的 下面我们来复习一下B树存储 B树存储 哈希存储的区别 哈希存储,只能使用等值查询 B树与B树存储 我们知道B树实际上就是B树的变种 那么为啥使用B树而不是使用B树呢? 我们知道效率的高低主要取决于…...

    2024/4/23 6:22:51
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/4/26 18:09:39
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/4/26 20:12:18
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/26 23:05:52
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/4/27 4:00:35
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/26 21:56:58
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/27 9:01:45
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/4/25 18:39:16
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/25 18:39:16
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/26 22:01:59
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/25 18:39:14
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/4/26 23:04:58
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/27 23:24:42
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/25 18:39:00
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/26 19:46:12
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/4/27 11:43:08
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/27 8:32:30
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57