将自己的电脑变成一台web服务器---Servlet详解!
文章目录
- 1、Servlet实现类
- 1.1 实现步骤
- 1.2 Servlet对象生命周期
- 2、请求/相应对象
- 2.1 请求对像
- 2.2 响应对象
- 2.3 生命周期
- 3、欢迎资源文件
- 4、Http状态码
- 5、多个Servlet之间的协调合作
- 5.1 调用方式
- 5.1.1 重定向
- 5.1.2 请求转发
- 5.2 数据共享
- 5.2.1 ServletContext接口
- 5.2.2 Cookie
- 5.2.3 HttpSession接口
- 5.2.4 HttpServletRequest接口
- 6、监听器
- 6.1 ServletContextListener接口
- 6.2 ServletContextAttributeListener接口
- 7、过滤器
Servlet(Server Applet)
是用Java编写的服务器端程序,其主要功能在于交互式地浏览和修改数据,生成动态Web内容,我们通常说的Servlet是指任何实现了这个Servlet接口的类。开始学习之前,需做如下准备:
- 了解HTTP协议相关内容;
- 在IDEA中部署tomcat;
- 创建web项目。
1、Servlet实现类
1.1 实现步骤
当浏览器通过超链接向服务器发起请求时,tomcat服务器会自动创建Servlet接口的实现类(该类由程序员提前写好,目的是对请求做出处理)并调用该类的service
方法,service
方法根据请求方式的不同选择性调用doGet、doPost
方法。
所以我们的任务就是:
- 在web项目下的src包中创建继承
javax.servlet.http.HttpServlet
的Servlet实现类; - 重写
doGet
和doPost
方法; - 将该类的类路径地址写到配置文件
web.xml
中,即注册到tomcat服务器。
//注册时在web.xml中的书写格式<servlet><servlet-name><!--Servlet实现类的实例对象名,一般为类命--></servlet-name><servlet-class><!--Servlet实现类的相对路径--></servlet-class></servlet><servlet-mapping><servlet-name><!--Servlet实现类的实例对象名,一般为类命,前后servlet-name保持一致--></servlet-name><url-pattern><!--Servlet实现类的访问别名,/开头,以后通过这个别名调用该服务类--></url-pattern></servlet-mapping>
1.2 Servlet对象生命周期
- 创建:默认情况下当Http服务器收到浏览器对当前Servlet实现类的第一次请求时会自动创建一个实例对象,且只创建一次;
- 销毁:当Http服务器关闭时,自动销毁网站下所有Servlet实现类对象。
如果想让Http服务器在启动时自动创建实例对象,可在<servlet></servlet>
中添加如下标签:<load-on-startup><!--大于0的整数--></load-on-startup>
。
2、请求/相应对象
doGet
和doPost
虽然处理的请求方式不一致,但是方法体中运用的方法基本一样。下面以protected void doGet(HttpServletRequest request, HttpServletResponse response)
为例,介绍对请求对象和响应对象的常用处理方法。
2.1 请求对像
- 获取请求协议包的请求行信息,如
request.getRequestURI();
获取请求地址中的统一资源标志符,格式为"/网站名/资源文件名"
; - 读取请求协议包中请求参数信息,参数往往来自于表单,Http服务器采取
UTF-8
字符集对请求头数据进行解析。当请求方式为Post时,参数保存在请求体中,请求对象采取ISO--8859-1
字符集对请求体数据解码,如果是中文请求参数,需要利用request.setCharacterEncoding("UTF-8");
进行解码方式的设置,以防乱码;
//通过枚举获取所有参数Enumeration parameterNames=request.getParameterNames();while(parameterNames.hasMoreElements()){//获取参数名称String parameterName=(String)parameterNames.nextElement();//获取参数值String value=request.getParameter(parameterName);}
- 代替浏览器向Http服务器申请资源文件调用,称为请求转发。
2.2 响应对象
- 设置响应头content-type(默认普通文本)及charset,浏览器根据响应头信息采用相应编译器对响应体内容进行编译处理。如
response.setContentType("text/html;charset=utf-8");
可向响应体写入html代码; - 获取向响应体写入信息的输出流,
PrintWriter out=response.getWriter();
。通过输出流向响应体中写入信息的方法为out.print()
,注意out.write()
写入整数时代表的是ASCII
码,一般不用此方法; - 设置响应头中
location
属性,控制浏览器向指定服务器发起请求response.sendRedirect(String s);
,称为重定向。
2.3 生命周期
- 创建:Http服务器收到浏览器发送的请求协议包时,自动生成一个请求对象和相应对象;
- 销毁:Http服务器推送相应协议包之前负责销毁创建的请求/响应对象。
3、欢迎资源文件
当浏览器向Http服务器发送某个网站的默认请求(http://localhost:8080/网站名/
)时,虽然没有指定资源文件,但是Http服务器会根据默认欢迎资源文件的定位返回特定的资源文件,可在Tomcat安装位置的/conf/web.xml
配置文件中修改相关信息:
//末尾位置的默认资源文件定位,可自定义
-<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
4、Http状态码
Http服务器推送响应包之前,根据请求处理结果将三位数的状态码写入响应包的状态行上,从100-599可分为5个大类:
- 1xx:如100表示本次请求返回的资源文件不是独立的,需要浏览器在接受响应包之后继续请求其依赖的其它资源文件,例如html文件中的图片资源;
- 2xx:如200表示本次请求返回的资源文件是独立的;
- 3xx:如302表示本次请求返回的是一个资源文件的地址,需要浏览器根据该地址发起请求索要文件,重定向时会返回302;
- 4xx:如404表示本次请求的地址有误,服务器无法定位资源文件;405表示定位到资源文件,但是这个Servlet对于浏览器的请求方式无法处理;
- 5xx:如500表示服务器的Servlet进行处理时出现了Java异常。
5、多个Servlet之间的协调合作
某些来自浏览器的请求往往需要服务器中多个Servlet协同处理,为避免用户多次发起请求,需要在服务器实现多个Servlet的调用,调用过程中可能需要共享数据。
5.1 调用方式
5.1.1 重定向
Http服务器在浏览器第一次访问的Servlet中通过响应对象修改响应头的location属性,浏览器收到响应包时读取到302状态码,并通过location中的资源地址自动向服务端发送第二次请求。
代码如下:response.sendRedirect(String s);
,既可以重定向当前网站资源文件,又可以重定向其它网站资源。缺点在于浏览器至少发起两次请求,且请求方式均为get,无形中增加了用户的等待时间。
5.1.2 请求转发
浏览器第一次访问的Servlet可以代替浏览器向服务器发送请求,申请调用另外的Servlet,且只能调用当前网站下的资源文件。代码如下:
//生成资源文件申请报告对象RequestDispatcher report=request.getRequestDispatcher("/资源文件名");//向Tomcat发送请求report.forward(request,response);
优点在于减少了浏览器与服务器之间请求响应的次数,增加了处理服务速度,第二次的请求方式与浏览器发送的请求方式保持一致。
5.2 数据共享
5.2.1 ServletContext接口
ServletContext接口修饰的对象被称为全局作用域对象,每个网站都存在这么一个唯一的对象,相当于存储数据的Map,可以实现来自同一个网站的不同Servlet之间的通信。全局作用域对象生命周期从Http服务器的启动到关闭,贯穿整个网站的运行期间。
//在第一个Servlet中向全局作用域对象添加数据ServletContext application=request.getServletContext();//通过键值对添加数据application.setAttribute(String s,Object o);//在第二个Servlet中通过全局作用域对象获取数据ServletContext application=request.getServletContext();//通过键获取值Object o=application.getAttribute(String s);
由于服务器内存有限且全局作用域对象的资源宝贵,我们添加的数据都是比较重要的。
5.2.2 Cookie
Cookie相当于浏览器缓存,是用户存储在浏览器上的数据。如果两个Servlet来自同一个网站,且为同一个浏览器(浏览器的一次打开和关闭)服务,可以使用Cookie进行数据共享。
当用户通过浏览器访问第一个Servlet时,Sevlet创建Cookie用于存储用户数据,服务完毕后将Cookie写入到响应头中发送给浏览器。
当浏览器收到响应包后,将Cookie存储在缓存中。当用户通过同一个浏览器再次访问第二个Servlet时,会自动将之前的Cookie写入到请求头中,第二个Servlet通过读取请求头实现数据的共享。
//第一个Servlet创建Cookie储存信息//一个Cookie相当于一个只能存放一个键值对的MapCookie cookie=new Cookie(String name,String value); //将Cookie写入到响应头中response.addCookie(cookie);//第二个Servlet读取Cookie储存的信息Cookie cookies[]=request.getCookies();for(Cookie cookie:cookies){String name=cookie.getName();String value=cookie.getValue();}
默认情况下,Cookie存储在浏览器的内存中,只要浏览器关闭,Cookie对象就被销毁。在写入响应头之前,可以手动设置Cookie存放在客户端计算机的硬盘上,并指定存活时间:cookie.setMaxAge(int expiry);
,参数以分钟为单位。
5.2.3 HttpSession接口
HttpSession接口修饰的对象被称为会话作用域对象,相当于存储数据的Map。不同于全局作用域对象,每个浏览器的一次打开与关闭的过程中都可以创建一个会话作用域对象用于数据的存储。如果两个Servlet来自同一个网站,且为同一个浏览器服务,可以使用会话作用域对象进行数据共享。
//第一个Servlet获取会话作用域对象,如果不存在则会自动创建//注意如果是HttpSession session=request.getSession(false)的话,当session未被创建时返回nullHttpSession session=request.getSession();//添加键值对session.setAttribute(String s,Object o);//第二个Servlet获取会话作用域对象HttpSession session=request.getSession();//通过枚举的遍历获取数据Enumeration<String> names=session.getAttributeNames();while(names.hasMoreElements()){String name=names.nextElement();Object o=session.getAttribute(name);}
每个浏览器访问过程中创建的session
都是独一无二的,并且服务器可以识别不同浏览器的session
,这是为什么呢?
原因在于当session被创建时,服务器会为其分配一个JSSSIONID
,并以Cookie的形式写入响应头中,当同一个浏览器再次发送请求时,请求头中会携带Cookie:JSSSIONID=?
这样一条信息,服务器根据JSSSIONID
找到对应浏览器的session。
当浏览器关闭时,相关的session并不会被销毁,因为服务器无法知道浏览器的关闭时间。所以tomcat为每个session创建空闲时间,默认30分钟后如果同一个浏览器没有请求就销毁session。空闲时间可通过web.xml
配置文件进行设置:
<session-config><session-timeout><!--以分钟为单位的整数--></session-timeout>
</session-config>
5.2.4 HttpServletRequest接口
如果两个Servlet通过请求转发的方式进行调用,则它们共享同一个请求协议包,即共享同一个请求对象,称为请求作用域对象。
//第一个Servlet传入数据,并转发至第二个Servletrequest.setAttribute(String s,Object o);request.getRequestDispatcher("/资源文件名").forward(request,response);//第二个Servlet获取数据Object o=request.getAttribute(String s);
6、监听器
监听器接口用于监听作用域对象生命周期变化及共享数据变化,具体的方法实现由程序员完成,开发规范如下:
- 根据监听的作用域对象选择对应接口进行实现;
- 重写监听器接口的监听事件处理方法;
- 在
web.xml
配置文件中将监听器接口实现类注册到Http服务器。
注册方法如下:
//在web.xml中增加如下标签:
<listener><listener-class><!--监听器接口实现类的相对路径--></listener-class>
</listener>
6.1 ServletContextListener接口
该接口的实现类用来监听全局作用域对象的初始化及销毁时刻。
public void contextInitialized(ServletContextEvent sce)
在全局作用域对象初始化时被调用;public void contextDestroyed(ServletContextEvent sce)
在全局作用域对象销毁时被调用。
6.2 ServletContextAttributeListener接口
该接口的实现类用来监听全局作用域对象共享数据的变化。
public void attributeAdded(ServletContextAttributeEvent scae)
在全局作用域对象添加共享数据时被调用;public void attributeRemoved(ServletContextAttributeEvent scae)
在全局作用域对象删除共享数据时被调用;public void attributeReplaced(ServletContextAttributeEvent scae)
在全局作用域对象更新共享数据时被调用。
如果我们借助Http服务器实现浏览器与数据库的通信,其中服务器建立Connection
相对耗时较长,所以我们可以利用监听器,当Http服务器打开时,创建Connection
对象龚通信使用;当Http服务器关闭时,关闭Connection
对象。这样一来可大大降低通过连接数据库进行操作的时间!
7、过滤器
在浏览器通过请求调用服务器的资源文件时,可以通过过滤器帮助服务器检测当前请求的合法性,同样可以对当前请求进行增强操作。开发步骤如下:
- 创建
Filter
接口的实现类; - 重写
doFilter
方法; - 在
web.xml
配置文件中将过滤器接口实现类注册到Http服务器。
注册方法如下:
//在web.xml中增加如下标签:
<filter><filter-name><!--Fileter实现类的实例对象名,一般为类名--></filter-name><filter-class><!--Fileter实现类的相对路径--></filter-class></filter><filter-mapping><filter-name><!--Fileter实现类的实例对象名,一般为类名--></filter-name><url-pattern><!--访问哪些资源时需要调用该过滤器,--></url-pattern></filter-mapping>
<url-pattern></url-pattern>
标签中的资源文件表示方法如下:
/资源文件名
表示具体资源;/文件夹名/*
表示某文件夹下的所有资源;*.文件扩展名
表示某一类型的所有资源;/*
表示该网站的全部资源。
示例
请求对象默认采取ISO--8859-1
字符集对请求体数据解码,如果是中文请求参数,需要利用request.setCharacterEncoding("UTF-8");
进行解码方式的设置,以防乱码。如果不使用过滤器,所有的Servlet中均需要加上这行代码,增加了书写工作,利用过滤器便可解决这个问题:
public class LoginFilter implements Filter {@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {//过滤器实现了对当前请求的增强servletRequest.setCharacterEncoding("UTF-8");//filterChain负责将请求和响应对象还给TomcatfilterChain.doFilter(servletRequest,servletResponse);}
}
通过地址栏访问服务器的资源文件存在一个问题:有时我们需要用户完成某种条件(如登陆)之后,才可以访问特定资源,如果不加限制的话直接通过地址栏访问特定资源就可以达到不登陆即可访问的目的,这种方式显然是不安全的。利用过滤器便可解决这个问题:
public class LoginFilter implements Filter {@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {HttpServletRequest request=(HttpServletRequest)servletRequest;//获取统一资源定位符String uri=request.getRequestURI();//在Servlet服务中,如果用户完成了登陆服务就创建session,这里若取得说明用户是合法登陆进来的HttpSession session=request.getSession();//与登陆有关的资源文件命名时带有"login",如果访问这些文件也是合法的//如果访问欢迎资源文件,也是合法行为,应允许if(uri.indexOf("login")!=-1 || uri.equals("/网站名/") || session!=null){filterChain.doFilter(servletRequest,servletResponse);return;}else{//拒绝访问服务}}
}
欢迎评论区交流~👍
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- UI模板地址
更多模板APP模板及UI资源网站:1. Themeforest - 超全的App模板及网站主题平台网址:https://themeforest.net/tags/mobile%20app2. W3Layouts – 付费、免费的APP及图标资源平台网址:https://w3layouts.com/mobile-application-templates/3. Graphicriver – 搜罗App及网页相…...
2024/4/16 14:09:20 - SpringBoot高级篇学习笔记(四、缓存与消息)
九、SpringBoot与缓存 1. JSR-107用得少,主要用的是Spring缓存抽象和缓存中间件(如redis)。 2. Spring缓存抽象搭建基本环境新建项目新建数据库新建数据表SET FOREIGN_KEY_CHECKS=0;DROP TABLE IF EXISTS `department`; CREATE TABLE `department` (`id` int(11) NOT NULL A…...
2024/4/19 9:39:39 - 医用呼吸机Everspin MRAM应用笔记
由于当前疫情的大流行,增加医用呼吸机的供应迫在眉睫。Everspin Technologies提供了一种独特的MRAM存储技术,它将为这类设备的电子系统设计带来好处。 呼吸机是一种通过将可呼吸的空气移入和移出肺部来提供机械通气的机器,用于向身体不能呼吸或呼吸不充分的患者输送呼吸。现…...
2024/5/8 16:07:47 - 小试 Xcode 逆向:App 内存监控原理初探(逆向技术必看)
前言 最近看到公司同事的《iOS内存那些事》系列文章,其中的一篇文章讲了他在研究WebKit中内存管理的时候,发现可以用phys_footprint来衡量内存,其结果和xcode debug显示的值基本一致。文章通读下来,收获颇丰~回味之余,突然脑洞了一下,为啥不直接逆向一下Xcode,学习一下x…...
2024/4/24 8:44:11 - 谁再问我如何写出没有Bug的代码,我上去就是一jio!
本文的一些观点可能会有少部分人不赞同,我也只是简单表达一下自己的想法。1947 年 9 月 9 日,美国海军准将 Grace Hopper 在哈佛学院计算机实验室里使用 MarkII 和 MarkIII 计算机进行研究工作。她的团队跟踪到 MarkII 上的一个错误,操作人员发现是由于一只飞蛾钻到了 MarkI…...
2024/4/24 8:44:13 - SpringCloud注册中心的服务治理
源于蚂蚁课堂的学习,点击这里查看(老余很给力) 前言 所谓服务治理,就是管理服务之间相互依赖调用的混乱。没有注册中心前,服务之间调用其实是通过配置文件指定需要访问服务的ip、端口等访问信息的, 这样一旦被调用方地址信息发生变化,调用者需及时修改其配置,再重新发布…...
2024/4/24 8:44:11 - Linux下MySQL定时自动完整备份(mysqldump+crontab)
1、本文主要内容实现数据库全量备份实现定时执行备份实现定时清理7天之前的备份2、工具mysql,mysqldump,crontab1、备份目录准备#mysql专用目录mkdir /mysql#mysql备份目录mkdir /mysql/backup#mysql备份脚本mkdir /mysql/backup/scripts#mysql备份文件mkdir /mysql/backup/fil…...
2024/5/8 14:35:15 - Python导入包时,包名下有红线
选中当前文件夹,右键,选择 Mark Directory as,将当前文件夹选中为Sources Root与 Resource Root...
2024/4/26 8:26:56 - 【Linux】 文件的归档(打包)与压缩处理
一、文件的压缩与解压缩1、常见的压缩文件扩展名*.gzgzip程序压缩的文件*.bz2bzip2程序压缩的文件*.tartar程序打包的数据,并没有经过压缩*.tar.gztar程序打包的文件,其中经过gzip的压缩*.tar.bz2tar程序打包的文件,其中经过bzip2的压缩2、Linux上常见的压缩命令:gzip 与 b…...
2024/4/24 8:44:06 - CentOS 6/7系统更改Mysql 5.7的默认字符集编码为utf8
查看当前字符集编码 [root@localhost ~]# mysql -uroot -p123qqq...A ... mysql> show variables like %char%; +--------------------------------------+----------------------------+ | Variable_name | Value | +--------…...
2024/4/24 8:44:05 - 英文单词排序(PTA-武理-C实验)
本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。 输入格式: 输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20个,英文单词为长度小于10的仅由小写英文字母组成的字符串。 输出格…...
2024/5/8 15:09:38 - 怎样在视频流媒体服务器里实现RTSP h265转RTMP?
RTSP H.265到RTMP,首先需要扩展RTMP协议。目前,我国已有相应的推广标准,国内开发商基本上都是按照该协议进行推广的。协议层面的问题已经得到解决。剩下的关键问题是实现RTMP H.265推送模块。rtmp h265 server 支持,目前常用的nginx-rtmp 和 srs还不支持rtmp h265,需要做些…...
2024/4/24 8:44:06 - redis5.0配置文件 超详细!!!
# redis版本 5.0# 如果想要使用到配置文件,Redis服务必须以配置文件的路径作为第一个参数启动。如: ./redis-server /path/to/redis.conf# 单位说明:当需要指定内存大小时,可能会用到不同的单位,如1k、5GB、4M等,这里给出其单位含义: # 指定单位是大小写不敏感。如1GB、1…...
2024/4/24 8:44:02 - 使用VisualStudio2017跑网传最多的张正友相机标定算法遇到的debug超级慢的问题
最近在做一个相机标定的作业 使用了网传最多的博客代码,如下链接: 1 2 使用Visual Studio2017,下载Opencv3.4.10(opencv3最新版本) 在环境变量中部署完毕之后,在VS工程当中开始配置活动解决方案以及活动解决方案平台,如下图:再对解决方案属性进行配置,如下图:这样下来是可…...
2024/4/24 8:44:02 - Hyperf 使用 Elasticsearch 增删改查基本方法
<?phpdeclare (strict_types = 1);namespace App\Elasticsearch;use Hyperf\Elasticsearch\ClientBuilderFactory;use Hyperf\Utils\ApplicationContext;class Elasticsearch{/*** @var ContainerInterface*/protected $container;protected $es_client;/*** 实例化客户端对…...
2024/4/24 8:44:01 - MySQL | MySQL 数据库系统(四)- 数据库的备份与恢复
前言 大家在日常的工作中,备份数据其实是信息安全管理重要的工作之一。那么,我们在这篇文章中将介绍一下数据库的备份与恢复。MySQL 数据库的备份同时有多种方式。第一:直接打包数据库文件夹/etc/local/mysql/data,或者我们使用工具来进行备份。 1、备份数据库 通过mysqldum…...
2024/4/24 8:43:59 - flutter自定义dialog 实现宽度自定义 界面自定义
效果大致思路 1、弹框整体实现 和写界面是一样的 毕竟flutter中 一切皆组件 界面 弹框 按钮。。。。都是组件 2、样式和跳转要进行处理 背景色透明效果有两种实现方式 a、界面跳转中opaque: false可以设置下个界面背景透明 b、使用showDialog进行新界面跳转 3、布局中使用Mater…...
2024/4/24 8:44:00 - 对象的创建过程
类的生命周期Java中对象的创建就是在堆上分配内存空间的过程,此处说的对象创建仅限于new关键字创建的普通Java对象,不包括数组对象的创建。对象创建过程1.检测类是否被加载当虚拟机执行到new时,会先去常量池中查找这个类的符号引用。如果能找到符号引用,说明此类已经被加载…...
2024/4/28 5:12:45 - 关于oracle 11g 循环多判断+continue 用法例子
CREATE OR REPLACE PROCEDURE PRC_PUB_COMPANY_UP is /****** VERSION : 1.0 AUTHOR : Rebirth_zhujl CREATE_TIME : 20200513 PURPOSE : 部门组归属重新分配 ***/ V_ERRCODE VARCHAR(200); V_ERRMSG VARCHAR(300); V_COUNT VARCHAR2(…...
2024/4/24 8:44:03 - java大数据学习路线
目录: 一.大数据方向工作介绍 二.大数据工程师的技能要求 三.大数据学习路径 四.学习资源推荐(书籍、博客、网站)一.大数据方向工作介绍大数据方向的工作目前分为三个主要方向: 01.大数据工程师 02.数据分析师 03.大数据科学家 04.其他(数据挖掘本质算是机器学习,不过和数据…...
2024/4/16 14:10:31
最新文章
- ODBC - 笔记
0 C++通过ODBC方式连接数据库SQLServer及增删查改操作【图书借阅系统为例】 C++通过ODBC方式连接数据库SQLServer及增删查改操作【图书借阅系统为例】_odbc5.2 c++怎么连接数据库-CSDN博客 0.1 c++使用libODBC linux - /lib/x86_64-linux-gnu/libodbc.so.2 win - /c/WINDO…...
2024/5/8 16:58:49 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/5/7 10:36:02 - STM32-GPIO
🤓🤓🤓 122.1 2.22.3 344.14.24.34.44.54.64.74.8 56788.18.299.19.2 STM32 第一个外设 1 对我们来说 和IO口没区别 ST公司非叫GPIO 2 2.1 第二个是超频了 F1 72M 这翻转就36 2.2 有cmos 和ttl两种数据手册里给出整个芯片最低电流为150ma 单…...
2024/5/5 13:38:38 - Web大并发集群部署之集群介绍
一、传统web访问模型 传统web访问模型完成一次请求的步骤 1)用户发起请求 2)服务器接受请求 3)服务器处理请求(压力最大) 4)服务器响应请求 传统模型缺点 单点故障; 单台服务器资源有限&…...
2024/5/7 1:33:15 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/8 6:01:22 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/5/7 9:45:25 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/5/4 23:54:56 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/5/7 14:25:14 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/5/4 23:54:56 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/5/4 23:55:05 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/5/4 23:54:56 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/5/7 11:36:39 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/5/4 23:54:56 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/5/6 1:40:42 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/5/4 23:54:56 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/5/4 23:55:17 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/5/7 9:26:26 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/5/4 23:54:56 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/4 23:55:06 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/5/5 8:13:33 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/5/4 23:55:16 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/5/4 23:54:58 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/5/6 21:42:42 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/5/4 23:54:56 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) 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 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在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