前面用了7篇博客,讲完了mybatis。掌握了前面7篇博客的内容,便可以自如应对spring下的mybatis开发了。

然而,很多时候Mybatis的表现并不是那么完美,比如很多简单的CURD语句还需要开发者手动完成;不支持分页功能,需要开发者写代码实现分页逻辑等等。。。。

这时候,就不得不提MyBatis-Plus了,MyBatis-Plus正是为简化Mybatis的开发而诞生的。

1. MyBatis-Plus介绍

官网关于MyBatis-Plus简介的第一句话就是:

MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

只做增强,不做改变。这意味着原来写的MyBatis代码可以直接拿来用在MyBatis-Plus上,而几乎不用做任何修改。
在这里插入图片描述
就像 魂斗罗 中的 1P、2P,基友搭配,效率翻倍。

在这里直接贴上官网对MP的特性介绍:

  • 无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑
  • 损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作
  • 强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求
  • 支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错
  • 支持主键自动生成:支持多达 4 种主键策略(内含分布式唯一 ID 生成器 - Sequence),可自由配置,完美解决主键问题
  • 支持 ActiveRecord 模式:支持 ActiveRecord 形式调用,实体类只需继承 Model 类即可进行强大的 CRUD 操作
  • 支持自定义全局通用操作:支持全局通用方法注入( Write once, use anywhere )
  • 内置代码生成器:采用代码或者 Maven 插件可快速生成 Mapper 、 Model 、 Service 、 Controller 层代码,支持模板引擎,更有超多自定义配置等您来使用
  • 内置分页插件:基于 MyBatis 物理分页,开发者无需关心具体操作,配置好插件之后,写分页等同于普通 List 查询
  • 分页插件支持多种数据库:支持 MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、Postgre、SQLServer 等多种数据库
  • 内置性能分析插件:可输出 Sql 语句以及其执行时间,建议开发测试时启用该功能,能快速揪出慢查询
  • 内置全局拦截插件:提供全表 delete 、 update 操作智能分析阻断,也可自定义拦截规则,预防误操作

本文将演示一下SpringBoot + MyBatis-Plus项目环境的搭建,以及使用MyBatis-Plus内置的CRUD,以及演示分页。

2. SpringBoot整合MyBatis-Plus

2.1 新建SpringBoot项目

第一步:新创建SpringBoot项目,这一步前面已经做了很多次了,不详细说了。

新创建好的项目的目录结构:
在这里插入图片描述

2.2 添加依赖

需要添加的依赖有:

  • mysql-connector-java:数据库驱动
  • lombok:可自动生成Getter、Setter、toString方法
  • mybatis-plus-boot-starter:mybatis-plus启动器

添加依赖:

<!--mysql驱动-->
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope>
</dependency><!--自动生成Getter、Setter、toString方法的插件-->
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId>
</dependency><!--mybatis-plus启动器-->
<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.3.1</version>
</dependency>

2.3 配置数据源以及mybatis-plus

spring:datasource:username: rootpassword: 123#mysql8以上的驱动包需要指定以下时区url: jdbc:mysql://127.0.0.1:23306/study-mybatis?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8driver-class-name: com.mysql.cj.jdbc.Drivermybatis-plus:# 指定实体类所有包type-aliases-package: com.yky.springboot.entities# 指定xml映射配置文件扫描路径mapper-locations: classpath:mapper/*.xml

2.4 创建实体类

在entities包下创建User类,代码为下:

package com.yky.springboot.entities;import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;import java.io.Serializable;
import java.util.Date;@Data
public class User implements Serializable {//指定一下主键id@TableId(type = IdType.AUTO)private Long id;private String name;private String phone;private Date birthday;
}

2.5 创建Mapper接口

package com.yky.springboot.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yky.springboot.entities.User;
import org.apache.ibatis.annotations.Mapper;@Mapper
public interface UserMapper extends BaseMapper<User> {
}

