//各种尺寸
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)
Java并发编程:线程安全的策略与实践
喵手
零基础学Java java 安全 开发语言
哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。 我是一名后端开发爱好者,工作日常接触到最多的就是Java语言啦,所以我都尽量抽业余时间把自己所学到所会的,通过文章的形式进行输出,希望以这种方式
C++ 多态 初学笔记
NicOym
C++ c++
多态虚函数虚函数的使用条件虚函数详解对象多态多重继承时,类型转换的练习(1)情况1:(2)情况2:(3)情况3:(4)情况4:对象多态动态强制转换dynamic_casttypeid抽象类类的成员函数的函数指针概念:允许使用统一的接口来操作不同类型的对象。多态的作用:减少重复代码,提高代码扩展性静态多态:函数重载函数模板动态多态继承虚函数虚函数:动态绑定静态绑定个人记法(可能有误):动态绑定是调用
SpringBoot+restFul+filter+threadLocal实现多租户的项目
梦想一直在路上
本片博客参考了https://blog.csdn.net/gebitan505/article/details/51614805threadLocal的目的是:实现变量的全局话,在当前的项目当中是实现了用户名的多租户状态下的全局话fiter:进行token的拦截,ThreadLocal的代码packagecom.zwl.util;importjava.util.HashMap;importjava
工作流开发过程
Dev2010Daily
软件开发基础知识 工作 jbpm 引擎 java
1、首先要识别出工作流,即找出候选的工作流。2、可视化流程建模,此处将用到的是jBPM(jBPMGraphicalProcessDesignerGPD)editor3、开发运行时的元件4、布署运行时引擎jBPM提供了多种不同的布署场景:(1)引擎与实例同时使用---jBPMConsole(2)用JAVA类实例来实例化引擎5、实例化运行时实例6、监控和审计
javamail发( 收)邮件
sageparadise
Java javamail string exception 邮件服务器 email properties
MyAuthenticator.javapackagecn.com.vetc.survey.mail;importjavax.mail.Authenticator;importjavax.mail.PasswordAuthentication;publicclassMyAuthenticatorextendsAuthenticator{privateStringuserName=null;priv
Strus2 @JSON(serialize=false),过滤不需要的变量
sageparadise
struts2 Java s struts2.0 json
在用struts2的Action加@ParentPackage("json-default")注解orstruts.xml配置文件中Action所在的package继承json-default,Action中方法返回json类型的数据时,在没有任何设定的情况下,改类下的所有getter方法的返回值将被包含在返回给客户端的JSON字符串中。需要剔除不需要包含的属性,在类结构结构中需要在getter方
《中型 Vue 项目:挑战与成长》
计算机毕设定制辅导-无忧学长
# Vue vue.js flutter 前端
一、引言在当今的前端开发领域,Vue作为一款渐进式JavaScript框架,以其强大的功能和灵活性备受开发者青睐。对于中型Vue项目而言,其重要性不言而喻。中型Vue项目通常在功能复杂度和规模上介于小型项目和大型项目之间,既需要应对一定的业务需求挑战,又要考虑开发效率和可维护性。中型Vue项目面临着诸多挑战与机遇。挑战方面,随着项目规模的扩大,代码的复杂性增加,如何进行有效的状态管理、组件化开发以
中型项目中 MyBatis 的挑战与应对
计算机毕设定制辅导-无忧学长
# MyBatis mybatis
一、引言在当今的Java企业级开发领域,MyBatis无疑是一款占据重要地位的持久层框架。它像是一座桥梁,优雅地连接着Java应用程序与数据库,让数据的交互变得高效且便捷。当我们聚焦于中型项目时,随着业务复杂度的提升以及数据量的增长,MyBatis在为我们带来便利的同时,也悄然面临着诸多挑战。这些挑战涵盖了从性能瓶颈到代码维护性,从数据库兼容性到事务管理等多个关键层面。深入探究这些问题并找寻有效的
npm介绍
小玉起起
vue js npm 前端 node.js
npm(NodePackageManager)是Node.js的默认包管理工具,用于管理JavaScript和Node.js项目的依赖关系。它既是一个包管理工具,又是一个在线仓库,开发者可以通过它分享和下载开源的JavaScript库和工具。npm是世界上最大的开源软件注册表,托管着超过一百万个包。主要功能和特点1.包管理npm的核心功能是管理依赖包。它允许开发者方便地安装、更新和删除项目中的依赖
学习ASP.NET Core的身份认证(基于JwtBearer的身份认证4)
gc_2299
网页编程 JwtBear 身份认证
本文学习并记录builder.Services.AddAuthentication().AddJwtBearer函数中配置类的主要属性及用途。AddJwtBearer函数原型如下图所示,划红线的为常用形式,主要设置JwtBearerOptions类型的常用属性或事件。 JwtBearerOptions类中的属性虽多,但从参考文献的示例来看,大多没有直接设置,主要是对TokenValidati
学习ASP.NET Core的身份认证(基于JwtBearer的身份认证1)
gc_2299
网页编程 JWT 身份认证 JwtBear
本文开始学习基于JWT的身份认证基本用法,相比Cookie、Session等方式,JWT要复杂一些,除了注册认证服务之外,还需提供JWTToken的生成函数或生成类,以便在访问需授权的函数之前获取Token。参考文献1-7中大部分示例都是基于WebApi项目,本文基于Microsoft.AspNetCore.Authentication.JwtBearer包,参照参考文献中的代码,实现最简单的
JAVA基础语句整理
chengxuyuan66666
java python 开发语言
Java是一种广泛使用的面向对象编程语言,它具有简洁、强大、跨平台等特性。以下是Java中的一些基础语句和概念,适合初学者了解:1.类与对象Java是基于类的,程序的基本单位是类(class)。对象是类的实例。java复制代码//定义一个类publicclassPerson{//属性(成员变量)Stringname;intage;//方法(成员函数)voidintroduce(){System.o
Python使用moviepy模块编辑视频时,有可能会出现“TypeError: ‘module‘ object is not callable”的错误提示
CodeWG
python 开发语言
Python使用moviepy模块编辑视频时,有可能会出现“TypeError:‘module‘objectisnotcallable”的错误提示。这个错误提示表明在调用函数或方法时,试图调用一个不可被调用的对象。这个问题通常是由于导入moviepy模块时,模块本身并不是可以被调用的对象而导致的。要解决这个问题,我们需要检查代码中导入moviepy模块的语句是否有误。moviepy模块中最常用的类
【Java多线程】断点续传 如何使用Java多线程下载网络文件
java多线程
如何使用Java多线程下载网络文件,并实现断点续传在现代网络应用中,多线程下载是一种常见的技术,它可以显著提高下载速度并提供更好的用户体验。本篇文章将介绍如何使用Java实现多线程下载,并结合项目中的代码作为示例进行讲解。1.多线程下载的基本原理多线程下载的基本思想是将一个文件分成多个部分,每个部分由一个线程独立下载,最后将这些部分合并成完整的文件。这样可以充分利用带宽和计算资源,提高下载速度。使
如何使用Java爬虫获取微店商品详情:代码示例与实践指南
小爬虫程序猿
java 爬虫 开发语言
在电商领域,获取商品详情数据对于商家和开发者来说至关重要。微店作为国内知名的电商平台,提供了丰富的商品数据接口,方便开发者通过API调用获取商品详情。以下将详细介绍如何使用Java爬虫获取微店商品详情,并提供具体的代码示例。一、微店商品详情API接口简介微店提供了商品详情API接口(micro.item.get),用于获取指定商品的详细信息。通过该接口,开发者可以快速获取商品的标题、价格、库存、描
AI时代的前端开发:技能提升与职业发展之路
前端
在瞬息万变的科技时代,个人职业发展的重要性日益凸显。提升技能,不断学习,已经不再是锦上添花,而是立足之本,是我们在竞争激烈的职场中脱颖而出的关键。而人工智能(AI)技术的快速发展,为我们提供了前所未有的机遇,特别是对于前端开发领域,AI正以前所未有的速度改变着我们的工作方式和学习方式。AI赋能前端开发:个性化学习路径前端开发领域的技术栈庞大而复杂,涵盖HTML、CSS、JavaScript、各种框
一款开源免费的数据可视化大屏 JimuBI,低代码与 AI 结合产品
简介JimuBI是一个JAVA语言的低代码数据可视化大屏BI产品,将大屏、仪表盘、移动面板、图表或页面元素封装为基础组件,无需编写代码即可完成业务需求。这是JeecgBoot团队出品的另外一款报表产品,积木报表已经成为业内报表首先,预测该大屏即将覆盖全行业。酷炫大屏轻松设计,通过拖拽完成大屏设计,80多种组件及20多种边框装饰满足您的设计需求。智能仪表盘简单易用,拖拽式操作自由布局,页面自适应;支
AscendC从入门到精通系列(一)初步感知AscendC
人工智能深度学习
1什么是AscendCAscendC是CANN针对算子开发场景推出的编程语言,原生支持C和C++标准规范,兼具开发效率和运行性能。基于AscendC编写的算子程序,通过编译器编译和运行时调度,运行在昇腾AI处理器上。使用AscendC,开发者可以基于昇腾AI硬件,高效的实现自定义的创新算法。算子开发学习地图:2从helloworld出发感受AscendC2.1使用AscendC写核函数包含核函数的
Web三维CAD绘制一个窗户模型
前言本文使用mxcad3d在网页中创建一个简单的三维窗户模型,mxcad3d提供了丰富的三维建模功能和便捷的API,使得创建各种三维模型变得简单方便,最终效果如下图:环境搭建和入门首先学习mxcad的基本使用方法,可通过官方的入门教程来搭建一个最基本的项目模板,依次查看教程:安装Node.js以及VSCode开发工具、创建mxcad开发项目、API文档接口使用说明。压缩包下载解压后需要在项目目录下
Java灵魂拷问13个为什么,你都会哪些?
大家好,我是V哥。今天看了阿里云开发者社区关于Java的灵魂拷问,一线大厂在用Java时,都会考虑哪些问题呢,对于工作多年,又没有大厂经历的小伙伴不妨看看,V哥总结的这13个为什么,你都会哪些?先赞后看,绝不摆烂。1.为什么禁止使用BigDecimal的equals方法做等值比较?BigDecimal的equals方法在等值比较时存在一些问题,通常不建议直接使用它来判断数值的相等性。下面是主要原因
前后端分离VUE3+Springboot项目集成PageOffice核心代码
wqqqianqian
spring boot java pageoffice vue 在线编辑
后端Springboot项目在项目的pom.xml中通过下面的代码引入PageOffice依赖。pageoffice.jar已发布到Maven中央仓库,建议使用最新版本。com.zhuozhengsoftpageoffice6.3.3.1-javax在项目的启动类Application类中添加一项@Bean配置,此为PageOffice服务器端的必要配置,代码如下:@Value("${posysp
前后端分离VUE+Springboot项目集成PageOffice核心代码
wqqqianqian
spring boot vue pageoffice 在线编辑
后端Springboot项目在项目的pom.xml中通过下面的代码引入PageOffice依赖。pageoffice.jar已发布到Maven中央仓库,建议使用最新版本。com.zhuozhengsoftpageoffice6.3.3.1-javax在项目的启动类Application类中添加一项@Bean配置,此为PageOffice服务器端的必要配置,代码如下:@Value("${posysp
【TVM 教程】内联及数学函数
ApacheTVM是一个端到端的深度学习编译框架,适用于CPU、GPU和各种机器学习加速芯片。更多TVM中文文档可访问→https://tvm.hyper.ai/作者:TianqiChen尽管TVM支持基本的算术运算,但很多时候,也需要复杂的内置函数,例如exp取指函数。这些函数是依赖target系统的,并且在不同target平台中可能具有不同的名称。本教程会学习到如何调用这些target-spe
Go 语言的函数调用
写代码写到不能自控
golang 算法 开发语言
1.引言Go语言的函数调用是其核心特性之一,Go的函数调用方式既简洁又强大。理解Go语言中的函数调用机制不仅有助于编写更高效的代码,也能帮助开发者深入了解Go的并发模型和内存管理。在这篇博客中,我们将详细探讨Go语言的函数调用机制,了解函数的声明、调用、参数传递、返回值以及一些高级技巧。2.Go语言函数的基本结构在Go语言中,函数的定义和调用都非常直观。我们来看一个简单的函数定义和调用的例子:pa
Golang 基础知识(九.func函数)
一缕粉黛千般容
golang golang
文章目录1.定义2.可变参数3.多个返回值4.返回值命名5.作用域6.函数类型与变量7.函数类型变量8.函数作为参数9.函数作为返回值10.匿名函数11.闭包12.defer语句(主要用于是释放资源:文件关闭、数据库连接关闭等等)13.panic/recover14.内置函数1.定义Go语言中定义函数使用func关键字,具体格式如下:func函数名(参数)(返回值){函数体}其中:函数名:由字母、
让你的 PHP 代码飞起来:内存优化技巧详解
程序员阿凡提
PHP实战教程 php 开发语言 内存优化
PHP应用的内存优化对于构建高性能和可扩展的系统至关重要。以下是PHP内存优化的一些关键策略:1、使用unset()函数释放内存unset()该函数用于提醒不再使用的变量,从而释放其占用的内存空间。对于大型数据库或对象,在不再需要时及时使用unset()可以有效避免内存占用。$data = [1, 2, 3]; // 示例数据unset($data); // 使用后释放内存注意:unset()在不
Go 语言源码分析——map
SSSTing_
golang golang
哈希表用于存储键值对的映射关系,具有O(1)的读写性能。通过哈希函数可以将不同的键映射到不同索引上,当不同的键映射到同一个索引上时,会产生哈希冲突,可通过开放寻址法、链表法来解决哈希冲突,其中Go使用的是链表法。一、数据结构map将键值对存放在桶数组中,每个桶只保存8个键值对,通过键的低8位选择桶,通过键的高8位选择放在桶的哪个位置。如果有超过8个键值对映射到同一个桶,则会放到溢出桶typehma
Springboot毕设项目动物园售票管理系统96zau(java+VUE+Mybatis+Maven+Mysql)
韩元计算机毕设
mybatis java spring boot
项目运行环境配置:Jdk1.8+Tomcat8.5+Mysql+HBuilderX(Webstorm也行)+Eclispe(IntelliJIDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:Springboot+mybatis+Maven+Vue等等组成,B/S模式+Maven管理等等。环境需要1.运行环境:最好是javajdk1.8,我们在这个平台上运行的。其他版本理论上也
用 simplejson 轻松搞定复杂 JSON 文件,性能秒杀标准库!
忆愿
Python编程的脉动之声 json android python 人工智能 机器学习 深度学习 神经网络
你好,我是忆愿,全网4w+粉丝,《遂愿盈创》社群主理人。副业启航①|遂愿盈创(对副业感兴趣免费可入,多种赚钱实战项目等你来,一起探寻副业快速变现的途径;以及对接互联网大厂商务合作,一起来搞点小外快,认识更多互联网大咖)目前群里已经带很多小伙伴(大部分大学生)变现几百块啦,程序员搞副业有额外加成~对副业感兴趣可+V:suiyuan2ying拉你进群。文章目录初识simplejson性能对比大揭秘强大
大厂面试系列:JVM中有哪些内存区域,分别都是用来干嘛的?
石杉的架构笔记
面试求职 java 面试 jvm 内存划分 类加载
添加VX:ruyuan0220,回复:CSDN,领取更多精品学习资料!目录背景知识大厂面试背景引入到底什么是JVM的内存区域划分?存放类的方法区执行代码指令用的程序计数器Java虚拟机栈Java堆内存核心内存区域的全流程串讲其他内存区域本文小结背景知识我们先聊了一下相关的背景知识:JVM类加载这块的机制,简单介绍一下。大家需要搞明白的是,在什么情况下会触发类的加载?加载之后的验证、准备和解析分别是
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分钟才开始测试。