- Hadoop
傲雪凌霜,松柏长青
后端大数据hadoop大数据分布式
ApacheHadoop是一个开源的分布式计算框架,主要用于处理海量数据集。它具有高度的可扩展性、容错性和高效的分布式存储与计算能力。Hadoop核心由四个主要模块组成,分别是HDFS(分布式文件系统)、MapReduce(分布式计算框架)、YARN(资源管理)和HadoopCommon(公共工具和库)。1.HDFS(HadoopDistributedFileSystem)HDFS是Hadoop生
- 【AI小说推文工具】聚星文社小说推文一键生成工具原创高级推理教学
聚星文社推文工具
AI作画AIGCAI写作gpu算力gpt
小说推文一键生成工具原创高级推理教学聚星文社AIhttps://iimenvrieak.feishu.cn/docx/ZhRNdEWT6oGdCwxdhOPcdds7nof大家好!今天我要向大家介绍一款非常强大的小说推文一键生成工具,它可以帮助我们轻松创作出原创的高级推理故事。下面我将介绍一下如何使用这个工具来创作出令人惊叹的小说推文。第一步:选择故事背景和主题首先,我们需要确定故事的背景和主题。
- X Error of failed request: BadWindow (invalid Window parameter)
自动驾驶实战(AIFighting)
环境配置
加载显示点云时出现error.XErroroffailedrequest:BadWindow(invalidWindowparameter)Majoropcodeoffailedrequest:10(X_UnmapWindow)Resourceidinfailedrequest:0x1a00001Serialnumberoffailedrequest:204Currentserialnumberi
- python并发与并行(十一) ———— 让asyncio的事件循环保持畅通,以便进一步提升程序的响应能力
bug404_
python并发与并行python开发语言
前一篇blog说明了怎样把采用线程所实现的项目逐步迁移到asyncio方案上面。迁移后的run_tasks协程,可以将多份输入文件通过tail_async协程正确地合并成一份输出文件。importasyncio#OnWindows,aProactorEventLoopcan'tbecreatedwithin#threadsbecauseittriestoregistersignalhandlers
- Jmeter压测记录
西电大侠
1、配置压测参数第一步,先启动jmeter,具体如下image.png配置相关参数image.pngimage.pngimage.pngnumberofthreads(线程数):就是模仿用户并发的数量,Ramp-up:运行线程的总时间,单位是秒。loopcount(循环次数):就是每个线程循环多少次。我现在的线程数是50,就是相当于有50个用户,运行线程的总时间是1秒。也就是说在这1秒中之内50个
- 04 cuttman切图工具
星chen
Photoshopcc使用:image.pngcuttman切图工具使用:打开cuttman切图工具image.png=
- pytorch计算网络参数量和Flops
Mr_Lowbee
PyTorchpytorch深度学习人工智能
fromtorchsummaryimportsummarysummary(net,input_size=(3,256,256),batch_size=-1)输出的参数是除以一百万(/1000000)M,fromfvcore.nnimportFlopCountAnalysisinputs=torch.randn(1,3,256,256).cuda()flop_counter=FlopCountAna
- 使用transform对html的video播放器窗口放大
宣晨光
前端整理htmlvideo缩放transform
核心是使用播放容器$('video').css({'transform':'scale(2)','transform-origin':'centertop'});其中scale表示放大倍数,可以是小数transform-origin表示位置,1)可以使用坐标点如'120px200px'2)或者使用方位坐标,leftrighttopbottom总共九个,如左上方'lefttop'上方‘topcent
- 开源项目教程:TopCorn2 - 使用Jetpack Compose构建的IMDb_top_250电影浏览应用
廉霓津Max
开源项目教程:TopCorn2-使用JetpackCompose构建的IMDb_top_250电影浏览应用TopCorn2AminimalisticmovielistingapptobrowseIMDB'stop250movies,builttodemonstrateMVVMwithJetpackCompose.项目地址:https://gitcode.com/gh_mirrors/to/TopC
- SOC 与 ARM
weixin_30316097
嵌入式
SOC是指片上系统,意思是一个芯片就构成一个包括了存储、CPU、甚至还有AD、UART等等其他资源的系统!而ARM只是CPU的一种,有的片上系统是51、nios、PIC、等等不一而是!特别是nios,是altera的FPGA构成的,这个系统也称为SOPC其实就是SOC的一种,只不过是基于FPGA和软核来构成的!ARM授权从高到低大体分为三种,即架构授权、内核授权以及使用授权(实际的授权中,授权费用
- ubuntu24.04编译android7.1.2
qq_34507011
linuxjavac语言android
提示:文章目录前言一、编译环境搭建1.安装编译环境二、编译1.错误解决2.最终编译总结前言以s5p6818支持的android7为例在ubuntu24.04中编译android7.1.2friendlyarmandroid相关源码下载如下:NanoPC-T3Plus/zh-FriendlyELECWiKi提示:以下是本篇文章正文内容,下面案例可供参考一、编译环境搭建1.安装编译环境1.1添加清华源
- python windows路径正则表达式,Python 正则表达式从Windows路径中获取文件夹
弓长丶艮
pythonwindows路径正则表达式
推荐文章一,要使用正则表达式相关的方法,首先得搞清楚正则表达式的基本用法,摘自百度百科:元字符描述将下一个字符标记为一个特殊字符推荐文章学习HadoopCommon模块,当然应该是从最简单,最基础的模块学习最好,所以我挑选了其中的conf配置模块进行学习。整体的类结构非常简单。只要继承了Configurable接口,一般表明就是可配置的,可以执行相应的配置操作,但是配置的集中操作的体现是在Conf
- NanoPC-T6安装redriod笔记
顶点元
NanoPC-T6redroid
这里主要用于自己对安装过程的记录,中间可能记录比较粗糙。重新编译内核参考链接:【环境搭建】基于linux的NanoPC-T6_LTS系统固件编译环境搭建基于docker构建编译环境dockerrun-it\--privileged=true--cap-add=ALL\--namenanopc_t6_lts_env\-v/hdd_4t/nanopc_t6_lts_sdk:/work\-v/lib/m
- redroid rk3588折腾笔记
顶点元
RK3588redroidrk3588
手头有一个nanoPC-t6的3588板卡,想试下搭建云手机。资料收集:编译适用于RK3588的Redroid镜像https://www.cnblogs.com/FW-ltlly/p/18014692香橙派5plus上跑云手机方案一redroid(带硬件加速)容器虚拟安卓在rock5b上使用redroid适用于RK3588的Redroid镜像,包含多种功能拉人入坑之,在Linux系统下运行Andr
- lararvel-shop 创建应用
胡萝卜的兔
phplaravelphp服务器前端
创建应用composer加速composerconfig-grepo.packagistcomposerhttps://packagist.laravel-china.org创建Laravel-Shop项目使用最新框架composercreate-projectlaravel/laravellaravel-shopCreatinga"laravel/laravel"projectat"./lara
- 创建 git 仓库 or 已有仓库?
学博成
git
创建git仓库:mkdirdavid-shopcddavid-shopgitinittouchREADME.mdgitaddREADME.mdgitcommit-m"firstcommit"gitremoteaddoriginhttps://gitee.com/wangwei2020008/david-shop.gitgitpush-uorigin"master"已有仓库?cdexisting_g
- hadoopsdk使用_使用 .NET SDK 管理 HDInsight 中的 Apache Hadoop 群集
weixin_39862484
hadoopsdk使用
您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFTAZURE中国区技术文档网站,请访问https://docs.azure.cn.使用.NETSDK管理HDInsight中的ApacheHadoop群集ManageApacheHadoopclustersinHDInsightbyusing.NETSDK05/14/2018本文内容了解如何使用HDInsig
- Ambari安装部署教程
Aries_Chen_CSDN
大数据hadoopambari
前言之前尝试过使用Ambri安装HDFS集群,整个搭建的流程应该是记录的比较详细的,重新把资料整理了一下发布到博客,希望可以帮到有需要的人吧。环境准备以下操作使用root用户执行:1.关闭防火墙chkconfigiptablesoffserviceiptablesstopchkconfig--listiptables2.关闭SElinuxvi/etc/sysconfig/selinux将SELIN
- STM32F103C8T6引脚定义表
早睡早起|
stm32嵌入式硬件单片机
STM32F103C8T6引脚定义表引脚号引脚名称类型I/O口电平主功能默认复用功能重定义功能1VBATSVBAT2PC13-TAMPER-RTCI/OPC13TAMPER-RTC3PC14-OSC32_INI/OPC14OSC32_IN4PC15-OSC32_OUTI/OPC15OSC32_OUT5OSC_INIOSC_IN6OSC_OUTOOSC_OUT7NRSTI/ONRST8VSSASVS
- [每周一更]-(第111期):从零开始:如何在 CentOS 上源码编译安装 PHP 7.4
ifanatic
每周一更PHPcentosphplinux
文章目录系统信息:0、安装版本:1、下载/解压2、安装依赖3、配置autoconf4、配置参数5、编译和安装6、验证安装的插件6.1、配置php.ini6.2、配置opcache7、错误7.1Failedtoconnectto2a03:2880:f10e:83:face:b00c:0:25de:Networkisunreachable7.1.1禁用yum使用IPv67.1.2使用备用镜像7.2co
- J-Linux&Shell-W12 进程及其管理(上)
Monyan
Linuxlinuxcentos运维
J-Linux&Shell-W12进程及其管理(上)一、判断题终止进程的命令可以用kill。(√)ps命令列出当前的进程,以及它们的树状结构。(×)linux系统上所有运行的东西都可以称之为一个线程。(×)nice命令是用来给程序点赞的。(×)二、单项选择题下列不属于进程基本状态的是(C)A.运行态B.就绪态C.终止态D.阻塞态可以动态查询当前系统进程情况的命令是(B)A.psB.topC.nic
- 聚星文社——绘唐科技Ai推文软件
绘唐AIGCAI工具
科技
聚星文社——绘唐科技Ai推文软件聚星文社--绘唐科技Ai推文软件https://iimenvrieak.feishu.cn/docx/ZhRNdEWT6oGdCwxdhOPcdds7nofAI推文软件是一种利用人工智能技术帮助用户自动生成推文内容的工具。该软件会分析用户提供的相关信息和目标群体,然后使用机器学习算法和自然语言处理技术来生成具有吸引力和关联性的推文内容。通过使用AI推文软件,用户可以
- Oracle外键约束
O-0-O
Oracle
一、创建外键约束两种方法1.创建表时createtable子表(idnumber,namevarchar2(5),foreignkey(id)references父表(列名));2.随时更改altertable子表dropconstraint约束名;altertable子表addconstraint约束名foreingkey(外键)conferences父表(列名);二、进一步理解外键只接受两种值
- 【环境搭建】基于linux的NanoPC-T6_LTS系统固件编译环境搭建
Lozenyi
开发环境的搭建嵌入式LinuxRK3588开发环境系统固件生成
基于Linux环境的T6-LTS系统固件编译环境搭建实际上是Ubuntu过程创建容器dockerrun-it\--privileged=true--cap-add=ALL\--namenanopc_t6_lts_env\-v/hdd_4t/nanopc_t6_lts_sdk:/work\-v/lib/modules:/lib/modules\-v/dev:/dev\ubuntu:20.04/bin
- php zend虚拟机
小伟_be27
⼀个PHP⽂件在服务器端的执⾏过程包括以下两个⼤的过程:1.递给php程序需要执⾏的⽂件,php程序完成基本的准备⼯作后启动PHP及Zend引擎,加载注册的扩展模块。2.初始化完成后读取脚本⽂件,Zend引擎对脚本⽂件进⾏词法分析,语法分析。然后编译成opcode执⾏。如果安装了apc之类的opcode缓存,编译环节可能会被跳过⽽直接从缓存中读取opcode执⾏。在第⼆步中,词法分析、语法分析,编
- pg订阅oracle修改,PostgreSQL 修改视图的操作
weixin_39983912
pg订阅oracle修改
最近发现PostgreSQL(createorreplace)修改视图有很多的限制,不像SQLServer和Oracle那样可以随意修改。错误提示修改视图原有字段ERROR:cannotchangenameofviewcolumn"user_id"to"?column?"删除视图原有字段ERROR:cannotdropcolumnsfromview找到如下原因,内容原文究其原因,是PostgreS
- 2018-06-20-KCASH推特脸书互联活动
Benny羅
KcashnewairdropeventKcashnewairdropcampaign!100000KCASHarewaitingforyou!!!EventTime:FromUTC10:00AM,June11th,2018toUTC10:00AM,June18th,2018Allyouhavetodo:Step1:FollowKcashofficialTwitter:https://twitte
- 四、linux常用命令
爱泡脚的CXY
一、软件安装和卸载在centos7.3中使用软件相关命令:yuminstall软件名来安装软件yumremove软件名卸载软件yumsearch模糊名字搜索软件yumcleanpackages清理缓存yumlist列出已安装的列表yuminfo软件名软件包信息系统相关命令:内存:free-m硬盘:df-h负载:w/topcpu:cat/proc/cupinfolinux的目录结构:image.pn
- Netty架构详解
思静语
Netty网络通信
文章目录概述整体结构Netty的核心组件逻辑架构BootStrap&ServerBootStrapChannelPipelineFuture、回调和ChannelHandler选择器、事件和EventLoopChannelHandler的各种ChannelInitializer类图ProtocolSupport协议支持层TransportService传输服务层Core核心层模块netty-com
- 世民谈云计算:KVM 介绍
爱与奇迹的物语
笔记
http://www.cnblogs.com/sammyliu/p/4543110.htmlKVM介绍(1):简介及安装学习KVM的系列文章:(1)介绍和安装(2)CPU和内存虚拟化(3)I/OQEMU全虚拟化和准虚拟化(Para-virtulizaiton)(4)I/OPCI/PCIe设备直接分配和SR-IOV(5)libvirt介绍(6)Nova通过libvirt管理QEMU/KVM虚机(7)
- mondb入手
木zi_鸣
mongodb
windows 启动mongodb 编写bat文件,
mongod --dbpath D:\software\MongoDBDATA
mongod --help 查询各种配置
配置在mongob
打开批处理,即可启动,27017原生端口,shell操作监控端口 扩展28017,web端操作端口
启动配置文件配置,
数据更灵活 
- 大型高并发高负载网站的系统架构
bijian1013
高并发负载均衡
扩展Web应用程序
一.概念
简单的来说,如果一个系统可扩展,那么你可以通过扩展来提供系统的性能。这代表着系统能够容纳更高的负载、更大的数据集,并且系统是可维护的。扩展和语言、某项具体的技术都是无关的。扩展可以分为两种:
1.
- DISPLAY变量和xhost(原创)
czmmiao
display
DISPLAY
在Linux/Unix类操作系统上, DISPLAY用来设置将图形显示到何处. 直接登陆图形界面或者登陆命令行界面后使用startx启动图形, DISPLAY环境变量将自动设置为:0:0, 此时可以打开终端, 输出图形程序的名称(比如xclock)来启动程序, 图形将显示在本地窗口上, 在终端上输入printenv查看当前环境变量, 输出结果中有如下内容:DISPLAY=:0.0
- 获取B/S客户端IP
周凡杨
java编程jspWeb浏览器
最近想写个B/S架构的聊天系统,因为以前做过C/S架构的QQ聊天系统,所以对于Socket通信编程只是一个巩固。对于C/S架构的聊天系统,由于存在客户端Java应用,所以直接在代码中获取客户端的IP,应用的方法为:
String ip = InetAddress.getLocalHost().getHostAddress();
然而对于WEB
- 浅谈类和对象
朱辉辉33
编程
类是对一类事物的总称,对象是描述一个物体的特征,类是对象的抽象。简单来说,类是抽象的,不占用内存,对象是具体的,
占用存储空间。
类是由属性和方法构成的,基本格式是public class 类名{
//定义属性
private/public 数据类型 属性名;
//定义方法
publ
- android activity与viewpager+fragment的生命周期问题
肆无忌惮_
viewpager
有一个Activity里面是ViewPager,ViewPager里面放了两个Fragment。
第一次进入这个Activity。开启了服务,并在onResume方法中绑定服务后,对Service进行了一定的初始化,其中调用了Fragment中的一个属性。
super.onResume();
bindService(intent, conn, BIND_AUTO_CREATE);
- base64Encode对图片进行编码
843977358
base64图片encoder
/**
* 对图片进行base64encoder编码
*
* @author mrZhang
* @param path
* @return
*/
public static String encodeImage(String path) {
BASE64Encoder encoder = null;
byte[] b = null;
I
- Request Header简介
aigo
servlet
当一个客户端(通常是浏览器)向Web服务器发送一个请求是,它要发送一个请求的命令行,一般是GET或POST命令,当发送POST命令时,它还必须向服务器发送一个叫“Content-Length”的请求头(Request Header) 用以指明请求数据的长度,除了Content-Length之外,它还可以向服务器发送其它一些Headers,如:
- HttpClient4.3 创建SSL协议的HttpClient对象
alleni123
httpclient爬虫ssl
public class HttpClientUtils
{
public static CloseableHttpClient createSSLClientDefault(CookieStore cookies){
SSLContext sslContext=null;
try
{
sslContext=new SSLContextBuilder().l
- java取反 -右移-左移-无符号右移的探讨
百合不是茶
位运算符 位移
取反:
在二进制中第一位,1表示符数,0表示正数
byte a = -1;
原码:10000001
反码:11111110
补码:11111111
//异或: 00000000
byte b = -2;
原码:10000010
反码:11111101
补码:11111110
//异或: 00000001
- java多线程join的作用与用法
bijian1013
java多线程
对于JAVA的join,JDK 是这样说的:join public final void join (long millis )throws InterruptedException Waits at most millis milliseconds for this thread to die. A timeout of 0 means t
- Java发送http请求(get 与post方法请求)
bijian1013
javaspring
PostRequest.java
package com.bijian.study;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURL
- 【Struts2二】struts.xml中package下的action配置项默认值
bit1129
struts.xml
在第一部份,定义了struts.xml文件,如下所示:
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts
- 【Kafka十三】Kafka Simple Consumer
bit1129
simple
代码中关于Host和Port是割裂开的,这会导致单机环境下的伪分布式Kafka集群环境下,这个例子没法运行。
实际情况是需要将host和port绑定到一起,
package kafka.examples.lowlevel;
import kafka.api.FetchRequest;
import kafka.api.FetchRequestBuilder;
impo
- nodejs学习api
ronin47
nodejs api
NodeJS基础 什么是NodeJS
JS是脚本语言,脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS,浏览器充当了解析器的角色。而对于需要独立运行的JS,NodeJS就是一个解析器。
每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情。例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了docum
- java-64.寻找第N个丑数
bylijinnan
java
public class UglyNumber {
/**
* 64.查找第N个丑数
具体思路可参考 [url] http://zhedahht.blog.163.com/blog/static/2541117420094245366965/[/url]
*
题目:我们把只包含因子
2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14
- 二维数组(矩阵)对角线输出
bylijinnan
二维数组
/**
二维数组 对角线输出 两个方向
例如对于数组:
{ 1, 2, 3, 4 },
{ 5, 6, 7, 8 },
{ 9, 10, 11, 12 },
{ 13, 14, 15, 16 },
slash方向输出:
1
5 2
9 6 3
13 10 7 4
14 11 8
15 12
16
backslash输出:
4
3
- [JWFD开源工作流设计]工作流跳跃模式开发关键点(今日更新)
comsci
工作流
既然是做开源软件的,我们的宗旨就是给大家分享设计和代码,那么现在我就用很简单扼要的语言来透露这个跳跃模式的设计原理
大家如果用过JWFD的ARC-自动运行控制器,或者看过代码,应该知道在ARC算法模块中有一个函数叫做SAN(),这个函数就是ARC的核心控制器,要实现跳跃模式,在SAN函数中一定要对LN链表数据结构进行操作,首先写一段代码,把
- redis常见使用
cuityang
redis常见使用
redis 通常被认为是一个数据结构服务器,主要是因为其有着丰富的数据结构 strings、map、 list、sets、 sorted sets
引入jar包 jedis-2.1.0.jar (本文下方提供下载)
package redistest;
import redis.clients.jedis.Jedis;
public class Listtest
- 配置多个redis
dalan_123
redis
配置多个redis客户端
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=&quo
- attrib命令
dcj3sjt126com
attr
attrib指令用于修改文件的属性.文件的常见属性有:只读.存档.隐藏和系统.
只读属性是指文件只可以做读的操作.不能对文件进行写的操作.就是文件的写保护.
存档属性是用来标记文件改动的.即在上一次备份后文件有所改动.一些备份软件在备份的时候会只去备份带有存档属性的文件.
- Yii使用公共函数
dcj3sjt126com
yii
在网站项目中,没必要把公用的函数写成一个工具类,有时候面向过程其实更方便。 在入口文件index.php里添加 require_once('protected/function.php'); 即可对其引用,成为公用的函数集合。 function.php如下:
<?php /** * This is the shortcut to D
- linux 系统资源的查看(free、uname、uptime、netstat)
eksliang
netstatlinux unamelinux uptimelinux free
linux 系统资源的查看
转载请出自出处:http://eksliang.iteye.com/blog/2167081
http://eksliang.iteye.com 一、free查看内存的使用情况
语法如下:
free [-b][-k][-m][-g] [-t]
参数含义
-b:直接输入free时,显示的单位是kb我们可以使用b(bytes),m
- JAVA的位操作符
greemranqq
位运算JAVA位移<<>>>
最近几种进制,加上各种位操作符,发现都比较模糊,不能完全掌握,这里就再熟悉熟悉。
1.按位操作符 :
按位操作符是用来操作基本数据类型中的单个bit,即二进制位,会对两个参数执行布尔代数运算,获得结果。
与(&)运算:
1&1 = 1, 1&0 = 0, 0&0 &
- Web前段学习网站
ihuning
Web
Web前段学习网站
菜鸟学习:http://www.w3cschool.cc/
JQuery中文网:http://www.jquerycn.cn/
内存溢出:http://outofmemory.cn/#csdn.blog
http://www.icoolxue.com/
http://www.jikexue
- 强强联合:FluxBB 作者加盟 Flarum
justjavac
r
原文:FluxBB Joins Forces With Flarum作者:Toby Zerner译文:强强联合:FluxBB 作者加盟 Flarum译者:justjavac
FluxBB 是一个快速、轻量级论坛软件,它的开发者是一名德国的 PHP 天才 Franz Liedke。FluxBB 的下一个版本(2.0)将被完全重写,并已经开发了一段时间。FluxBB 看起来非常有前途的,
- java统计在线人数(session存储信息的)
macroli
javaWeb
这篇日志是我写的第三次了 前两次都发布失败!郁闷极了!
由于在web开发中常常用到这一部分所以在此记录一下,呵呵,就到备忘录了!
我对于登录信息时使用session存储的,所以我这里是通过实现HttpSessionAttributeListener这个接口完成的。
1、实现接口类,在web.xml文件中配置监听类,从而可以使该类完成其工作。
public class Ses
- bootstrp carousel初体验 快速构建图片播放
qiaolevip
每天进步一点点学习永无止境bootstrap纵观千象
img{
border: 1px solid white;
box-shadow: 2px 2px 12px #333;
_width: expression(this.width > 600 ? "600px" : this.width + "px");
_height: expression(this.width &
- SparkSQL读取HBase数据,通过自定义外部数据源
superlxw1234
sparksparksqlsparksql读取hbasesparksql外部数据源
关键字:SparkSQL读取HBase、SparkSQL自定义外部数据源
前面文章介绍了SparSQL通过Hive操作HBase表。
SparkSQL从1.2开始支持自定义外部数据源(External DataSource),这样就可以通过API接口来实现自己的外部数据源。这里基于Spark1.4.0,简单介绍SparkSQL自定义外部数据源,访
- Spring Boot 1.3.0.M1发布
wiselyman
spring boot
Spring Boot 1.3.0.M1于6.12日发布,现在可以从Spring milestone repository下载。这个版本是基于Spring Framework 4.2.0.RC1,并在Spring Boot 1.2之上提供了大量的新特性improvements and new features。主要包含以下:
1.提供一个新的sprin