在这里,只需要继承BaseMapper接口,甚至不用写mapper映射配置文件,便可直接使用MP内部的CRUD操作接口。

MP默认提供了以下操作CRUD接口:

/*** 插入一条记录** @param entity 实体对象*/
int insert(T entity);/*** 根据 ID 删除** @param id 主键ID*/
int deleteById(Serializable id);/*** 根据 columnMap 条件,删除记录** @param columnMap 表字段 map 对象*/
int deleteByMap(@Param(Constants.COLUMN_MAP) Map<String, Object> columnMap);/*** 根据 entity 条件,删除记录** @param wrapper 实体对象封装操作类(可以为 null)*/
int delete(@Param(Constants.WRAPPER) Wrapper<T> wrapper);/*** 删除(根据ID 批量删除)** @param idList 主键ID列表(不能为 null 以及 empty)*/
int deleteBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList);/*** 根据 ID 修改** @param entity 实体对象*/
int updateById(@Param(Constants.ENTITY) T entity);/*** 根据 whereEntity 条件,更新记录** @param entity        实体对象 (set 条件值,可以为 null)* @param updateWrapper 实体对象封装操作类(可以为 null,里面的 entity 用于生成 where 语句)*/
int update(@Param(Constants.ENTITY) T entity, @Param(Constants.WRAPPER) Wrapper<T> updateWrapper);/*** 根据 ID 查询** @param id 主键ID*/
T selectById(Serializable id);/*** 查询(根据ID 批量查询)** @param idList 主键ID列表(不能为 null 以及 empty)*/
List<T> selectBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList);/*** 查询(根据 columnMap 条件)** @param columnMap 表字段 map 对象*/
List<T> selectByMap(@Param(Constants.COLUMN_MAP) Map<String, Object> columnMap);/*** 根据 entity 条件,查询一条记录** @param queryWrapper 实体对象封装操作类(可以为 null)*/
T selectOne(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);/*** 根据 Wrapper 条件,查询总记录数** @param queryWrapper 实体对象封装操作类(可以为 null)*/
Integer selectCount(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);/*** 根据 entity 条件,查询全部记录** @param queryWrapper 实体对象封装操作类(可以为 null)*/
List<T> selectList(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);/*** 根据 Wrapper 条件,查询全部记录** @param queryWrapper 实体对象封装操作类(可以为 null)*/
List<Map<String, Object>> selectMaps(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);/*** 根据 Wrapper 条件,查询全部记录* <p>注意: 只返回第一个字段的值</p>** @param queryWrapper 实体对象封装操作类(可以为 null)*/
List<Object> selectObjs(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);/*** 根据 entity 条件,查询全部记录(并翻页)** @param page         分页查询条件(可以为 RowBounds.DEFAULT)* @param queryWrapper 实体对象封装操作类(可以为 null)*/
<E extends IPage<T>> E selectPage(E page, @Param(Constants.WRAPPER) Wrapper<T> queryWrapper);/*** 根据 Wrapper 条件,查询全部记录(并翻页)** @param page         分页查询条件* @param queryWrapper 实体对象封装操作类*/
<E extends IPage<Map<String, Object>>> E selectMapsPage(E page, @Param(Constants.WRAPPER) Wrapper<T> queryWrapper);

开发者可直接调用这些接口方法操作数据库,而无须关心接口的内部实现,大大简化了开发,提高了开发效率。

2.6 创建Service层

在Web开发中,Controller层调用Service层代码,业务逻辑写在Service层;Service层调用Dao层代码(这里的Dao层就是Mapper接口),Dao层操作数据库。所以,一般情况下还需要开发Service层。

Service接口需要这样写:

package com.yky.springboot.service;import com.baomidou.mybatisplus.extension.service.IService;
import com.yky.springboot.entities.User;public interface UserService extends IService<User> {
}

光有Service接口还不够,还需要有接口实现:

