MyBaits

1.简介

1.1 什么是Mybaits

MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis,是一个基于Java的持久层框架。

  • 持久层: 可以将业务数据存储到磁盘,具备长期存储能力,只要磁盘不损坏,在断电或者其他情况下,重新开启系统仍然可以读取到这些数据。
  • 优点: 可以使用巨大的磁盘空间存储相当量的数据,并且很廉价
  • 缺点:慢(相对于内存而言)

1.2 如何获取

  1. maven

    <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
    <dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.5</version>
    </dependency>
    
  2. github

    github.com/mybatis/mybatis-3/releases

1.3 优点

  • 简单易学:本身就很小且简单。没有任何第三方依赖
  • 灵活,sql写在xml里,便于统一管理和优化。通过sql语句可以满足操作数据库的所有需求。
  • 解除sql与程序代码的耦合:通过提供DAO层,将业务逻辑和数据访问逻辑分离。sql和代码的分离,提高了可维护性。
  • 提供映射标签,支持对象与数据库的orm字段关系映射
  • 提供对象关系映射标签,支持对象关系组建维护
  • 提供xml标签,支持编写动态sql。

2.第一个Mybaits程序

2.1 搭建一个maven项目

导入依赖:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>mrh</groupId><artifactId>Mybaits</artifactId><packaging>pom</packaging><version>1.0-SNAPSHOT</version><modules><module>Mybaits_Demon01</module></modules><!--父工程--><!--导入依赖--><dependencies><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.47</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.5</version></dependency></dependencies></project>

