//各种尺寸
s +=
"\r\n网页可见区域宽:" + document.body.clientWidth;
s +=
"\r\n网页可见区域高:" + document.body.clientHeight;
s +=
"\r\n网页可见区域高:" + document.body.offsetWeight +
" (包括边线的宽)" ;
s +=
"\r\n网页可见区域高:" + document.body.offsetHeight +
" (包括边线的宽)" ;
s +=
"\r\n网页正文全文宽:" + document.body.scrollWidth;
s +=
"\r\n网页正文全文高:" + document.body.scrollHeight;
s +=
"\r\n网页被卷去的高:" + document.body.scrollTop;
s +=
"\r\n网页被卷去的左:" + document.body.scrollLeft;
s +=
"\r\n网页正文部分上:" + window.screenTop;
s +=
"\r\n网页正文部分左:" + window.screenLeft;
s +=
"\r\n屏幕分辨率的高:" + window.screen.height;
s +=
"\r\n屏幕分辨率的宽:" + window.screen.width;
s +=
"\r\n屏幕可用工作区高度:" + window.screen.availHeight;
s +=
"\r\n屏幕可用工作区宽度:" + window.screen.availWidth;
//过滤数字
"return event.keyCode>=48&&event.keyCode<=57||(this.value.indexOf('.')<0?event.keyCode==46:false)" οnpaste="return !clipboardData.getData('text').match(/\D/)" οndragenter="return false" >
//特殊用途
"window.external.ImportExportFavorites(true,'http://localhost');" > "window.external.ImportExportFavorites(false,'http://localhost');" > "window.external.ShowBrowserUI('OrganizeFavorites', null)"> "window.external.ShowBrowserUI('LanguageDialog', null)"> "window.external.AddFavorite('http://www.google.com/', 'google')" > "window.external.addChannel('http://www.google.com/')" > "window.external.showBrowserUI('PrivacySettings',null)">
//不缓存
"pragma" CONTENT="no-cache" > "Cache-Control" CONTENT="no-cache, must-revalidate" > "expires" CONTENT="0" >
//正则匹配
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空行的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/
匹配首尾空格的正则表达式:(^\s*)|(\s*$)(像vbscript那样的trim函数)
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配网址URL的正则表达式:http:
//([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
以下是例子:
利用正则表达式限制网页表单里的文本框输入内容:
用正则表达式限制只能输入中文:οnkeyup=
"value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste=
"clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"
1.用正则表达式限制只能输入全角字符: οnkeyup=
"value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste=
"clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"
2.用正则表达式限制只能输入数字:οnkeyup=
"value=value.replace(/[^\d]/g,'') " onbeforepaste=
"clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
3.用正则表达式限制只能输入数字和英文:οnkeyup=
"value=value.replace(/[\W]/g,'') " onbeforepaste=
"clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
//消除图像工具栏
"mypicture.jpg" HEIGHT="100px" WIDTH="100px" GALLERYIMG="false" > or "imagetoolbar" content="no" >
//无提示关闭
function Close()
{
var ua=navigator.userAgent
var ie=navigator.appName==
"Microsoft Internet Explorer" ?
true :false
if (ie)
{
var IEversion=parseFloat(ua.substring(ua.indexOf(
"MSIE " )+5,ua.indexOf(
";" ,ua.indexOf(
"MSIE " ))))
if (IEversion< 5.5)
{
var str = '
"clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">'
str += ' "Command" value=
"Close" > ';
document.body.insertAdjacentHTML(
"beforeEnd" , str);
document.all.noTipClose.Click();
}
else
{
window.opener =
null ;
window.close();
}
}
else
{
window.close()
}
}
//取得控件得绝对位置(1)
//获得控件的绝对位置(2)
oRect = obj.getBoundingClientRect();
oRect.left
oRect.
//最小化,最大化,关闭
//光标停在文字最后
"123" οnfοcus=
"cc()" >
//页面进入和退出的特效
进入页面 "Page-Enter" content=
"revealTrans(duration=x, transition=y)" >
推出页面 "Page-Exit" content=
"revealTrans(duration=x, transition=y)" >
这个是页面被载入和调出时的一些特效。duration表示特效的持续时间,以秒为单位。transition表示使
用哪种特效,取值为1-23:
0 矩形缩小
1 矩形扩大
2 圆形缩小
3 圆形扩大
4 下到上刷新
5 上到下刷新
6 左到右刷新
7 右到左刷新
8 竖百叶窗
9 横百叶窗
10 错位横百叶窗
11 错位竖百叶窗
12 点扩散
13 左右到中间刷新
14 中间到左右刷新
15 中间到上下
16 上下到中间
17 右下到左上
18 右上到左下
19 左上到右下
20 左下到右上
21 横条
22 竖条
23
//网页是否被检索
"ROBOTS" content="属性值" > 其中属性值有以下一些: 属性值为"all" : 文件将被检索,且页上链接可被查询; 属性值为"none" : 文件不被检索,而且不查询页上的链接; 属性值为"index" : 文件将被检索; 属性值为"follow" : 查询页上的链接; 属性值为"noindex" : 文件不检索,但可被查询链接; 属性值为"nofollow" :
//打印分页
"page-break-after:always"
>page1
"page-break-after:always">page2
//设置打印
//自带的打印预览
WebBrowser.ExecWB(1,1) 打开
Web.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口
Web.ExecWB(4,1) 保存网页
Web.ExecWB(6,1) 打印
Web.ExecWB(7,1) 打印预览
Web.ExecWB(8,1) 打印页面设置
Web.ExecWB(10,1) 查看页面属性
Web.ExecWB(15,1) 好像是撤销,有待确认
Web.ExecWB(17,1) 全选
Web.ExecWB(22,1) 刷新
Web.ExecWB(45,1) 关闭窗体无提示
"WebBrowser" width=0 height=0 classid=
"CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" >
"Noprint" >
//去掉打印时的页眉页脚
"button" value=
"清空页码" οnclick=PageSetup_Null()>
"button" value=
"恢复页码" οnclick=PageSetup_Default()>
//浏览器验证
function checkBrowser()
{
this .ver=navigator.appVersion
this .dom=document.getElementById?1:0
this .ie6=(
this .ver.indexOf(
"MSIE 6" )>-1 &&
this .dom)?1:0;
this .ie5=(
this .ver.indexOf(
"MSIE 5" )>-1 &&
this .dom)?1:0;
this .ie4=(document.all && !
this .dom)?1:0;
this .ns5=(
this .dom && parseInt(
this .ver) >= 5) ?1:0;
this .ns4=(document.layers && !
this .dom)?1:0;
this .mac=(
this .ver.indexOf('Mac') > -1) ?1:0;
this .ope=(navigator.userAgent.indexOf('Opera')>-1);
this .ie=(
this .ie6 ||
this .ie5 ||
this .ie4)
this .ns=(
this .ns4 ||
this .ns5)
this .bw=(
this .ie6 ||
this .ie5 ||
this .ie4 ||
this .ns5 ||
this .ns4 ||
this .mac ||
this .ope)
this .nbw=(!
this .bw)
return
this ;
}
//计算内容宽和高
"button" value=
"计算内容宽度" onClick=
"test(txt)" >
//无模式的提示框
function modelessAlert(Msg)
{
window.showModelessDialog(
"javascript:alert(\"" +escape(Msg)+
"\");window.close();" ,
"" ,
"status:no;resizable:no;help:no;dialogHeight:height:30px;dialogHeight:40px;" );
}
//屏蔽按键
"Content-Type" content=
"text/html; charset=gb2312" >
"refresh" content=
"0;url=about:noscript" >
屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键
屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键
//屏蔽打印
//移动的图层,拖动
1.
this ) οnmοusemοve=MouseMove() οnmοuseup=MouseUp()>meizz
2.
"myDiv" src=
"logo.gif" οndrag=
"doDrag();" οnmοuseοver=
"this.style.cursor='hand'" style=
"position:absolute;left=100;top=100;" οnmοusedοwn=
"doMouseDown();" >
"#" οnclick=
"return false" >wlecome
//文档状态改变
//刷新后不变的文本框
"save" CONTENT="history" >
//访问剪贴板
(1)拖拽访问 event.dataTransfer.setData("URL" , oImage.src); sImageURL = event.dataTransfer.getData("URL" ) (2)普通访问 window.clipboardData.setData("Text" ,oSource.innerText); window.clipboardData.getData("Text" );
//操作COOKIE
function SetCookie(sName, sValue)
{
document.cookie = sName +
"=" + escape(sValue) +
"; " ;
}
function GetCookie(sName)
{
var aCookie = document.cookie.split(
"; " );
for (
var i=0; i < aCookie.length; i++)
{
var aCrumb = aCookie[i].split(
"=" );
if (sName == aCrumb[0])
return unescape(aCrumb[1]);
}
}
function DelCookie(sName)
{
document.cookie = sName +
"=" + escape(sValue) +
"; expires=Fri, 31 Dec 1999 23:59:59 GMT;" ;
}
//setTimeout增加参数
//自定义的apply,call
Function.prototype.apply =
function (obj, argu) {
if (obj) obj.constructor.prototype._caller =
this ;
var argus =
new
Array ();
for (
var i=0;i
argus[i] =
"argu[" + i +
"]" ;
var r;
eval(
"r = " + (obj ? (
"obj._caller(" + argus.join(
"," ) +
");" ) : (
"this(" + argus.join(
"," ) +
");" )));
return r;
};
Function.prototype.call =
function (obj) {
var argu =
new
Array ();
for (
var i=1;i argu[i-1] = arguments[i];
return
this .apply(obj, argu);
};
//下载文件
function DownURL(strRemoteURL,strLocalURL)
{
try
{
var xmlHTTP=
new
ActiveXObject (
"Microsoft.XMLHTTP" );
xmlHTTP.open(
"Get" ,strRemoteURL,
false );
xmlHTTP.send();
var adodbStream=
new
ActiveXObject (
"ADODB.Stream" );
adodbStream.Type=1;
//1=adTypeBinary
adodbStream.Open();
adodbStream.write(xmlHTTP.responseBody);
adodbStream.SaveToFile(strLocalURL,2);
adodbStream.Close();
adodbStream=
null ;
xmlHTTP=
null ;
}
catch (e)
{
window.confirm(
"下载URL出错!" );
}
//window.confirm("下载完成." );
}
//检验连接是否有效
function getXML(URL) { var xmlhttp = new ActiveXObject ("microsoft.xmlhttp" ); xmlhttp.Open("GET" ,URL, false ); try { xmlhttp.Send(); } catch (e){} finally { var result = xmlhttp.responseText; if (result) { if (xmlhttp.Status==200) { return (true ); } else { return (false ); } } else { return (false ); } } }
//POST代替FORM
//readyState是xmlhttp返回数据的进度,0=载入中,1=未初始化,2=已载入,3=运行中,4=完成
//组件是否安装 isComponentInstalled("{6B053A4B-A7EC-4D3D-4567-B8FF8A1A5739}", "componentID"))
//检查网页是否存在
function CheckURL(URL)
{
var xmlhttp =
new
ActiveXObject (
"Microsoft.XMLHTTP" );
xmlhttp.Open(
"GET" ,URL,
false );
try
{
xmlhttp.Send();
var result = xmlhttp.status;
}
catch (e) {
return (
false ); }
if (result==200)
{
return
true ;
}
xmlhttp =
null ;
return
false ;
}
//连接数据库
//使用数据岛
srno: "76">
times: "76">
"first" TYPE=button value=
"<< 第一条记录" οnclick=
"xmldate.recordset.moveFirst()" >
"prev" TYPE=button value=
"<上一条记录" οnclick=
"xmldate.recordset.movePrevious()" >
"next" TYPE=button value=
"下一条记录>" οnclick=
"xmldate.recordset.moveNext()" >
"last" TYPE=button value=
"最后一条记录>>" οnclick=
"xmldate.recordset.moveLast()" >
"Add" TYPE=button value=
"添加新记录" οnclick=
"xmldate.recordset.addNew()" >
"xmldate">
20041025-01
null
20041101-09 2004年10月1日2点22分0秒
//获得参数
//可编辑SELECT
"width:100px;height:21px;font-size:10pt;">"width:18px;border:0px solid red;" >"r00" style=
"margin-left:-100px;width:118px; background-color:#FFEEEE;" onChange=
"document.all.re_name.value=this.value;" >
"1">11111111
"2">222222
"3">333333
//设置光标位置
function getCaret(textbox)
{
var control = document.activeElement;
textbox.focus();
var rang = document.selection.createRange();
rang.setEndPoint(
"StartToStart" ,textbox.createTextRange())
control.focus();
return rang.text.length;
}
function setCaret(textbox,pos)
{
try
{
var r =textbox.createTextRange();
r.moveStart('character',pos);
r.collapse(
true );
r.select();
}
catch (e)
{}
}
function selectLength(textbox,start,len)
{
try
{
var r =textbox.createTextRange();
r.moveEnd('character',len-(textbox.value.length-start));
r.moveStart('character',start);
r.select();
}
catch (e)
{
//alert(e.description)}
}
function insertAtCaret(textbox,text)
{
textbox.focus();
document.selection.createRange().text = text;
}
//页内查找
function findInPage(str)
{
var txt, i, found,n = 0;
if (str ==
"" )
{
return
false ;
}
txt = document.body.createTextRange();
for (i = 0; i <= n && (found = txt.findText(str)) !=
false ; i++)
{
txt.moveStart(
"character" , 1);
txt.moveEnd(
"textedit" );
}
if (found)
{
txt.moveStart(
"character" , -1);
txt.findText(str);
txt.select();
txt.scrollIntoView();
n++;
}
else
{
if (n > 0)
{
n = 0;
findInPage(str);
}
else
{
alert(str +
"... 您要找的文字不存在。\n \n请试着输入页面中的关键字再次查找!" );
}
}
return
false ;
}
//书
http://www.itpub.net/attachment.php?s=&postid=1894598
http://www.wrclub.net/down/listdown.aspx?id=1341
//操作EXECL
//自定义提示条
//插入文字
document.onclick =
function (){
var oSource = window.event.srcElement;
if (oSource.tagName!=
"DIV" )
return
false ;
var sel = document.selection;
if (sel!=
null ) {
var rng = sel.createRange();
if (rng!=
null )
rng.pasteHTML(
"插入文字 " );
}
}
//netscapte下操作xml
doc = new ActiveXObject ("Msxml2.DOMDocument" ); doc = new ActiveXObject ("Microsoft.XMLDOM" ) ->> doc = (new DOMParser()).parseFromString(sXML,'text/xml')
//判断键值
"Content-Type" content="text/html; charset=gb2312" > //Javascript Document.
请按任意一个键。。。。
//禁止FSO
1.注销组件
regsvr32 /u scrrun.dll
2.修改PROGID
HKEY_CLASSES_ROOT\Scripting.FileSystemObject
Scripting.FileSystemObject
3.对于使用object的用户,修改HKEY_CLASSES_ROOT\Scripting.
//省略号
"width: 120px; height: 50px; border: 1px solid blue; overflow: hidden; text-overflow:ellipsis"> 就是比如有一行文字,很长,表格内一行显示不下.
//检测media play版本
"oClientCaps" style="{behavior:url(#default#clientcaps)}" />
//图象按比例
".." onload =
"DrawImage(this)" >
//细线SELECT
<span style="border:1px solid #000000; position:absolute; overflow:hidden;" > <select style="margin:-2px;" > <option >1111</option > <option >11111111111111</option > <option >111111111</option > </select ></span >
//Import
function Import() {
for(
var i=0; i
var file = arguments[i];
if ( file.match(/\.js$/i))
document.write('
//取得innerText
//mergeAttributes 复制所有读/写标签属性到指定元素。
ID=
"oDiv"
ATTRIBUTE1=
"true"
ATTRIBUTE2=
"true"
οnclick=
"alert('click');"
οnmοuseοver=
"this.style.color='#0000FF';"
οnmοuseοut=
"this.style.color='#000000';"
>
This is a sample DIV element.
"oDiv2">
This is another sample DIV element.
TYPE=
"button"
VALUE=
"Merge Attributes"
οnclick=
"fnMerge()"
>
你可能感兴趣的:(javascript,js,Java,JavaScript,函数,正则表达式,Internet,Explorer)
JavaScript函数的命名方式
哲子君
js javascript
函数的命名方式JavaScript代码服用单位是函数,函数可以包含一段可执行代码,也可以接受调用者传入的参数。JavaScript定义函数主要有以下三种方式:第一种方式:命名函数function函数名(参数列表){//function声明函数的关键字要执行的语句块;}functionmyAge(age){document.write('我的年龄是'+age)//我的年龄是19}myAge(19)/
《JAVA 进阶: Java常用类》
HarkerYX
【 Java_Scala 基础 】
一、字符串相关的类1.String类String类:代表字符串。Java程序中的所有字符串字面值(如"abc")都作为此类的实例实现。String是一个final类,代表不可变的字符序列,就算重新赋值,或使用“+=”,或者使用方法对字符串的内容进行修改,都不会改变原来字符串的内容字符串是常量,用双引号引起来表示。它们的值在创建之后不能更改。String底层其是一个char[]而且被final所修饰
JSP基础实践项目:创建交互式网站案例
DIY飞跃计划
本文还有配套的精品资源,点击获取简介:JSP(JavaServerPages)是一种动态网页技术,通过将HTML与Java代码结合,简化了JavaWeb应用的开发。本案例面向初学者,包含多个JSP页面,演示了数据展示、用户输入处理等功能。页面由静态和动态内容组成,展示了JSP生命周期的三个阶段、内置对象、动作标签等核心概念。还包括JavaBean的使用和MVC设计模式的基础。案例包含JSP文件、J
JDBC连接池
晚安720
开发语言 java
1.把对所有Dao类的操作——抽取一个父类抽取:公共的属性、获取连接对象、增删改操作把Dao类中的所有公共内容抽取到一个父类packagecom.zmq.dao;importcom.alibaba.druid.pool.DruidDataSourceFactory;importjavax.sql.DataSource;importjava.io.IOException;importjava.io.
JavaScript函数详细介绍
叶子yes
前端 JavaScript javascript 前端 开发语言
一、函数介绍函数就是将实现特定功能的代码封装起来,当我们需要实现特定功能时,直接调用函数实现即可,不需要每次都写一堆代码,实现代码的复用。函数的作用:1、实现功能的封装,提高代码复用率2、用于构建对象的模板(构造函数)函数实际上是对象,每个函数都是Function类型的实例,并且都与其他引用类型一样具有属性和方法,由于函数是对象,因此函数名实际上也是一个指向函数对象的指针,不会与某个函数绑定。二、
深入了解 mica-auto:自动生成 Java SPI 和 Spring Boot 配置的利器
狂飙程序员
java spring boot 数据库
1.mica-auto出现的背景在Java开发中,尤其是在构建SpringBoot项目和使用JavaSPI(ServiceProviderInterface)机制时,开发者常常面临配置文件编写的繁琐问题。1.1JavaSPI的配置痛点JavaSPI是一种服务发现机制,允许第三方为程序提供扩展实现。使用SPI时,需要在META-INF/services目录下创建以接口全限定名命名的文件,并在文件中列
Java SPI 彻底不迷糊
狂飙程序员
java 开发语言 spring boot
1.JavaSPI是什么JavaSPI(ServiceProviderInterface)是Java提供的一种服务发现机制。它允许第三方服务提供者通过在META-INF/services目录下创建以服务接口全限定名命名的文件,并在文件中指定具体的实现类,从而实现服务的动态加载和扩展。简单来说,SPI是一种将服务接口和服务实现分离的机制,使得程序可以在运行时根据配置动态地加载不同的实现类。2.产生场
Java 代理从 0 到彻底搞懂
狂飙程序员
java 代理模式 开发语言
一、为什么出现代理?咱们先抛开编程,想象一下生活中的场景。假如你是一位大明星,每天都有无数的活动邀约、采访请求,还有各种商务合作的洽谈。要是你亲自去处理这些事情,那你哪还有时间去拍戏、唱歌、提升自己的业务能力呢?所以,你就会找一个经纪人。这个经纪人就相当于你的“代理”。经纪人会帮你筛选合适的活动,和合作方谈合同细节,安排你的行程,在你参加活动前后帮你处理各种杂事。这样一来,你就可以把精力都放在自己
JavaEE进阶(1) Spring Web MVC 注解和参数传递
Purified_Soda
JavaEE进阶 servlet spring boot mvc spring java maven
完整版博客:SpringWebMVC注解和参数传递在学习SpringWebMVC时,我们常用不同的注解来处理HTTP请求和响应。SpringMVC提供了一系列的注解,简化了我们的开发工作,让我们能够通过更简洁和可读的方式来处理请求。以下将详细讲解这些注解的使用方式,结合代码示例以及常见的应用场景,帮助大家深入理解SpringMVC中的请求处理。1.@RestController和@RequestM
【2024软考架构案例题】你知道 Es 的几种分词器吗?Standard、Simple、WhiteSpace、Keyword 四种分词器你知道吗?
激流丶
日常 elasticsearch 大数据 搜索引擎
博主介绍:博主从事应用安全和大数据领域,有8年研发经验,5年面试官经验,Java技术专家,WEB架构师,阿里云专家博主,华为云云享专家,51CTO专家博主⛪️个人社区:个人社区个人主页:个人主页专栏地址:✅Java中级八股文专题:剑指大厂,手撕Java八股文文章目录1.什么是Standard分词器?2.什么是Simple分词器?3.什么是WhiteSpace分词器?4.什么是Keyword分词器?
JavaScript函数
晚安720
javascript 前端 开发语言
函数what函数是一段具有特定功能的代码块。函数必须调用,才可以被执行。函数可以被重复调用,也可以被另一个函数所调用。作用:开发者根据需求定制具有特定功能的函数代码块。分类及定义使用系统函数又名库函数/内置函数alter()log()Number()parseInt()......由JS内部提供的,具有特定功能的函数,供开发者使用。自定义函数自己按照自己的需求,定制具有特定功能的函数。定义函数基本
Java进阶,时间与日期,包装类,正则表达式
m0_74824635
面试 学习路线 阿里巴巴 java 正则表达式 mysql
Java时间与日期,包装类,正则表达式一.时间与日期1.DateDate类概述Date类代表当前所在系统的日期时间信息。Date的构造器名称说明publicDate()创建一个Date对象,代表的是系统当前此刻日期时间。Date的常用方法名称说明publiclonggetTime()返回从1970年1月1日00:00:00走到此刻的总的毫秒数案例/**学会使用Date类处理时间,获取时间的信息*/
aiohttp的详细使用和异步爬虫实战
数据知道
2025年爬虫和逆向教程 爬虫 python aiohttp asyncio 异步爬虫
文章目录1.基本概念2.安装aiohttp3.一个简单的异步爬虫4.示例代码及解析5.并发控制6.错误处理7.数据解析与存储8.高级用法8.1限速8.2处理JavaScript渲染的页面8.3异步文件写入8.4POST请求8.5使用代理8.6超时设置9.总结aiohttp是一个基于asyncio的异步HTTP客户端/服务器框架,非常适合用于编写高效的异步爬虫。下面我们将详细讲解如何使用aiohtt
Spring Boot整合MyBatis
BugAndWarning
SpringBoot的学习 spring boot mybatis tomcat intellij idea java 服务器 后端
SpringBoot整合MyBatis在SpringBoot项目中,使用MyBatis是一种十分流行的数据访问方式。相对于Javaweb通过原生JDBC访问数据库,MyBatis的操作会非常的简单。原生JDBC访问数据库使用原生JDBC进行数据库操作如下:加载数据库驱动程序。获取数据库连接。创建Statement/PreparedStatement对象。执行SQL语句。处理查询结果。关闭资源。使用
Hive SQL 使用及进阶详解
小四的快乐生活
hive sql hadoop
一、Hive简介Hive是建立在Hadoop之上的数据仓库基础架构,它提供了类似于SQL的查询语言HiveSQL(也称为HQL),用于对存储在Hadoop分布式文件系统(HDFS)中的大规模数据进行数据查询和分析。Hive将SQL查询转换为MapReduce、Tez或Spark等分布式计算任务,使得不熟悉Java编程的数据分析人员也能方便地处理大规模数据。二、HiveSQL基础使用(一)环境准备在
与Vue共舞:从初识到构建数字世界的艺术之旅
skyksksksksks
综合个人杂记 vue.js 前端 开发语言 前端框架
第一章诞生记:一个框架的浪漫起源2013年的某个凌晨,上海某公寓的灯光依然明亮。前谷歌工程师尤雨溪在键盘前敲下第一行Vue代码时,或许并未想到这个框架将改变全球开发者的工作方式。当时的JavaScript世界正经历框架混战:Angular的复杂配置令人却步,React的函数式思维需要哲学顿悟。尤雨溪像一位精通东西方料理的主厨,将Angular的指令系统、React的组件化理念、Knockout的响
单元测试 go test
songtaiwu
golang 开发语言 后端
Test单元测试基础setup和teardown如果在同一个测试文件中,每一个测试用例运行前后的逻辑是相同的,一般会写在setup和teardown函数中。例如执行前需要实例化待测试的对象,如果这个对象比较复杂,很适合将这一部分逻辑提取出来;执行后,可能会做一些资源回收类的工作,例如关闭网络连接,释放文件等。标准库testing提供了这样的机制:funcsetup(){fmt.Println("B
spring boot整合MyBatis操作数据库
calm_JayBo
spring boot java springboot 数据库
Javaspringboot整合MyBatis操作数据库MyBatis的前身是Apache社区的一个开源项目iBatis,于2010年更名为MyBatis。MyBatis是支持定制化SQL、存储过程和高级映射的优秀持久层框架。它避免了几乎所有的JDBC代码、手动设置参数和获取结果集的操作,使得开发人员更加关注SQL本身和业务逻辑,不用再花费时间关注整个复杂的JDBC操作过程。MyBatis的优点如
vue3的实用工具库@vueuse/core
罗会
javascript 前端 vue.js vue uni-app
1.什么是@vueuse/core是一个基于VueCompositionAPI开发的实用工具库,旨在通过封装高频功能为可复用的组合式函数(Composables),简化Vue应用的开发流程。提供200+开箱即用的函数,覆盖状态管理、浏览器交互、传感器、网络请求等场景,例如useStorage(状态持久化)1、useMouse(鼠标追踪)1;支持Vue2和Vue3,并通过@vueus
Redisson 简介
茶本无香
redis
1.Redisson简介Redisson是一个基于Redis的Java客户端库,专注于分布式和并发编程。它提供了丰富的分布式对象和服务(如分布式锁、集合、队列、限流器等),简化了Redis在分布式系统中的使用。2.核心功能2.1分布式锁可重入锁:支持线程重入和自动续期(看门狗机制)。公平锁:按请求顺序获取锁。联锁(MultiLock):同时锁定多个资源。红锁(RedLock):多节点容错锁。代码示
LSM-Tree (日志结构合并树)
茶本无香
lsm-tree
LSM-Tree(日志结构合并树)是一种高效处理写操作的存储结构,广泛应用于NoSQL数据库如LevelDB和RocksDB。其核心思想是将随机写入转换为顺序写入,提升吞吐量。以下是其原理及Java实现示例:###**LSM-Tree原理**1.**结构组成**:-**MemTable**:内存中的有序结构(如跳表),用于快速写入。-**ImmutableMemTable**:MemTable写满
如何动态向HTML中插入SVG元素(包括Line,path,marker..等)
junzhen_chen
前端 HTML SVG html svg
1.使用dodument对象创建一个SVG元素marker,为元素引入svg的命名空间(必需引入命名空间,不然浏览器将此元素当做普通html标签插入文档流)varmarker=document.createElementNS("http://www.w3.org/2000/svg","marker");2.使用标签元素对象的setAttribute函数为元素的属性设值marker.setAttri
C语言练习题:三种if语句、嵌套三元运算符
受命于天既寿永昌
C语言初学 算法 c语言
本文涉及到的知识点有:if语句(三种写法)、switch语句、三元运算符(嵌套使用)本文的题目来源于《全国计算机等级考试二级教程-C语言程序设计》练习题4.25对于以下函数:编写程序,要求输入x的值,输出y的值。分别用:不嵌套的if语句、嵌套的if语句、if-else语句、switch语句注:本文为了方便理解,并没有对输入的x值进行限制,所以用户调试的时候请自行将x限定在指定的范围里面,否则程序就
2.✨java练习1(熟悉“类”)
*TQK*
Java java 开发语言 c++
1.A+B-AcWing题库问题描述输入两个整数,求这两个整数的和是多少。输入格式输入两个整数A,B,用空格隔开输出格式输出一个整数,表示这两个数的和数据范围0≤A,B≤1e8C++#include//包含标准输入输出库usingnamespacestd;//使用标准命名空间std,避免每次调用标准库时都要写std::classSolution{//定义一个名为Solution的类public:/
华为全网首发的 Kafka 技术手册,从基础到实战一应俱全,超详细
2401_83412172
程序员 华为 kafka 分布式
通过这一部分的学习,你可以学习一下内容:知道Kafka基本原理,了解关键术语概念可以使用Kafka进行消息系统开发通过Java语言来使用Kafka进行消息收发内容涵盖:(特性+使用场景+技术优势+适应人群+概念详解+安装与配置+Java第一个程序+服务端常用参数配置+总结)第二部分:生产者详解通过这一部分的学习,你可以学习一下内容:深入学习Kafka数据生产大致流程如何创建并使用Kafka生产者K
Vue.js 编写组件单元测试
轻口味
VUE.JS 入门与实践 vue.js
Vue.js编写组件单元测试今天我们来聊聊如何编写Vue组件的单元测试。单元测试是确保我们组件逻辑正确、功能稳定的重要手段,通过自动化测试,我们可以及时发现问题,避免后期调试困难。下面我会详细介绍如何使用VueTestUtils和Jest来编写组件的单元测试,并提供一些实际的代码示例,帮助你快速上手。为什么需要编写组件单元测试在项目开发过程中,组件通常包含了各种业务逻辑和交互功能。编写单元测试能帮
Dify创建自定义工具实践,这里如果不熟悉估计会被折磨得不轻,建议一步一步跟着操作
几道之旅
Dify与Langflow 智能体(Agent) 知识库 几道之旅AI专栏VVVIP android
文章目录前言使用fastapi编写一个你专属的服务1.**安装依赖**2.**保存代码**3.**运行应用**4.**访问API**测试接口:5.**访问文档**6.**停止应用**回到dify注册自定义工具fastapi自动生成的文档前言今天让同事帮我把一些写好的函数,使用fastapi封装成rest服务,再注册到dify的自定义工具。结果都两天了,还没弄完。因为之前搞过这一块,所以不觉得会花这
Vue函数式编程终极指南:像写诗一样写代码
lifire_H
vue.js 前端 javascript
引言:当Vue遇上函数式,优雅永不过时你是否见过这样的代码?组件间状态乱飞、副作用神出鬼没、单元测试如走钢丝……函数式编程就像代码界的“断舍离大师”,教你用纯函数、不可变数据和高阶魔法,让Vue代码变得干净、稳定且充满艺术感!本文不仅会揭秘函数式编程的核心心法,还会手把手教你:✅如何用CompositionAPI实现函数式优雅✅高阶函数与柯里化的实战妙用✅Vue3函数式组件性能优化秘籍✅配套工具链
c语言 右移位什么情况补1,关于移位操作,该如何处理
胡桓铭
c语言 右移位什么情况补1
关于移位操作请教一下各位关于移位操作的问题。我现在被搞得有点晕了1.C/C++和JAVA中的移位操作规则是不是不一样?2.关于算术移位和逻辑移位。左移时候比较好理解,都是末尾补0.但是右移的时候我就有点晕了。正常情况逻辑移位是不管符号位,直接高位补0;而算术移位是根据符号位来补高位的。比如11001右移2位。逻辑移位结果是00110,而算术移位结果是11110。(这个应该对的吧?)但是我好想隐约记
uni-app 之 文件(图片、视频.....)上传与下载
郭宝
微信小程序 uni-app 前端 vue.js javascript
文件上传uploadFile函数参数说明如下:参数名类型必填说明平台差异说明urlString是开发者服务器urlfilesArray是(files和filePath选其一)需要上传的文件列表。使用files时,filePath和name不生效。App、H5(2.6.15+)fileTypeString见平台差异说明文件类型,image/video/audio仅支付宝小程序,且必填。fileFil
redis学习笔记——不仅仅是存取数据
Everyday都不同
returnSource expire/del incr/lpush 数据库分区 redis
最近项目中用到比较多redis,感觉之前对它一直局限于get/set数据的层面。其实作为一个强大的NoSql数据库产品,如果好好利用它,会带来很多意想不到的效果。(因为我搞java,所以就从jedis的角度来补充一点东西吧。PS:不一定全,只是个人理解,不喜勿喷)
1、关于JedisPool.returnSource(Jedis jeids)
这个方法是从red
SQL性能优化-持续更新中。。。。。。
atongyeye
oracle sql
1 通过ROWID访问表--索引
你可以采用基于ROWID的访问方式情况,提高访问表的效率, , ROWID包含了表中记录的物理位置信息..ORACLE采用索引(INDEX)实现了数据和存放数据的物理位置(ROWID)之间的联系. 通常索引提供了快速访问ROWID的方法,因此那些基于索引列的查询就可以得到性能上的提高.
2 共享SQL语句--相同的sql放入缓存
3 选择最有效率的表
[JAVA语言]JAVA虚拟机对底层硬件的操控还不完善
comsci
JAVA虚拟机
如果我们用汇编语言编写一个直接读写CPU寄存器的代码段,然后利用这个代码段去控制被操作系统屏蔽的硬件资源,这对于JVM虚拟机显然是不合法的,对操作系统来讲,这样也是不合法的,但是如果是一个工程项目的确需要这样做,合同已经签了,我们又不能够这样做,怎么办呢? 那么一个精通汇编语言的那种X客,是否在这个时候就会发生某种至关重要的作用呢?
&n
lvs- real
男人50
LVS
#!/bin/bash
#
# Script to start LVS DR real server.
# description: LVS DR real server
#
#. /etc/rc.d/init.d/functions
VIP=10.10.6.252
host='/bin/hostname'
case "$1" in
sta
生成公钥和私钥
oloz
DSA 安全加密
package com.msserver.core.util;
import java.security.KeyPair;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.SecureRandom;
public class SecurityUtil {
UIView 中加入的cocos2d,背景透明
374016526
cocos2d glClearColor
要点是首先pixelFormat:kEAGLColorFormatRGBA8,必须有alpha层才能透明。然后view设置为透明glView.opaque = NO;[director setOpenGLView:glView];[self.viewController.view setBackgroundColor:[UIColor clearColor]];[self.viewControll
mysql常用命令
香水浓
mysql
连接数据库
mysql -u troy -ptroy
备份表
mysqldump -u troy -ptroy mm_database mm_user_tbl > user.sql
恢复表(与恢复数据库命令相同)
mysql -u troy -ptroy mm_database < user.sql
备份数据库
mysqldump -u troy -ptroy
我的架构经验系列文章 - 后端架构 - 系统层面
agevs
JavaScript jquery css html5
系统层面:
高可用性
所谓高可用性也就是通过避免单独故障加上快速故障转移实现一旦某台物理服务器出现故障能实现故障快速恢复。一般来说,可以采用两种方式,如果可以做业务可以做负载均衡则通过负载均衡实现集群,然后针对每一台服务器进行监控,一旦发生故障则从集群中移除;如果业务只能有单点入口那么可以通过实现Standby机加上虚拟IP机制,实现Active机在出现故障之后虚拟IP转移到Standby的快速
利用ant进行远程tomcat部署
aijuans
tomcat
在javaEE项目中,需要将工程部署到远程服务器上,如果部署的频率比较高,手动部署的方式就比较麻烦,可以利用Ant工具实现快捷的部署。这篇博文详细介绍了ant配置的步骤(http://www.cnblogs.com/GloriousOnion/archive/2012/12/18/2822817.html),但是在tomcat7以上不适用,需要修改配置,具体如下:
1.配置tomcat的用户角色
获取复利总收入
baalwolf
获取
public static void main(String args[]){
int money=200;
int year=1;
double rate=0.1;
&
eclipse.ini解释
BigBird2012
eclipse
大多数java开发者使用的都是eclipse,今天感兴趣去eclipse官网搜了一下eclipse.ini的配置,供大家参考,我会把关键的部分给大家用中文解释一下。还是推荐有问题不会直接搜谷歌,看官方文档,这样我们会知道问题的真面目是什么,对问题也有一个全面清晰的认识。
Overview
1、Eclipse.ini的作用
Eclipse startup is controlled by th
AngularJS实现分页功能
bijian1013
JavaScript AngularJS 分页
对于大多数web应用来说显示项目列表是一种很常见的任务。通常情况下,我们的数据会比较多,无法很好地显示在单个页面中。在这种情况下,我们需要把数据以页的方式来展示,同时带有转到上一页和下一页的功能。既然在整个应用中这是一种很常见的需求,那么把这一功能抽象成一个通用的、可复用的分页(Paginator)服务是很有意义的。
&nbs
[Maven学习笔记三]Maven archetype
bit1129
ArcheType
archetype的英文意思是原型,Maven archetype表示创建Maven模块的模版,比如创建web项目,创建Spring项目等等.
mvn archetype提供了一种命令行交互式创建Maven项目或者模块的方式,
mvn archetype
1.在LearnMaven-ch03目录下,执行命令mvn archetype:gener
【Java命令三】jps
bit1129
Java命令
jps很简单,用于显示当前运行的Java进程,也可以连接到远程服务器去查看
[hadoop@hadoop bin]$ jps -help
usage: jps [-help]
jps [-q] [-mlvV] [<hostid>]
Definitions:
<hostid>: <hostname>[:
ZABBIX2.2 2.4 等各版本之间的兼容性
ronin47
zabbix更新很快,从2009年到现在已经更新多个版本,为了使用更多zabbix的新特性,随之而来的便是升级版本,zabbix版本兼容性是必须优先考虑的一点 客户端AGENT兼容
zabbix1.x到zabbix2.x的所有agent都兼容zabbix server2.4:如果你升级zabbix server,客户端是可以不做任何改变,除非你想使用agent的一些新特性。 Zabbix代理(p
unity 3d还是cocos2dx哪个适合游戏?
brotherlamp
unity自学 unity教程 unity视频 unity资料 unity
unity 3d还是cocos2dx哪个适合游戏?
问:unity 3d还是cocos2dx哪个适合游戏?
答:首先目前来看unity视频教程因为是3d引擎,目前对2d支持并不完善,unity 3d 目前做2d普遍两种思路,一种是正交相机,3d画面2d视角,另一种是通过一些插件,动态创建mesh来绘制图形单元目前用的较多的是2d toolkit,ex2d,smooth moves,sm2,
百度笔试题:一个已经排序好的很大的数组,现在给它划分成m段,每段长度不定,段长最长为k,然后段内打乱顺序,请设计一个算法对其进行重新排序
bylijinnan
java 算法 面试 百度 招聘
import java.util.Arrays;
/**
* 最早是在陈利人老师的微博看到这道题:
* #面试题#An array with n elements which is K most sorted,就是每个element的初始位置和它最终的排序后的位置的距离不超过常数K
* 设计一个排序算法。It should be faster than O(n*lgn)。
获取checkbox复选框的值
chiangfai
checkbox
<title>CheckBox</title>
<script type = "text/javascript">
doGetVal: function doGetVal()
{
//var fruitName = document.getElementById("apple").value;//根据
MySQLdb用户指南
chenchao051
mysqldb
原网页被墙,放这里备用。 MySQLdb User's Guide
Contents
Introduction
Installation
_mysql
MySQL C API translation
MySQL C API function mapping
Some _mysql examples
MySQLdb
HIVE 窗口及分析函数
daizj
hive 窗口函数 分析函数
窗口函数应用场景:
(1)用于分区排序
(2)动态Group By
(3)Top N
(4)累计计算
(5)层次查询
一、分析函数
用于等级、百分点、n分片等。
函数 说明
RANK() &nbs
PHP ZipArchive 实现压缩解压Zip文件
dcj3sjt126com
PHP zip
PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启,具体开启方法就不说了,不同的平台开启PHP扩增的方法网上都有,如有疑问欢迎交流。这里整理一下常用的示例供参考。
一、解压缩zip文件 01 02 03 04 05 06 07 08 09 10 11
精彩英语贺词
dcj3sjt126com
英语
I'm always here
我会一直在这里支持你
&nb
基于Java注解的Spring的IoC功能
e200702084
java spring bean IOC Office
java模拟post请求
geeksun
java
一般API接收客户端(比如网页、APP或其他应用服务)的请求,但在测试时需要模拟来自外界的请求,经探索,使用HttpComponentshttpClient可模拟Post提交请求。 此处用HttpComponents的httpclient来完成使命。
import org.apache.http.HttpEntity ;
import org.apache.http.HttpRespon
Swift语法之 ---- ?和!区别
hongtoushizi
? swift !
转载自: http://blog.sina.com.cn/s/blog_71715bf80102ux3v.html
Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化。如果在使用变量之前不进行初始化就会报错:
var stringValue : String
//
centos7安装jdk1.7
jisonami
jdk centos
安装JDK1.7
步骤1、解压tar包在当前目录
[root@localhost usr]#tar -xzvf jdk-7u75-linux-x64.tar.gz
步骤2:配置环境变量
在etc/profile文件下添加
export JAVA_HOME=/usr/java/jdk1.7.0_75
export CLASSPATH=/usr/java/jdk1.7.0_75/lib
数据源架构模式之数据映射器
home198979
PHP 架构 数据映射器 datamapper
前面分别介绍了数据源架构模式之表数据入口、数据源架构模式之行和数据入口数据源架构模式之活动记录,相较于这三种数据源架构模式,数据映射器显得更加“高大上”。
一、概念
数据映射器(Data Mapper):在保持对象和数据库(以及映射器本身)彼此独立的情况下,在二者之间移动数据的一个映射器层。概念永远都是抽象的,简单的说,数据映射器就是一个负责将数据映射到对象的类数据。
&nb
在Python中使用MYSQL
pda158
mysql python
缘由 近期在折腾一个小东西须要抓取网上的页面。然后进行解析。将结果放到
数据库中。 了解到
Python在这方面有优势,便选用之。 由于我有台
server上面安装有
mysql,自然使用之。在进行数据库的这个操作过程中遇到了不少问题,这里
记录一下,大家共勉。
python中mysql的调用
百度之后能够通过MySQLdb进行数据库操作。
单例模式
hxl1988_0311
java 单例 设计模式 单件
package com.sosop.designpattern.singleton;
/*
* 单件模式:保证一个类必须只有一个实例,并提供全局的访问点
*
* 所以单例模式必须有私有的构造器,没有私有构造器根本不用谈单件
*
* 必须考虑到并发情况下创建了多个实例对象
* */
/**
* 虽然有锁,但是只在第一次创建对象的时候加锁,并发时不会存在效率
27种迹象显示你应该辞掉程序员的工作
vipshichg
工作
1、你仍然在等待老板在2010年答应的要提拔你的暗示。 2、你的上级近10年没有开发过任何代码。 3、老板假装懂你说的这些技术,但实际上他完全不知道你在说什么。 4、你干完的项目6个月后才部署到现场服务器上。 5、时不时的,老板在检查你刚刚完成的工作时,要求按新想法重新开发。 6、而最终这个软件只有12个用户。 7、时间全浪费在办公室政治中,而不是用在开发好的软件上。 8、部署前5分钟才开始测试。