- Oracle数据库数据编程SQL<3.6 PL/SQL 包(Package)>
Tyler先森
Oracleoracle数据库sql
包是Oracle数据库中一种重要的PL/SQL程序结构,它将逻辑相关的变量、常量、游标、异常、过程和函数组织在一起,提供了更好的封装性和模块化。在大型项目中,可能有很多模块,而每一个模块又有自己的存过、函数等。而这些存过、函数默认是放在一起的,如果所有的存过函数都是放在一起的那么非常不容易查询和维护,甚至会发生误删除事件。目录一、包的组成1.包规范(PackageSpecification)包头、
- 01 - spring security自定义登录页面
shuair
springsecurityspringjava后端
springsecurity自定义登录页面文档00-springsecurity框架使用使用浏览器自带的登录页面添加一个配置类WebSecurityConfig.java,后续内容也会在此类中进行配置packagexin.yangshuai.springsecurity03.config;importorg.springframework.context.annotation.Bean;impor
- C++位运算精要:高效解题的利器
星途码客
c++算法c++java算法
引言在算法竞赛和底层开发中,位运算(BitManipulation)因其极高的执行效率而广受青睐。它能在O(1)时间复杂度内完成某些复杂操作,大幅优化程序性能。本文系统梳理C++位运算的核心技巧,涵盖基础操作、经典应用、优化策略及实战例题,帮助读者掌握这一高效工具。一、位运算基础1.六大基本操作运算符名称示例(二进制)说明&按位与1010&1100=1000同1为1,否则为0|按位或1010|11
- python推导式及列推导式应用实践
肖永威
Pythonpython开发语言
Python中的推导式是一种简洁且高效的代码编写方式,它允许在一行代码中完成常见的循环和集合及条件操作。Python提供了四种主要的推导式:列表推导式、字典推导式、集合推导式和生成器推导式。这些推导式可以根据一个数据序列构建另一个新的数据序列,常用于数据处理场景,提高可读性,并减少出错的可能性。Python中的推导式(Comprehensions)是一种简洁的构建列表(list)、字典(dic
- doris _stream_load There is no 100-continue header 报错解决
Leo_Hu666
javaDorisflink
问题:{“status”:“FAILED”,“msg”:“Thereisno100-continueheader”}解决:requestheaders增加参数即可:“expect”:“100-continue”完整headers示例:headers={“Content-Type”:“application/json”,“strict_mode”:“false”,“format”:“json”,“r
- 使用Python将TXT文本内容读取后生成指定XML格式的文件
sxf_0123
python
任务说明:解析服务器内存和CPU信息。格式是无后缀的文本格式。将其转换为统一XML格式。源文件名:zmonitor.2017-04-06-14_28172.17.8.64saptmqas_cpu431CPUutilizationpercentage:1%172.17.8.95saptmprd_cpu426CPUutilizationpercentage:6%172.17.8.63saptmdev_
- 初识Redis
反方向的空
Redisredis数据库缓存
初始Redis关于redisRedis(REmoteDIctionaryServer)是一个开源的、高性能的键值存储系统,广泛用于缓存、消息队列、实时分析等场景。它支持多种数据结构,并提供了丰富的特性,使其成为一个功能强大且灵活的工具。Redis之所以受到如此多公司的⻘睐,必然有之过⼈之处,下面是关于Redis的8个重要特性速度快正常情况下,Redis执行命令的速度非常快,官方给出的数字是读写性能
- MultipartFile resource [file] cannot be resolved to absolute file path
gaog2zh
#spring全家桶spring文件上传
项目报错:java.io.FileNotFoundException:MultipartFileresource[file]cannotberesolvedtoabsolutefilepath,图示WebLogAspect为我们的项目日志切面类,用于记录日志原因:MultipartFile使用fastjson序列化会报错解决方案:这里解决方案选择忽略,代码如下/***获取方法的参数*@paramm
- 深入理解java web分层架构的高内聚低耦合
@fishv
java架构springboot
在软件开发中,构建一个高效、可维护且可扩展的应用系统一直是开发者追求的目标。分层架构和依赖注入(IOC)是实现这一目标的重要策略。本文将深入探讨三层架构的高内聚特性、低耦合的设计原则,以及如何通过IOC(控制反转)技术来进一步提升应用的灵活性和可维护性。一、三层架构的含义三层架构是一种常见的软件设计模式,它将应用程序分为三个主要的逻辑层:表示层(请求层)、业务逻辑层(业务处理层)和数据访问层(数据
- 第二章:ROS架构_《ROS机器人开发实践》_notes
lianghu666
硬件和智能机器人架构机器人
第二章核心内容总结一、核心架构计算图(ComputationGraph)节点(Node):独立执行单元消息(Message):严格类型定义的数据结构话题(Topic):异步通信机制服务(Service):同步请求/响应模式节点管理器(ROSMaster):命名注册与协调文件系统功能包(Package):最小功能单元元功能包(Metapackage):逻辑集合多个功能包工作空间覆盖(Overlay)
- TCP与UDP详解(非常详细)零基础入门到精通,收藏这一篇就够了
网络安全大白
网络安全程序员科技tcp/ipudp网络协议
在计算机网络中,传输层是OSI模型中的第四层,负责确保数据能够在不同网络之间的主机间可靠传输。传输控制协议(TCP)和用户数据报协议(UDP)是传输层中最常用的两种协议。虽然它们都用于数据传输,但在功能和应用场景上却有显著的不同。本文将详细讲解TCP与UDP的异同,帮助你更好地理解这两种协议。一、TCP(TransmissionControlProtocol)1.连接建立三次握手:TCP是一种面向
- 【Spring事务管理全解析】从原理到实战:保证数据一致性的终极指南
2401_83194332
数据库java开发语言
(附@Transactional注解深度剖析与常见踩坑解决方案)开篇:事务管理为什么重要?假设银行转账场景:A向B转账100元,需执行两个操作:1️⃣A账户扣除100→2️⃣B账户增加100如果步骤1成功后系统崩溃,将导致数据不一致。事务管理的核心使命:通过ACID特性(原子性、一致性、隔离性、持久性)确保多个操作要么全部成功,要么全部回滚。一、Spring事务管理两大模式1.1编程式事务管理(手
- 红宝书第二十四讲:详解BOM对象:window、location、history
前端javascript
红宝书第二十四讲:详解BOM对象:window、location、history资料取自《JavaScript高级程序设计(第5版)》。查看总目录:红宝书学习大纲一、BOM核心:window对象window对象是浏览器窗口的入口,同时扮演全局作用域角色(所有全局变量/函数都挂载在window上)1。//全局变量实际是window的属性varname="小明";console.log(window.
- 什么是CRM?企业客户管理的全面指南
crm客户管理crm系统
在当今竞争激烈的商业环境中,客户关系管理(CRM,CustomerRelationshipManagement)已经成为企业成功的关键工具之一。无论是初创企业还是大型跨国公司,CRM系统都能帮助企业更高效地管理客户关系、优化销售流程、提升客户满意度,从而实现业务增长。那么,什么是CRM?它如何帮助企业实现客户管理的全面优化?一、什么是CRM?CRM(客户关系管理)是一种以客户为中心的管理理念和技术
- 工业 4.0 与大模型协同驱动企业深度价值实现 —— 基于 DEEPSEEK 框架的理论与实践
Wnq10072
DEEPSEEK大模型工业4.0人工智能
引言工业4.0通过物联网(IoT)、数字孪生、边缘计算等技术重构制造业价值链,而大模型(LargeLanguageModels,LLM)的涌现为数据价值挖掘提供了新范式。本文提出DEEPSEEK价值实现框架(Data-drivenExploration,Enhancement,Prediction,andSmartDecision-making),论证工业4.0基础设施是大模型赋能企业的必要前提,
- 解决elementUi el-select 响应式不生效的问题
是你的小熊啊
elementuivue.js前端
情况一,字段类型不匹配考虑option的value值的字段类型是否和api返回的字段类型一致,如果一个为字符串一个为数字类型是无法匹配上的import{ref,reactive,onMounted}from'vue'importaxiosfrom'axios';constoptions=[{value:'Option1',label:'1',},{value:'Option2',label:'2'
- FEDGLOSS算法BEYOND LOCAL SHARPNESS:COMMUNICATION-EFFICIENT GLOBALSHARPNESS-AWARE MINIMIZATIONFOR
还不秃顶的计科生
联邦学习人工智能
第一部分:解决的问题数据异构性:客户端数据分布差异导致本地和全局损失地形(losslandscape)不一致,本地优化可能收敛到尖锐最小值,影响全局模型的泛化。现有方法的局限性:如FEDSAM在客户端使用SAM优化本地尖锐性,但无法保证全局平坦性;FEDSMOO引入全局信息但通信开销翻倍。第二部分:论文idea解决客户端更新与全局模型不一致的问题。(1)全局锐度优化在服务器端,使用SAM技术来寻找
- JavaRestClient操作Elasticsearch查询所有(match_all)
常家壮
#Elasticsearchelasticsearchjavaes搜索引擎
导包导包可以根据文档里导入依赖这里就不写依赖了查询所有importcom.google.gson.Gson;importcom.leyou.pojo.Item;importorg.apache.http.HttpHost;importorg.elasticsearch.action.search.SearchRequest;importorg.elasticsearch.action.search
- JavaRestClient操作Elasticsearch范围查询(range)
常家壮
#Elasticsearchelasticsearches搜索引擎
导包导包可以根据文档里导入依赖这里就不写依赖了范围查询(range)importcom.google.gson.Gson;importcom.leyou.pojo.Item;importorg.apache.http.HttpHost;importorg.elasticsearch.action.search.SearchRequest;importorg.elasticsearch.action
- python tkinter ttk_tkinter.ttk
weixin_40002611
pythontkinterttk
Treeview¶Thettk.Treeviewwidgetdisplaysahierarchicalcollectionofitems.Eachitemhasatextuallabel,anoptionalimage,andanoptionallistofdatavalues.Thedatavaluesaredisplayedinsuccessivecolumnsafterthetreelabe
- python tclerror__tkinter.TclError:命令名称无效" .4302957584" (_tkinter.TclError: invalid command name ".4...
weixin_39669265
pythontclerror
2013-04-1712:09:250Whenclosingthepython3program,Igetastrangeexceptionintheconsole.ThePython3code:fromtkinterimport*fromrandomimportrandint#Returnarandomcolorstringintheformof#RRGGBBdefgetRandomColor()
- [Visual Studio] VC++项目属性之C/C++运行库设置
老狼IT工作室
C++visualstudiovisualstudioc++
什么是MSVC运行库(CRT)?MSVC(MicrosoftVisualC++)的运行库是一组库文件,它们包含了一些常用的函数和数据结构,可以在程序运行时被调用。这些库文件通常会被编译到程序中,以提高程序的性能和可移植性。MSVC的运行库包括以下几个部分:标准库:包含了一些基本的函数和数据结构,如字符串、数组、链表等。数学库:包含了一些数学函数,如三角函数、对数函数、指数函数等。图形库:包含了一些
- pip安装Flask失败
祈风~
pip
WARNING:Retrying(Retry(total=4,connect=None,read=None,redirect=None,status=None))afterconnectionbrokenby'SSLError(SSLZeroReturnError(6,'TLS/SSLconnectionhasbeenclosed(EOF)(_ssl.c:1131)'))':/simple/fla
- windows解决:OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized.
清梦枕星河~
常用高效技巧软件方法和命令等windowsbug
在windows系统上的conda环境运行代码出现bug:OMP:Error#15:Initializinglibiomp5md.dll,butfoundlibiomp5md.dllalreadyinitialized.OMP:HintThismeansthatmultiplecopiesoftheOpenMPruntimehavebeenlinkedintotheprogram.Thatisda
- 双向流式AI语音项目教程
谢忻含Norma
双向流式AI语音项目教程bidirectional_streaming_ai_voicePythonscriptstohandleatwowayvoiceconversationwithAnthropicClaude,usingElevenLabs,Faster-Whisper,andPygame.项目地址:https://gitcode.com/gh_mirrors/bi/bidirection
- Appium自动化(13):Appium常用操作之TouchAction操作
奔跑在路上you
Appiumappium自动化android
TouchAction操作Appium的辅助类,主要针对手势操作,比如滑动、长按、拖动等。其原理是将一系列的动作放在一个链条中,然后将该链条传递给服务器。服务器接受到该链条后,解析各个动作,逐个执行。TouchAction类支持的动作很多;常用操作如下:1、press(self,el=None,x=None,y=None):按压一个元素或坐标,el为要点击的元素,x/y为坐标2、long_pres
- python报错:OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized
一只松鼠呀
pythonbug
.py文件运行时出现错误:Error#15:Initializinglibiomp5md.dll,butfoundlibiomp5md.dllalreadyinitialized解决方法:在当前.py文件中添加以下两行代码即可importosos.environ['KMP_DUPLICATE_LIB_OK']='TRUE'
- IOS HTTPS代理抓包工具使用教程
2501_91395135
httpudphttpswebsocket网络安全网络协议tcp/ip
打开抓包软件在设备列表中选择要抓包的设备,然后选择功能区域中的HTTPS代理抓包。根据弹出的提示按照配置文件和设置手机代理。如果是本机则会自动配置,只需要按照提醒操作即可。对于需要更专业抓包工具的用户,可以尝试使用SniffMaster(抓包大师),它提供了更直观的界面和强大的分析功能,特别适合开发者进行深度网络调试。iOS抓包准备通过USB将iOS设备连接到电脑,设备需解锁并处于亮屏状态。如果设
- MybatisPlus的基本使用
Nhuanuary
MybatisPlusspringboot
文章目录介绍特性工作流程图添加依赖SpringBoot2SpringBoot3配置定义Mapper接口并继承BaseMapperServer接口自定义Service接口继承IServie接口自定义Service实现类,实现自定义接口并继承ServiceImpl添加Config类常用注解:@TableName@TableId@TableField@TableLogic@Version@EnumVal
- Visual Studio2022设置默认std标准库版本
爱蜜莉雅丶Emilia
C++visualstudioide
一.设置方法路径:C:\ProgramFiles\MicrosoftVisualStudio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.Cl.Common.props代码块:70:stdcpp2071:stdc17设置完后,默认就以指定的标准库版本进行设置了。二.设置参数C++语言标准(LanguageStandard)的可填写Name值
- ASM系列四 利用Method 组件动态注入方法逻辑
lijingyao8206
字节码技术jvmAOP动态代理ASM
这篇继续结合例子来深入了解下Method组件动态变更方法字节码的实现。通过前面一篇,知道ClassVisitor 的visitMethod()方法可以返回一个MethodVisitor的实例。那么我们也基本可以知道,同ClassVisitor改变类成员一样,MethodVIsistor如果需要改变方法成员,注入逻辑,也可以
- java编程思想 --内部类
百合不是茶
java内部类匿名内部类
内部类;了解外部类 并能与之通信 内部类写出来的代码更加整洁与优雅
1,内部类的创建 内部类是创建在类中的
package com.wj.InsideClass;
/*
* 内部类的创建
*/
public class CreateInsideClass {
public CreateInsideClass(
- web.xml报错
crabdave
web.xml
web.xml报错
The content of element type "web-app" must match "(icon?,display-
name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,s
- 泛型类的自定义
麦田的设计者
javaandroid泛型
为什么要定义泛型类,当类中要操作的引用数据类型不确定的时候。
采用泛型类,完成扩展。
例如有一个学生类
Student{
Student(){
System.out.println("I'm a student.....");
}
}
有一个老师类
- CSS清除浮动的4中方法
IT独行者
JavaScriptUIcss
清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近。CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受。
1、结尾处加空div标签 clear:both 1 2 3 4
.div
1
{
background
:
#000080
;
border
:
1px
s
- Cygwin使用windows的jdk 配置方法
_wy_
jdkwindowscygwin
1.[vim /etc/profile]
JAVA_HOME="/cgydrive/d/Java/jdk1.6.0_43" (windows下jdk路径为D:\Java\jdk1.6.0_43)
PATH="$JAVA_HOME/bin:${PATH}"
CLAS
- linux下安装maven
无量
mavenlinux安装
Linux下安装maven(转) 1.首先到Maven官网
下载安装文件,目前最新版本为3.0.3,下载文件为
apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令;
2.进入下载文件夹,找到下载的文件,运行如下命令解压
tar -xvf apache-maven-2.2.1-bin.tar.gz
解压后的文件夹
- tomcat的https 配置,syslog-ng配置
aichenglong
tomcathttp跳转到httpssyslong-ng配置syslog配置
1) tomcat配置https,以及http自动跳转到https的配置
1)TOMCAT_HOME目录下生成密钥(keytool是jdk中的命令)
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit
- 关于领号活动总结
alafqq
活动
关于某彩票活动的总结
具体需求,每个用户进活动页面,领取一个号码,1000中的一个;
活动要求
1,随机性,一定要有随机性;
2,最少中奖概率,如果注数为3200注,则最多中4注
3,效率问题,(不能每个人来都产生一个随机数,这样效率不高);
4,支持断电(仍然从下一个开始),重启服务;(存数据库有点大材小用,因此不能存放在数据库)
解决方案
1,事先产生随机数1000个,并打
- java数据结构 冒泡排序的遍历与排序
百合不是茶
java
java的冒泡排序是一种简单的排序规则
冒泡排序的原理:
比较两个相邻的数,首先将最大的排在第一个,第二次比较第二个 ,此后一样;
针对所有的元素重复以上的步骤,除了最后一个
例题;将int array[]
- JS检查输入框输入的是否是数字的一种校验方法
bijian1013
js
如下是JS检查输入框输入的是否是数字的一种校验方法:
<form method=post target="_blank">
数字:<input type="text" name=num onkeypress="checkNum(this.form)"><br>
</form>
- Test注解的两个属性:expected和timeout
bijian1013
javaJUnitexpectedtimeout
JUnit4:Test文档中的解释:
The Test annotation supports two optional parameters.
The first, expected, declares that a test method should throw an exception.
If it doesn't throw an exception or if it
- [Gson二]继承关系的POJO的反序列化
bit1129
POJO
父类
package inheritance.test2;
import java.util.Map;
public class Model {
private String field1;
private String field2;
private Map<String, String> infoMap
- 【Spark八十四】Spark零碎知识点记录
bit1129
spark
1. ShuffleMapTask的shuffle数据在什么地方记录到MapOutputTracker中的
ShuffleMapTask的runTask方法负责写数据到shuffle map文件中。当任务执行完成成功,DAGScheduler会收到通知,在DAGScheduler的handleTaskCompletion方法中完成记录到MapOutputTracker中
- WAS各种脚本作用大全
ronin47
WAS 脚本
http://www.ibm.com/developerworks/cn/websphere/library/samples/SampleScripts.html
无意中,在WAS官网上发现的各种脚本作用,感觉很有作用,先与各位分享一下
获取下载
这些示例 jacl 和 Jython 脚本可用于在 WebSphere Application Server 的不同版本中自
- java-12.求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句
bylijinnan
switch
借鉴网上的思路,用java实现:
public class NoIfWhile {
/**
* @param args
*
* find x=1+2+3+....n
*/
public static void main(String[] args) {
int n=10;
int re=find(n);
System.o
- Netty源码学习-ObjectEncoder和ObjectDecoder
bylijinnan
javanetty
Netty中传递对象的思路很直观:
Netty中数据的传递是基于ChannelBuffer(也就是byte[]);
那把对象序列化为字节流,就可以在Netty中传递对象了
相应的从ChannelBuffer恢复对象,就是反序列化的过程
Netty已经封装好ObjectEncoder和ObjectDecoder
先看ObjectEncoder
ObjectEncoder是往外发送
- spring 定时任务中cronExpression表达式含义
chicony
cronExpression
一个cron表达式有6个必选的元素和一个可选的元素,各个元素之间是以空格分隔的,从左至右,这些元素的含义如下表所示:
代表含义 是否必须 允许的取值范围 &nb
- Nutz配置Jndi
ctrain
JNDI
1、使用JNDI获取指定资源:
var ioc = {
dao : {
type :"org.nutz.dao.impl.NutDao",
args : [ {jndi :"jdbc/dataSource"} ]
}
}
以上方法,仅需要在容器中配置好数据源,注入到NutDao即可.
- 解决 /bin/sh^M: bad interpreter: No such file or directory
daizj
shell
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:
1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具
- [转]for 循环为何可恨?
dcj3sjt126com
程序员读书
Java的闭包(Closure)特征最近成为了一个热门话题。 一些精英正在起草一份议案,要在Java将来的版本中加入闭包特征。 然而,提议中的闭包语法以及语言上的这种扩充受到了众多Java程序员的猛烈抨击。
不久前,出版过数十本编程书籍的大作家Elliotte Rusty Harold发表了对Java中闭包的价值的质疑。 尤其是他问道“for 循环为何可恨?”[http://ju
- Android实用小技巧
dcj3sjt126com
android
1、去掉所有Activity界面的标题栏
修改AndroidManifest.xml 在application 标签中添加android:theme="@android:style/Theme.NoTitleBar"
2、去掉所有Activity界面的TitleBar 和StatusBar
修改AndroidManifes
- Oracle 复习笔记之序列
eksliang
Oracle 序列sequenceOracle sequence
转载请出自出处:http://eksliang.iteye.com/blog/2098859
1.序列的作用
序列是用于生成唯一、连续序号的对象
一般用序列来充当数据库表的主键值
2.创建序列语法如下:
create sequence s_emp
start with 1 --开始值
increment by 1 --増长值
maxval
- 有“品”的程序员
gongmeitao
工作
完美程序员的10种品质
完美程序员的每种品质都有一个范围,这个范围取决于具体的问题和背景。没有能解决所有问题的
完美程序员(至少在我们这个星球上),并且对于特定问题,完美程序员应该具有以下品质:
1. 才智非凡- 能够理解问题、能够用清晰可读的代码翻译并表达想法、善于分析并且逻辑思维能力强
(范围:用简单方式解决复杂问题)
- 使用KeleyiSQLHelper类进行分页查询
hvt
sql.netC#asp.nethovertree
本文适用于sql server单主键表或者视图进行分页查询,支持多字段排序。KeleyiSQLHelper类的最新代码请到http://hovertree.codeplex.com/SourceControl/latest下载整个解决方案源代码查看。或者直接在线查看类的代码:http://hovertree.codeplex.com/SourceControl/latest#HoverTree.D
- SVG 教程 (三)圆形,椭圆,直线
天梯梦
svg
SVG <circle> SVG 圆形 - <circle>
<circle> 标签可用来创建一个圆:
下面是SVG代码:
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<circle cx="100" c
- 链表栈
luyulong
java数据结构
public class Node {
private Object object;
private Node next;
public Node() {
this.next = null;
this.object = null;
}
public Object getObject() {
return object;
}
public
- 基础数据结构和算法十:2-3 search tree
sunwinner
Algorithm2-3 search tree
Binary search tree works well for a wide variety of applications, but they have poor worst-case performance. Now we introduce a type of binary search tree where costs are guaranteed to be loga
- spring配置定时任务
stunizhengjia
springtimer
最近因工作的需要,用到了spring的定时任务的功能,觉得spring还是很智能化的,只需要配置一下配置文件就可以了,在此记录一下,以便以后用到:
//------------------------定时任务调用的方法------------------------------
/**
* 存储过程定时器
*/
publi
- ITeye 8月技术图书有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的8月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
8月试读活动回顾:
http://webmaster.iteye.com/blog/2102830
本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《跨终端Web》
gleams:http