2.2 编写代码

  1. 实体类

  2. Dao接口

  3. 接口实现(由原来的UserImp转变为一个xml配置文件)

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    <!--namesapace指定一个Dao/Mapper接口-->
    <mapper namespace="mrh.dao.UserDao"><!--查询语句--><select id="getUserList" resultType="mrh.pojo.User">select * from test2.user</select>
    </mapper>
    
  4. 配置文件

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd">
    <configuration><environments default="development"><environment id="development"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="com.mysql.jdbc.Driver"/><property name="url" value="jdbc:mysql://localhost:3306/test2?userSSL=true&amp;userUnicode=true&amp;characterEncode=UTF-8"/><property name="username" value="root"/><property name="password" value="991024"/></dataSource></environment></environments><!--注册mapper,注意这里文件夹之间不能用 . 只能用 / --><mappers><mapper resource="mrh/dao/UserMapper.xml"/></mappers>
    </configuration>
    
  5. 测试

    package mrh.dao;import mrh.pojo.User;
    import mrh.util.MybaitsUtil;
    import org.apache.ibatis.session.SqlSession;
    import org.junit.Test;import java.util.List;/*** @ClassName UserDaoTest* @Description TODO* @Author m* @Version 1.0*/
    public class UserDaoTest {@Testpublic void test(){//1.获取sqlSession对象SqlSession sqlSession = MybaitsUtil.getSqlSession();//getMapperUserDao userDao = sqlSession.getMapper(UserDao.class);List<User> userList = userDao.getUserList();for (User user : userList) {System.out.println(user.toString());}sqlSession.close();}
    }

    问题1:

    原因1:

    由于Maven约定大于配置,我们之后写的配置文件可能存在无法导出的问题

    解决方案:

    <build><resources><resource><directory>src/main/resources</directory><includes><include>**/*.properties</include><include>**/*.xml</include></includes><filtering>true</filtering></resource><resource><directory>src/main/java</directory><includes><include>**/*.properties</include><include>**/*.xml</include></includes><filtering>true</filtering></resource></resources></build>
    

2.3 CRUD

增删改需要提交事务

1.编写接口

package mrh.dao;import mrh.pojo.User;import java.util.List;public interface UserMapper {//查询全部用户List<User> getUserList();//通过Id查找用户User getUserById(int id);//添加用户int addUser(User user);//修改用户int updateUser(User user);//删除用户int deleteUser(int id);}

2.编写对应的Mappersql语句(不要忘了在mybaits-config.xml中注册)

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--namesapace指定一个Dao/Mapper接口-->
<mapper namespace="mrh.dao.UserMapper"><!--查询语句--><select id="getUserList" resultType="mrh.pojo.User">select * from test2.user</select><select id="getUserById" parameterType="int" resultType="mrh.pojo.User">select * from test2.user where id = #{id};</select><!--添加--><insert id="addUser" parameterType="mrh.pojo.User">insert into test2.user(username ,password) value (#{userName} ,#{password});</insert><!--修改--><update id="updateUser" parameterType="mrh.pojo.User">update test2.user set username = #{userName}, password = #{password} where id = #{id};</update><!--删除--><delete id="deleteUser" parameterType="int">delete from test2.user where id = #{id};</delete></mapper>

3.测试

package mrh.dao;import mrh.pojo.User;
import mrh.util.MybaitsUtil;
import org.apache.ibatis.session.SqlSession;
import org.junit.Test;import java.util.List;/*** @ClassName UserDaoTest* @Description TODO* @Author m* @Version 1.0*/
public class UserDaoTest {@Testpublic void testGetAll(){//1.获取sqlSession对象SqlSession sqlSession = MybaitsUtil.getSqlSession();//获取所有用户UserMapper userMapper = sqlSession.getMapper(UserMapper.class);List<User> userList = userMapper.getUserList();for (User user : userList) {System.out.println(user.toString());}sqlSession.close();}@Testpublic void testGetUserById(){//1.获取sqlSession对象SqlSession sqlSession = MybaitsUtil.getSqlSession();//获取用户UserMapper userMapper = sqlSession.getMapper(UserMapper.class);User user = userMapper.getUserById(2);System.out.println(user.toString());sqlSession.close();}@Testpublic void testAddUser(){User user = new User(2, "hahah", "123456");//1.获取sqlSession对象SqlSession sqlSession = MybaitsUtil.getSqlSession();//添加用户UserMapper userMapper = sqlSession.getMapper(UserMapper.class);userMapper.addUser(user);//增删改数据必须提交sqlSession.commit();sqlSession.close();}@Testpublic void testUpdateUser(){User user = new User(2, "rhma", "123456");//1.获取sqlSession对象SqlSession sqlSession = MybaitsUtil.getSqlSession();//添加用户UserMapper userMapper = sqlSession.getMapper(UserMapper.class);userMapper.updateUser(user);//增删改数据必须提交sqlSession.commit();sqlSession.close();}@Testpublic void testDeleteUser(){//1.获取sqlSession对象SqlSession sqlSession = MybaitsUtil.getSqlSession();//添加用户UserMapper userMapper = sqlSession.getMapper(UserMapper.class);userMapper.deleteUser(9);//增删改数据必须提交sqlSession.commit();sqlSession.close();}}

3.配置文件

3.1 属性优化

configuration(配置)

  • properties(属性)
  • settings(设置)
  • typeAliases(类型别名)
  • typeHandlers(类型处理器)
  • objectFactory(对象工厂)
  • plugins(插件)
  • environments(环境配置)
    • ​ environment(环境变量)
      • transactionManager(事务管理器)
      • dataSource(数据源)
  • databaseIdProvider(数据库厂商标识)
  • mappers(映射器)

这些属性都是可以在整个配置文件中用来替换需要动态配置的属性值

<properties resource="org/mybatis/example/config.properties"><property name="username" value="dev_user"/><property name="password" value="F2Fa3!33TYyg"/>
</properties>
<dataSource type="POOLED"><property name="driver" value="${driver}"/><property name="url" value="${url}"/><property name="username" value="${username}"/><property name="password" value="${password}"/>
</dataSource>

引用优先级问题:

3.2 别名优化

  • 类型别名可为 Java 类型设置一个缩写名字。
  • 仅用于 XML 配置
  • 意在降低冗余的全限定类名书写。

例如:

<typeAliases><typeAlias alias="Author" type="domain.blog.Author"/><typeAlias alias="Blog" type="domain.blog.Blog"/><typeAlias alias="Comment" type="domain.blog.Comment"/><typeAlias alias="Post" type="domain.blog.Post"/><typeAlias alias="Section" type="domain.blog.Section"/><typeAlias alias="Tag" type="domain.blog.Tag"/>
</typeAliases>

当这样配置时,Blog 可以用在任何使用 domain.blog.Blog 的地方。

除了类名,包名也可以设置别名

MyBatis 会在包名下面搜索需要的 Java Bean,比如:

<typeAliases><package name="domain.blog"/>
</typeAliases>

每一个在包 domain.blog 中的 Java Bean,在没有注解的情况下,会使用 Bean 的首字母小写的非限定类名来作为它的别名。 比如 domain.blog.Author 的别名为 author;若有注解,则别名为其注解值。见下面的例子:

@Alias("author")
public class Author {...
}

3.3 映射器

方式一:推荐使用

<!-- 使用相对于类路径的资源引用 -->
<mappers><mapper resource="org/mybatis/builder/AuthorMapper.xml"/><mapper resource="org/mybatis/builder/BlogMapper.xml"/><mapper resource="org/mybatis/builder/PostMapper.xml"/>
</mappers>

方式二:

<!-- 使用映射器接口实现类的完全限定类名 -->
<mappers><mapper class="org.mybatis.builder.AuthorMapper"/><mapper class="org.mybatis.builder.BlogMapper"/><mapper class="org.mybatis.builder.PostMapper"/>
</mappers>

注意点:

  • 接口必须和注册文件同名

  • 接口必须和注册文件在同一包下

方式三:

<!-- 将包内的映射器接口实现全部注册为映射器 -->
<mappers><package name="org.mybatis.builder"/>
</mappers>

注意点:

  • 接口必须和注册文件同名
  • 接口必须和注册文件在同一包下

这些配置会告诉 MyBatis 去哪里找映射文件,剩下的细节就应该是每个 SQL映射文件了

4.数据库字段与实体类中属性名不一致问题

会导致不一致的字段返回值为null

原理:

select * from user;
-- 类型处理器后变为:
select id, username, pwd from user
-- id, username, pwd为绑定的实体类中的属性
-- 当名称不一致时导致最终执行的sql语句查询不到对应的字段,返回null

解决方法

1.起别名

select id, username, pwd as password from user;

2.resultMap(结果集映射)

5.日志

5.1 日志工厂

意义:方便查错

设置:

<settings><setting name="logImpl" value="STDOUT_LOGGING"/>
</settings>
  • STDOUT_LOGGING

  • LOG4J

    • Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等

    • 可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码

    • 配置文件

      ### 设置###
      log4j.rootLogger = debug,console,D### 输出信息到控制抬 ###
      log4j.appender.console = org.apache.log4j.ConsoleAppender
      log4j.appender.console.Target = System.out
      log4j.appender.console.Threshold = DEBUG
      log4j.appender.console.layout = org.apache.log4j.PatternLayout
      log4j.appender.console.layout.ConversionPattern = [%c]-%m%n### 输出DEBUG 级别以上的日志到=E://logs/error.log ###
      log4j.appender.D=org.apache.log4j.RollingFileAppender
      log4j.appender.D.File = ./logs/log.log
      #-----------------------------------文件的最大尺寸
      log4j.appender.D.MaxFileSize=500KB
      log4j.appender.D.append=true
      log4j.appender.D.Threshold = DEBUG
      log4j.appender.D.layout = org.apache.log4j.PatternLayout
      log4j.appender.D.layout.ConversionPattern = [%p][%d{yy-MM-dd}][%c]-%m%n### 日志输出级别 ###
      log4j.logger.org.mybatis=DEBUG
      log4j.logger.java.sql=DEBUG
      log4j.logger.java.sql.Statement=DEBUG
      log4j.logger.java.sql.ResultSet=DEBUG
      log4j.logger.java.sql.PreparedStatement=DEBUG
      

6.分页

分页能够减少数据处理量

语法:

select *from user limit 起始位置, 每页大小;

7.使用注解CRUD

#{}和${}的区别

  • ${}使用字符串直接拼接,不能防止sql注入
  • #{}会将字符串中的特殊字符转义,能防止sql注入

8.多对一的处理

1.查询嵌套的处理思想

<mapper namespace="mrh.dao.StudentMapper"><!--1.查询所有的学生2.根据查到的tid查找对应的老师--><select id="getAllStudent" resultMap="student2Teacher">select * from student;</select><!--结果集映射--><resultMap id="student2Teacher" type="student"><result column="id" property="id"/><result column="name" property="name"/><!--对于复杂的属性,我们需要单独处理 对象:association 集合:collection--><association column="tid" property="teacher" javaType="Teacher" select="getTeacher"/></resultMap><select id="getTeacher" resultType="teacher">select * from teacher where id = #{id}</select></mapper>

2.结果嵌套的思想

<select id="getAll" resultMap="student2Teacher2">select s.id sid, s.name sname, s.tid stid, t.id tid, t.name tname from student s, teacher twhere s.tid = t.id;</select><!--将查询的结果映射为类--><resultMap id="student2Teacher2" type="student"><result column="sid" property="id"/><result column="sname" property="name"/><association property="teacher" javaType="Teacher"><result column="tid" property="id"/><result column="tname" property="name"/></association></resultMap>

9.一对多的处理

1.查询嵌套的处理思想

<select id="getTeacherById2" parameterType="_int" resultMap="teacher2Student2">select * from teacher;
</select><resultMap id="teacher2Student2" type="teacher"><result property="id" column="id"/><result property="name" column="name"/><collection property="students" column="" ofType="student" select="getStudent"/>
</resultMap><select id="getStudent" parameterType="_int" resultType="student">select * from studen where id = #{sid}
</select>

2.结果嵌套的思想

<select id="getTeacherById" parameterType="_int" resultMap="teacher2Student">select t.id tid, t.name tname, s.id sid, s.name sname, s.tid stidfrom teacher t, student swhere t.id = s.tid and t.id = #{id};
</select><resultMap id="teacher2Student" type="teacher"><result property="id" column="tid"/><result property="name" column="tname"/><collection property="students" ofType="student"><result column="sid" property="id"/><result column="sname" property="name"/></collection>
</resultMap>

一对多和多对于区别:

一个使用association,一个使用collection

注意点:

  • 保证sql的可读性
  • 注意属性名和字段的问题
  • 建议使用日志工厂排错

面试高频:

  • Mysql引擎
  • InnoDB底层
  • 索引及其优化

10.动态sql

动态sql:即根据不同的条件生产不同的语言

可容易实现sql的复用

	ifchoose (when, otherwise)trim (where, set)foreach

if

<select id="queryBlog" parameterType="map" resultType="blog">select * from blog<where><if test="title != null">title = #{title}</if><if test="author != null">and author = #{author}</if></where></select>

trim(where, set)

<update id="updateBlog" parameterType="map" >update blog<set><if test="title != null">title = #{title},</if><if test="author != null">author = #{author},</if><if test="creat_time != null">creat_time = #{creat_time},</if><if test="views !=null">views = #{views}</if></set>where id = #{id}
</update>

set 元素会动态地在行首插入 SET 关键字,并会删掉额外的逗号(这些逗号是在使用条件语句给列赋值时引入的)。

where 元素只会在子元素返回任何内容的情况下才插入 “WHERE” 子句。而且,若子句的开头为 “AND” 或 “OR”,where 元素也会将它们去除。

以上两者本质都是通过trim过滤字符

说明:如果where没有添加过,则自动添加where,并且如果拼接的字符串前缀是"and"或"or"则自动去除<trim prefix="WHERE" prefixOverrides="AND |OR ">...
</trim>
说明:如果set没有添加过,则自动添加set,并且如果拼接的字符串后缀是","则自动去除
<trim prefix="SET" suffixOverrides=",">...
</trim>

choose(when … otherwise)

if语句不同的是:

  • if语句会对满足条件的语句进行拼接
  • choose语句只会选择满足条件的第一个语句,对应java中的swith语句
<select id="queryBlog" parameterType="map" resultType="blog">select * from blog<where><choose><when test="title != null">title = #{title}</when><when test="author != null">author = #{author}</when><otherwise>views = 998</otherwise></choose></where></select>

sql片段

用于将某些sql片段提取,方便复用

<sql id="sql-if"><if test="title != null">title = #{title}</if><if test="author != null">and author = #{author}</if>
</sql><select id="queryBlog" parameterType="map" resultType="blog">select * from blog<where><include refid="sql-if"></include></where></select>

foreach

<select id="selectPostIn" resultType="domain.blog.Post">SELECT *FROM POST PWHERE ID in<foreach item="item" index="index" collection="list"open="(" separator="," close=")">#{item}</foreach>
</select>

foreach 元素的功能非常强大,它允许你指定一个集合,声明可以在元素体内使用的集合项(item)和索引(index)变量。它也允许你指定开头与结尾的字符串以及集合项迭代之间的分隔符。这个元素也不会错误地添加多余的分隔符,看它多智能!

提示 你可以将任何可迭代对象(如 List、Set 等)、Map 对象或者数组对象作为集合参数传递给 foreach。当使用可迭代对象或者数组时,index 是当前迭代的序号,item 的值是本次迭代获取到的元素。当使用 Map 对象(或者 Map.Entry 对象的集合)时,index 是键,item 是值。

11.缓存

1.什么是缓存

【1】缓存就是数据交换的缓冲区(称作:Cache),当某一硬件要读取数据时,会首先从缓存汇总查询数据,有则直接执行,不存在时从内存中获取。由于缓存的数据比内存快的多,所以缓存的作用就是帮助硬件更快的运行。
【2】缓存往往使用的是RAM(断电既掉的非永久存储),所以在用完后还是会把文件送到硬盘等存储器中永久存储。电脑中最大缓存就是内存条,硬盘上也有16M或者32M的缓存。
【3】高速缓存是用来协调CPU与主存之间存取速度的差异而设置的。一般CPU工作速度高,但内存的工作速度相对较低,为了解决这个问题,通常使用高速缓存,高速缓存的存取速度介于CPU与主存之间。系统将一些CPU在最近几个时间段经常访问的内容存在高速缓存,这样就在一定程度上缓解了由于主存速度低造成的CPU“停工待料”的情况。
【4】缓存就是把一些外存上的数据保存在内存上而已,为什么保存在内存上,我们运行的所有程序里面的变量都是存放在内存中的,所以如果想将值放入内存上,可以通过变量的方式存储。在JAVA中一些缓存一般都是通过Map集合来实现的。
▁▂▃▅▆ **:**缓存在不同的场景下,作用是不一样的具体举例说明:
✔ 操作系统磁盘缓存 ——> 减少磁盘机械操作。
✔ 数据库缓存——>减少文件系统IO。
✔ 应用程序缓存——>减少对数据库的查询。
✔ Web服务器缓存——>减少应用服务器请求。
✔ 客户端浏览器缓存——>减少对网站的访问。

2.一级缓存(本地缓存)

相同的sql语句执行两次

public void testQuery(){SqlSession sqlSession = MybaitsUtil.getSqlSession();BlogMapper mapper = sqlSession.getMapper(BlogMapper.class);HashMap map = new HashMap();map.put("title", "高等数学");map.put("author","M");List<Blog> blogs = mapper.queryBlog(map);for (Blog blog : blogs) {System.out.println(blog.toString());}blogs = mapper.queryBlog(map);for (Blog blog : blogs) {System.out.println(blog.toString());}sqlSession.close();}

可以看到,实际上sql语句只执行了一次:

第一次查询后将sql语句和查询到的数据存储在缓存中,第二次查询是匹配到相同的sql语句直接取出对应的数据(类似于Map)

缓存失效的情况:

  1. 增删改操作

  2. 查询不同语句

  3. 手动清除缓存

    sqlSession.clearCache(); // 手动清除缓存
    
    • 一级缓存默认开启,即只在一次sql中有效,sql关闭连接就失效

3.二级缓存(全局缓存)

​ MyBatis 内置了一个强大的事务性查询缓存机制,它可以非常方便地配置和定制。 为了使它更加强大而且易于配置,我们对 MyBatis 3 中的缓存实现进行了许多改进。

​ 默认情况下,只启用了本地的会话缓存,它仅仅对一个会话中的数据进行缓存。 要启用全局的二级缓存,只需要在你的 SQL 映射文件中添加一行:

​ MyBatis 内置了一个强大的事务性查询缓存机制,它可以非常方便地配置和定制。 为了使它更加强大而且易于配置,我们对 MyBatis 3 中的缓存实现进行了许多改进。

​ 默认情况下,只启用了本地的会话缓存,它仅仅对一个会话中的数据进行缓存。 要启用全局的二级缓存,只需要在你的 SQL 映射文件中添加一行:

<cache/>

  • 映射语句文件中的所有 select 语句的结果将会被缓存。
  • 映射语句文件中的所有 insert、update 和 delete 语句会刷新缓存。
  • 缓存会使用最近最少使用算法(LRU, Least Recently Used)算法来清除不需要的缓存。
  • 缓存不会定时进行刷新(也就是说,没有刷新间隔)。
  • 缓存会保存列表或对象(无论查询方法返回哪种)的 1024 个引用。
  • 缓存会被视为读/写缓存,这意味着获取到的对象并不是共享的,可以安全地被调用者修改,而不干扰其他调用者或线程所做的潜在修改。

问题:我们使用二级缓存时,需要将实体类序列化,否则会报错

查询顺序:

  1. 查询二级缓存,有记录则返回, 找不到往下走
  2. 查询一级缓存,有记录则返回, 找不到往下走
  3. 查询数据库,返回结果,并存入一级缓存

小结:

  • 开启了二级缓存后,在同一个Mapper下就有效
  • 所有数据会先放在一级缓存中,当一级缓存失效时,会将数据存到二级缓存中

4.Ehcache

EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认CacheProvider。Ehcache是一种广泛使用的开源Java分布式缓存。主要面向通用缓存,Java EE和轻量级容器。它具有内存磁盘存储,缓存加载器,缓存扩展,缓存异常处理程序,一个gzip缓存servlet过滤器,支持REST和SOAP api等特点。

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

相关文章

  1. 【Kafka】Kafka topic 的消费组 出现 CURRENT_OFFSET 为 unknown

    1.背景 如下如,查询某个消费者的详情的时候出现CURRENT_OFFSET 为 unknown 这是因为设置了日志清除时间,然后在到期之前这个消费组一直没消费数据,导致清除的日志在你的消费之后了=================>...

    2024/4/24 12:41:10
  2. 深入浅出设计模式(二)——工厂模式

    工厂模式 简单工厂模式 简单工厂模式(Simple Factory Pattern),又称为静态工厂方法(static Factory Method),它属于创建型模式。 在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的…...

    2024/4/15 4:27:01
  3. AsynchronousFileChannel类的使用(一)

    AsynchronousFileChannel类的使用 AsynchronousFileChannel类用于读取、写人和操作文件的异步通道。 在通过调用此类定义的open()方法打开文件时,将创建一个异步文件通道。该文件包含可读写的、可查询其当前大小的可变长度的字节序列。当写人字节超出其当前大小时,文件的大小…...

    2024/4/15 4:27:00
  4. 用javascript面向对象,实现2048小游戏

    css代码块* {box-sizing: border-box;margin: 0;padding: 0;}html {height: 100%;}body {height: 100%;display: flex;justify-content: center;}.main {width: 400px;height: 400px;background-color: #333;border: 5px solid #333;display: flex;flex-wrap: wrap;}.main-item…...

    2024/5/10 5:05:45
  5. SpringMVC之文件上传

    一 传统的文件上传方式1. 文件上传的前提1)form 表单的 enctype 取值必须是:multipart/form-data(默认值是:application/x-www-form-urlencoded)enctype:是表单请求正文的类型 2)method 属性取值必须是 Post,因为Get请求的url长度是有限制的 3) 提供一个文件选择域<input …...

    2024/4/22 23:47:46
  6. 学习日记——C++理论学习(11) 讲师:郑莉 李超

    目录10.1导学(输入输出I/0流类库)11.2 I/O流的概念以及流类库结构**类库的手册**11.3.1 输出流概述11.3.2 向文本文件输出11.3.3 向二进制文件输出11.3.4 向字符串输出11.4.1 输入流概述11.4.2 输入流应用举例11.4.3从字符串输入11.5 输入输出流11.6小结对I/O流进行了基本介绍…...

    2024/4/15 4:26:57
  7. Android 9.0 USER_ROTATION重启后恢复默认值

    Android 9.0 USER_ROTATION重启恢复问题分析 摘要: 最近MTK平台 9.0系统中,遇到System签名APK 使用方法“System.putInt(contentResolver, “user_rotation”, rotation);” 调整屏幕方向时,重启后方向总恢复默认方向的问题。问题原因: MtkSystemUI 的一个 NavigationBarFr…...

    2024/5/10 4:12:09
  8. 深入浅出设计模式(四)——代理模式

    为啥要用代理?? 代理可以对原有逻辑进行增强,比如我们去租房,可以去找中介(也就是代理),而不是我们自己找。 代理主要就是对原有方法进行增强的。 代理分为静态代理和动态代理。 静态代理 package designpattern.proxy.staticproxy;/*** 接口:租房*/ public interface …...

    2024/4/15 4:26:57
  9. 学习日记——C++理论学习(12) 讲师:郑莉 李超

    目录异常处理12.2 异常处理的思想与程序实现12.3 异常处理中的构造与析构12.4 标准程序库异常处理PS:学完这十二章,对C++有了些基本了解,可以自己尝试编写一些中等规模代码,要进一步学习类的构造 析构 复制 虚 内联 内成员函数……外函数声明指针的使用 异常处理 12.2 异常…...

    2024/4/19 11:41:44
  10. HashiCorp 产品禁止中国公司使用,引发对开源软件受限制的担忧

    近日国外知名 DevOps 服务商 HashiCorp 的官网相关条款页面被发现禁止中国公司使用其 Vault 企业版产品的声明。事件一度引发国内开源界广泛关注。声明中表示:PLEASE NOTE THAT CHINESE EXPORT CONTROL REGULATIONS PROHIBIT HASHICORP FROM SELLING OR OTHERWISE MAKING THE …...

    2024/4/19 11:12:28
  11. 【前端进阶】谈JS之“回调函数”两大缺陷

    前言:我们都知道在Promise等异步技术还没出现时,回调函数是实现异步的重中之重。很多人知道使用回调函数,却不知回调函数出现的作用主要是实现异步。但随着现在应用越来越复杂强大,回调函数在异步处理中已然是不够用了,尽管还是很多人坚持认为回调函数够用。 本博客主要谈…...

    2024/4/16 7:50:33
  12. 使用esp8266与stm32的串口5通信出现的问题

    现象: 把串口5调试好, 对电脑的输出正常无误后, 连上esp8266, 给它发几个命令行不行, 结果卡死了??? 我的代码是这样的, 每个字符间的时间间隔为10ms,发完一条指令歇2ms,led转换状态, 接上esp8266发现灯动都不动. debug了一下, 发现运行到delay卡死. 我把第一条语句里的dela…...

    2024/4/15 4:26:52
  13. 百度一面 / 二面 总结

    一面 :下午两点开始 时长 80min 首先自我介绍 1 项目: 项目背景、技术 、架构 、为什么做这两个项目、项目实现了什么? 项目问的比较细:问了好多,优化呀,改进呀,借助第三方模块干了啥? 具体、具体、再具体, 当时怎么想的、怎么设计的、进行测试没? 能实现多强的功…...

    2024/4/15 4:26:51
  14. 并行-使用流还是CompletableFutures?

    如果任务是计算密集型的操作,那么建议使用Stream接口,因为计算密集,意味着对cpu的使用率高,创建过多的线程反而会引起频繁的上下文切换,这时候使用与处理器核数相同的线程数,可能就是性能最大的选择,而Stream接口实现简单,同时并行流内部是基于ForkJoinPool,它默认的线…...

    2024/4/24 12:41:12
  15. pytorch:data读取出错:RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension

    在使用Dataloader读取数据的时候,使用batch_size=1不会出现这个问题。当batch_size>1时, 默认将会使用torch.stack()为你生成一个[batch,x, x, x] 的tensor数据,在使用该函数时需要输入的两个tensor维度一样。1、注意自己图像的大小是否resize到相同尺寸。2、图像的通道…...

    2024/4/24 12:41:09
  16. 在MacOS下使用cef3全选、拷贝、粘贴、剪切html的输入框文字

    本人前段时间在开发MacOS项目的时候遇到一个问题,我用的框架是以SDL2为窗口、CEF3为浏览器加载HTML,当我想要用"Command+C"拷贝输入框账号时,发现无法全选,更不用说拷贝了,于是在某度上搜索了大半天愣是没找到解决方案,最后在CEF官网上找到了答案,这应该是CEF…...

    2024/4/24 12:41:07
  17. Linux系统常用操作命令(gzip,bzip2,unzip,tar)

    Linux系统常用操作命令gzip命令bzip2命令unzip命令tar命令 gzip命令 压缩解压工具,只能压缩文件 , 不能压缩目录 ,后缀名为.gz , 压缩最快,而且不保留原文件bzip2命令 压缩解压工具,后缀名为.bz2,不能压缩目录-k:产生压缩文件后保留原文件(压缩比高) -d 解压缩unzip命令 用…...

    2024/4/24 12:41:06
  18. swagger2使用踩过的坑

    在项目中使用swagger2生成API确实为程序员带来了很多福音,但是在使用过程中,可能会遇到这样那样的坑,网上关于swagger2的介绍也有很多,本篇记录个人在使用过程中踩过的坑,高手可以忽略,不喜勿喷。1. 访问swagger的首页swagger-ui.html 时报错404。本地访问时,查看swagge…...

    2024/4/24 12:41:06
  19. 在线教育日趋成熟,知识付费或将成下一个财富风口

    互联网行业常说:干掉你的往往与你无关,看不见的对手才是最可怕的。始料未及,公元2020农历庚子鼠年,一场瘟疫让众多线下教育培训机构濒临倒闭,举步维艰,也更加快了教育培训行业的大洗牌。但往往危机中蕴含着机遇,疫情期间,从国家层面倡导在线教育,全国各地从小学到高中…...

    2024/4/24 12:41:06
  20. 比较容易理解的排序算法文章

    堆排序: 一步步给你讲解堆排序,很容易看懂 https://www.cnblogs.com/lanhaicode/p/10546257.html...

    2024/4/24 12:41:04

最新文章

  1. 游戏陪玩平台app小程序H5源码交付游戏陪玩接单软件游戏陪玩源码 陪玩小程序陪玩工作室运营模式陪玩管理系统游戏陪玩工作室怎么做

    提供陪玩平台源码&#xff0c;陪玩系统源码&#xff0c;陪玩app源码&#xff0c;团队各部门配备齐全&#xff0c;分工明确&#xff0c;及时对接开发进度&#xff0c;保证开发效率 一、陪玩平台源码的功能介绍 1、派单大厅:陪玩系统源码的派单大厅内支持用户通过语音连麦的方式…...

    2024/5/10 7:33:51
  2. 梯度消失和梯度爆炸的一些处理方法

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

    2024/5/9 21:23:04
  3. 【opencv】示例-ela.cpp JPEG图像的错误等级分析(ELA) 通过分析图像压缩后的差异来检测图像是否被篡改过...

    ela_modified.jpg 原始ela_modified压缩后再解压得到compressed_img 差异图像Ela 这段代码的功能是实现JPEG图像的错误等级分析&#xff08;ELA&#xff09;&#xff0c;通过分析图像压缩后的差异来检测图像是否被篡改过。程序会首先读取一张图片&#xff0c;然后对其应用质量…...

    2024/5/3 3:11:36
  4. ADB(Android Debug Bridge)操作命令详解及示例

    ADB&#xff08;Android Debug Bridge&#xff09;是一个强大的命令行工具&#xff0c;它是Android SDK的一部分&#xff0c;主要用于Android设备&#xff08;包括真实手机和平板电脑以及模拟器&#xff09;的调试、系统控制和应用程序部署。 下面是一些ADB的常用命令&#xff…...

    2024/5/10 0:09:51
  5. Flink中几个关键问题总结

    硬核&#xff01;八张图搞懂 Flink 端到端精准一次处理语义 Exactly-once&#xff08;深入原理&#xff0c;建议收藏&#xff09; Flink可靠性的基石-checkpoint机制详细解析 硬核&#xff01;一文学完Flink流计算常用算子&#xff08;Flink算子大全&#xff09;...

    2024/5/5 8:39:20
  6. 【外汇早评】美通胀数据走低,美元调整

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

    2024/5/8 6:01:22
  7. 【原油贵金属周评】原油多头拥挤,价格调整

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

    2024/5/9 15:10:32
  8. 【外汇周评】靓丽非农不及疲软通胀影响

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

    2024/5/4 23:54:56
  9. 【原油贵金属早评】库存继续增加,油价收跌

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

    2024/5/9 4:20:59
  10. 【外汇早评】日本央行会议纪要不改日元强势

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

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

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

    2024/5/4 23:55:05
  12. 【外汇早评】美欲与伊朗重谈协议

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

    2024/5/4 23:54:56
  13. 【原油贵金属早评】波动率飙升,市场情绪动荡

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

    2024/5/7 11:36:39
  14. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

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

    2024/5/4 23:54:56
  15. 【原油贵金属早评】市场情绪继续恶化,黄金上破

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

    2024/5/6 1:40:42
  16. 【外汇早评】美伊僵持,风险情绪继续升温

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

    2024/5/4 23:54:56
  17. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

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

    2024/5/8 20:48:49
  18. 氧生福地 玩美北湖(上)——为时光守候两千年

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

    2024/5/7 9:26:26
  19. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

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

    2024/5/4 23:54:56
  20. 氧生福地 玩美北湖(下)——奔跑吧骚年!

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

    2024/5/8 19:33:07
  21. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

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

    2024/5/5 8:13:33
  22. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

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

    2024/5/8 20:38:49
  23. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

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

    2024/5/4 23:54:58
  24. 广州械字号面膜生产厂家OEM/ODM4项须知!

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

    2024/5/9 7:32:17
  25. 械字号医用眼膜缓解用眼过度到底有无作用?

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

    2024/5/9 17:11:10
  26. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

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

    2022/11/19 21:17:18
  27. 错误使用 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
  28. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

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

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

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

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

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

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

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

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

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

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

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

    2022/11/19 21:17:10
  34. 电脑桌面一直是清理请关闭计算机,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
  35. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    2022/11/19 21:16:58
  45. 如何在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