package com.yky.springboot.service.impl;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yky.springboot.entities.User;
import com.yky.springboot.mapper.UserMapper;
import com.yky.springboot.service.UserService;
import org.springframework.stereotype.Service;@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
}

只需要继承ServiceImpl类便可直接调用Mapper接口的方法了,因为Service层是面向接口编程,所以我们还继承了前面写的UserService接口。

至此,Dao层、Service层均已创建好了。

如果想在Service层的实现类中调用Mapper代码,直接用baseMapper即可(所继承的ServiceImpl中有注入Mapper进来):
在这里插入图片描述

3. 单元测试

@SpringBootTest
class UserServiceTest {@AutowiredUserService userService;/*** 新增或修改数据(如果主键id不为空,且id已在数据库中存在了,则进行更新操作)*/@Testpublic void insert() throws ParseException {User user = new User();user.setName("法外狂徒张三");user.setPhone("11111111111");user.setBirthday(new SimpleDateFormat("yyyy-MM-dd").parse("1996-07-18"));userService.saveOrUpdate(user);}/*** 删除数据*/@Testpublic void delete() {userService.removeById(1);}/*** 获取所有*/@Testpublic void selectAll() {List<User> users = userService.list();System.out.println(users);}/*** 根据id获取*/@Testpublic void getById() {User user = userService.getById(1);System.out.println(user);}}

至此,我们没有写任何的xml映射配置代码,就已经完成了对数据库的大部分操作。接下来,我们来完成一下分页。

4. 分页查询

分页查询的实现步骤:

  1. 配置分页插件
  2. 在Mapper接口编写分页查询接口
  3. 编写SQL语句,查询数据库
  4. Service层调用分页查询接口

4.1 配置分页插件

新创建config.MybatisPlusConfig并写入以下代码:

package com.yky.springboot.config;import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;/*** mybatisPlus配置*/
@EnableTransactionManagement//开启事务管理
//@MapperScan("com.mengxuegu.web.mapper")//扫描Mapper接口,就不需要在Mapper接口上加Mapper注解了
@Configuration
public class MybatisPlusConfig {/*** 分页插件* @return*/@Beanpublic PaginationInterceptor paginationInterceptor() {return new PaginationInterceptor();}
}

4.2 编写分页查询接口

/*** 分页查询接口* @param page 分页对象* @param user 用于查询的实体对象* @return 分页数据*/
IPage<User> selectPage(Page<User> page,@Param("user") User user);

Page对象的属性:

public class Page<T> implements IPage<T> {
/*** 查询数据列表*/private List<T> records = Collections.emptyList();/*** 总数*/private long total = 0;/*** 每页显示条数,默认 10*/private long size = 10;/*** 当前页*/private long current = 1;/*** 排序字段信息*/private List<OrderItem> orders = new ArrayList<>();/*** 自动优化 COUNT SQL*/private boolean optimizeCountSql = true;/*** 是否进行 count 查询*/private boolean isSearchCount = true;/*** 是否命中count缓存*/private boolean hitCount = false;
}

我们可以设置page对象的size、current属性来进行分页查询,查询结果封装在records中。

4.3 编写xml映射配置文件

在resources/mapper目录下创建UserMapper.xml文件,并写入以下代码:

<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!--namespace对应Mapper接口的全类名,这样就可以自动匹配上-->
<mapper namespace="com.yky.springboot.mapper.UserMapper"><select id="selectPage" resultType="User">SELECT*FROM `user`<where><if test="user.name != null and user.name != ''">name LIKE CONCAT('%',#{user.name},'%')</if><if test="user.phone != null and user.phone != ''">AND `phone` = #{user.phone}</if></where></select>
</mapper>

在这里,都不需要写LIMIT语句,MyBatis-Plus会自动帮我们添加上(根据传入的Page对象,自动生成LIMIT语句)。

4.4 单元测试测试Dao层代码

@Autowired
UserMapper userMapper;
@Test
public void selectPage() {User user = new User();user.setName("小");IPage<User> userPage = userMapper.selectPage(new Page<User>(),user);System.out.println(userPage.getRecords());
}

4.5 编写Service层分页查询代码

编写Service接口:

/*** 分页查询数据* @param size 单页大小* @param current 当前页码* @param user 用于查询的实体对象* @return 分页数据*/
IPage<User> selectPage(long size, long current, User user);

编写接口实现:

    @Override
public IPage<User> selectPage(long size, long current, User user) {Page page = new Page();page.setSize(size);page.setCurrent(current);return baseMapper.selectPage(page,user);
}

单元测试Service层代码

@Test
public void selectPage() {User user = new User();user.setName("小");IPage<User> page = userService.selectPage(3, 1, user);System.out.println(page.getRecords());System.out.println(page.getTotal());
}

至此,使用MyBatis-Plus进行分页查询的功能开发完成,相比于手写分页简单多了。关于使用MyBatis-Plus简化MyBatis开发就讲到这里了,如果想了解更多可移步MyBatis-Plus官网。如果有什么问题,欢迎大家在评论区指出。

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

相关文章

  1. js-格式化时间

    1.作用:该工具类用来格式化日期 2.含义:参数date:要格式化的时间;format:转换的日期格式 3.示例:将时间戳转换为’yyyy-MM-dd’日期格式。调用下面的函数formatDate(1541430824000, ‘yyyy-MM-dd’) 4.转换结果:“2018-11-05”function formatDate(date, format) {if (!…...

    2024/4/15 9:07:53
  2. 是否应该对private的方法写UnitTest code

    最近在写UnitTest代码的时候遇到了点小问题,在解决过程当中有了点小心得,做一下记录。 完整代码在此处下载: https://download.csdn.net/download/zxm317122667/10652780问题主要对于 private 方法的单元测试。比如如下代码:有两个类,分别是Fish和Rod 鱼Fish.javapackag…...

    2024/4/12 21:32:47
  3. python趣味入门——写几个常玩的游戏

    文档介绍 利用python写“猜数字”,“猜词语”,“谁是卧底”这三个游戏,从而快速掌握python编程的入门知识,包括python语法/列表/元组/字典/流程控制/库函数等等。 环境参数 linux平台,python 3.4。需要在linux中把python 3.4编译一下,这样编写python程序时保存为.py格式的…...

    2024/4/12 21:32:52
  4. momentJs -- 强大的时间/日期格式化插件

    地址:参考此处 http://momentjs.cn/docs/#/get-set/get/年月日 时分秒YYYY-MM-DD HH:mm:ssyears -- 年months -- 月days -- 日hours -- 时minutes -- 分seconds -- 秒milliseconds -- 毫秒引入moment获取时间 :// 获取是星期几 console.log(moment(2017-10-31).day()); // 获取…...

    2024/4/12 21:32:57
  5. 游戏制作人的感悟

    1. 游戏与现实的联系  可能很多人会反问我:游戏和现实有什么联系?的确,长久以来我发现很多策划在自己的思想世界里,过于主观臆断。认为他所设计的玩法玩家就一定能接受,有时候不妨反问一下自己:玩家凭什么接受你所设计的玩法,凭什么能让玩家觉得有趣你的论点由什么论证…...

    2024/4/12 21:32:52
  6. [Ubuntu] 关于ohmyzsh下载被443拒绝连接

    关于ohmyzsh下载被443拒绝连接问题: curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused>>> sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" >>> curl: (7) Failed…...

    2024/4/5 20:55:56
  7. Spring Boot系列教程十:Spring boot集成MyBatis

    一.创建项目项目名称为 “springboot_mybatis_demo”,创建过程中勾选 “Web”,“MyBatis”,“MySQL”,第一次创建Maven需要下载依赖包(耐心等待)二.实现2.1创建User类package com.woniu.bean;public class User {private long id;private String name;private int age;publ…...

    2024/4/20 4:57:38
  8. JS对象与JSON格式数据相互转换

    最近遇到这个问题,JS对象和JSON格式数据的相互转换。其实,也就是两个问题:JS对象转换成为JSON格式数据、JSON格式数据转换成为JS对象。目前的项目数据交互几乎都用JQuery,所以处理流程是:前端页面数据-》JS对象-》jQuery提交-》python处理,另外一种就是倒过来。python肯定…...

    2024/4/18 16:35:24
  9. []——图论——最短路径——Floyd算法的证明[1.0]

    Floyd算法简短介绍 思想: Floyd算法考虑的是一条最短路径上的中间结点。 什么是中间节点举个例子: 一个简单路径p = <v1,v2,v3,…,vl>上的中间结点指的就是除了v1和vl之外的任意节点, 也就是处于集合<v2,v3,…,vl>内的结点。 Floyd算法是解决多源最短路径的一个…...

    2024/4/12 21:32:57
  10. MybatisGenerator(MyBatis逆向工程教程)

    MybatisGenerator(MyBatis逆向工程) 1)什么是MyBatis逆向工程 MyBatis Generator简称(MBG)是一个可以用来生成Mybatis dao,entity,Mapper文件的一个工具,在项目的过程中可以省去很多重复的工作,我们只要在MyBatis Generator的配置文件中配置好要生成的表名与包名即可。 官…...

    2024/4/12 21:33:07
  11. 岂曰无衣 与子同袍——解析月狂病壳之少女的世界

    岂曰无衣 与子同袍——解析月狂病&壳之少女的世界序言 prologue美少女游戏和动画在ACG界并不是什么新鲜的名词,算一算从《心跳回忆》的时候起10多年间玩过的看过的收藏过的galgame系ACG衍生物也不下上百了。从最早的一男主一男配+N多女主的典型后宫片格局,发展到现在融合…...

    2024/4/12 21:33:07
  12. javascript字符串格式化

    字符串格式化String.prototype.format = function(args) {var result = this;if (arguments.length < 1) {return result;}var data = arguments; if (arguments.length == 1 && typeof (args) == "object") {data = args;}for (var key in data) …...

    2024/4/5 10:22:02
  13. Linux内核下载地址及编译基本命令

    内核编译基本命令:make mrproper --- 清理全部文件,包括.config和一些备份文件 make clean --- 清理生成文件,但会保留.config和一些模块文件。make defconfig --- 生成包含全部默认选项的.config文件。这里用make s3c2410_defconfig替代 make oldconfig --- 在旧的.config基…...

    2024/4/12 21:32:57
  14. JS时间格式化,时间戳的转换

    JS 时间格式化为yyyy-MM-dd hh:mm:ss 例:将Thu Sep 20 2018 16:23:03 GMT+0800 (中国标准时间)转换为"2018-09-20 16:23:03" 方法一: function formatDateTime(inputTime) {var date = new Date(inputTime);var y = date.getFullYear();var m = date.getMonth() + …...

    2024/4/16 10:22:03
  15. 《驭女诡术》残本

    2019独角兽企业重金招聘Python工程师标准>>> 你的爱情还在保鲜期吗? 《驭女诡术》说,爱情就像食物一样有保质期,每个人的爱情经历不同,但是其发展过程却大体相似,都是从陌生到相识,从交往到厌烦,从分开再到下一段恋情。有调查研究表明,中国人的情感问题归根…...

    2024/4/12 21:33:38
  16. MyBatis 教程 - MyBatis插件(Plugins)开发

    MyBatis 允许你在已映射语句执行过程中的某一点进行拦截调用。默认情况下,MyBatis 允许使用插件来拦截的方法调用包括:Executor (update, query, flushStatements, commit, rollback, getTransaction, close, isClosed) ParameterHandler (getParameterObject, setParameter…...

    2024/4/12 21:34:08
  17. 使用Android模拟器调试linux内核

    使用Android模拟器调试linux内核为什么需要调试linux内核如何在Android上调试内核开发环境创建模拟器下载goldfish内核源码编译goldfish内核编译内核遇到的问题使用自己编译的linux内核启动模拟器使用gdb调试内核参考为什么需要调试linux内核 最近几年一直在学习linux内核,源码…...

    2024/4/15 2:39:38
  18. js 自定义format格式化输出

    在使用js的时候,经常要进行字符串的拼接,一但使用+号进行字符串拼接的时候,基本是各种问题,又不好维护,有没有更好的方法地其进行格式化输出呢?答案肯定是有的,如果你使用nodejs,它已经自带的,如果你还在使用纯原生js,那不好意思了。使用方法为String对象添加format方…...

    2024/4/12 21:33:43
  19. Linux串口通信中一种接收不到数据的问题的解决

    转载来源:嵌入式系统之初学者点滴 (百度空间)原文在这篇文章()中,实现了Linux环境下的串口读写操作,程序也运行成功了。但是再进一步测试时发现,如果开机之后直接如上文中所说,分别运行读程序和写程序,再用导体同时触碰串口的2、3针的话。此时将显示写入串口成功,但…...

    2024/4/12 21:34:03
  20. 提升游戏品质的几个方法

    针对手机游戏: 关键词:游戏题材,交互方式,美术设计。一 、游戏题材的选择:同一类玩法,不同的题材。现在市场上这种手机游戏比比皆是,游戏出来的市场最终效果却各不相同。游戏选材的几个方向: 1,借力打力,事办公倍。 这类题材采用最近比较火的电影,漫画,动画,电视剧…...

    2024/4/13 4:27:19

最新文章

  1. 各自时间轴上

    时间轴线交通阡陌上&#xff0c;相交相离间&#xff0c;成就时间流里的一份子&#xff0c;或大或小&#xff0c;皆在其内。哪有无缘无故&#xff0c;更没有突如其来&#xff0c;都是因缘际会&#xff0c;关键还是珍惜和把握。 ​顺水寻源&#xff0c;逐末求本&#xff0c;自然而…...

    2024/4/20 12:07:58
  2. 梯度消失和梯度爆炸的一些处理方法

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

    2024/3/20 10:50:27
  3. Python读取文件里内容

    如果要读取一个文件里的内容是 # 文件名&#xff1a;db.txt 1 2 3 4代码如下 import requests f open("db.txt", mode"rb") content f.read() f.close()data content.decode(utf-8)# 存到 list 里 data_list data.split(\r\n) print(data_list)# 结果…...

    2024/4/20 4:36:09
  4. 一个浮动绝对居中的tailwindcss

    今天改进图片组件&#xff0c;遇到个SVG绝对居中的问题。想起之前大概是通过top left来实现&#xff0c;由于组件的宽高需要动态输入。不能定死宽高&#xff0c;于是想起来问GPT。刚开始老是给一些很菜的代码&#xff0c;不是我想要的 气不打一处来&#xff0c;索性给他限死框框…...

    2024/4/17 7:42:34
  5. 【外汇早评】美通胀数据走低,美元调整

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

    2024/4/19 14:24:02
  6. 【原油贵金属周评】原油多头拥挤,价格调整

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

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

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

    2024/4/19 11:57:31
  8. 【原油贵金属早评】库存继续增加,油价收跌

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

    2024/4/19 11:57:31
  9. 【外汇早评】日本央行会议纪要不改日元强势

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

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

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

    2024/4/19 11:57:53
  11. 【外汇早评】美欲与伊朗重谈协议

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

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

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

    2024/4/19 11:58:20
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

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

    2024/4/20 7:40:48
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

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

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

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

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

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

    2024/4/20 3:12:02
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

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

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

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

    2024/4/19 11:59:23
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

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

    2024/4/19 11:59:44
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

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

    2024/4/19 11:59:48
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

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

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

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

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

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

    2024/4/19 12:00:25
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

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

    2024/4/19 12:00:40
  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