---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
Javascript是一种在浏览器端执行的语言,不用和服务器交互就可以实现网页的一些变化。JavaScript是一种解释型语言,不需要编译就可以随时运行。
Javascript是一种弱类型的语言,不需要指明变量类型,会自动的判断变量类型。声明变量类型都使用var。可以使用双引号或者单引号声明字符串。
Javascript动态创建的元素,搜索引擎捕捉不到,所以可以不需要动态创建的地方就不要动态创建。
动态创建元素、添加元素和设置属性:
function Method() {
var input = document.createElement("input"); // 创建元素
input.setAttribute("type", "button");// 设置属性
input.setAttribute("value", "创建元素");
input.setAttribute( "class", "face");
document.body.appendChild(input); // 添加元素
}
function ChangeFont() {
var p = document.getElementsByTagName("p"); // 获取页面上所有的p标签
p.item(0).className = "face"; // 设置第一个p标签的class属性
}
alert():警告框。confirm:确认框。prompt:消息框。
var result = confirm("点击确认可以得到人民币!");// 确认框返回了bool值
if (result) {
alert( "你得到了人民币!");// 警告框弹出消息
}
result = prompt("请输入你的姓名!", "");// 消息框返回了输入的消息
alert("你的姓名是:" + result);
事件冒泡:事件由内向外依次执行
< div onclick ="alert('div点击事件')" >< span onclick ="alert('span点击事件')" >< strong onclick ="alert('strong点击事件')" > 事件冒泡strong > span > div >
使用document读取元素的width、height等属性时,读出来的是像"10px"这样的字符串。
使用document动态设置元素的width、height等属性时,可以使用parseInt将"10px"这样的字符串解析成10,然后进行四则运算等。
var width = document.getElementById("Demo").style.width;
alert(parseInt(width));
在javascript中没有类的语法,只有对象
function Person(name, age) {
this .Name = name; // 声明对象的成员的值等于传进来的参数
this .Age = age;// 对象的成员就是以对象的key的方式出现的
this .Say = function () { alert("大家好,我叫" + this .Name + ",今年" + this .Age + "岁") };
}
p1 = new Person("张耕明", 26); // 这里必需要使用new以后才可以像操作一个对象一样操作这个方法
p1.Say();
数组的初始化:
var arr = [1, 2, 3, "天", "地", "人"]; // 普通数组初始化
var arr1 = { "姓名": "张耕明", "年龄": "28", "性别": "男" }; // 键值对数组初始化
for (var i in arr) { // 在javascript中这样写遍历的是数组的key
alert(arr[i]); // 获取该key上的value
}
区 分:
foreach (string str in nickname) // C#中foreach遍历的是数组的值
{
Console.WriteLine( "绰号:" + str);
}
查看对象所有的成员或者属性:
for (var v in document) {
alert(v); // 对象的成员就是以对象的key的方式出现的
}
Array 对象的使用:
var arr = new Array(); // 动态数组,不需要指定数组的大小
arr[0] = "吃饭";
arr[ "晚上"] = "睡觉";
arr[ -1] = "武术";
arr[ 1] = "玩电脑";
arr[ 0.1] = "锻炼";
arr.reverse(); // 元素反转
for (var i in arr) {
alert(i + " " + arr[i]);
}
setInterval(重复执行的定时器)、setTimeout(等待一段时间后执行一次的定时器)。
清除setInterval类型的定时器时用clearInterval()方法,清除setTimeout类型的定时器时用clearTimeout()方法。
var interval; // 为定时器设定一个标识、编号。
function Start() {
interval = setInterval("Method('Hello Javascript!')", 3000); // 执行有参数的方法,每隔3秒执行一次
interval = setInterval("Method()", 3000); // 执行没有参数的方法
interval = setTimeout("Method()", 3000); // 3秒后执行一次指定的方法
}
clearInterval(interval); // 清除定时器时传入指定的定时器编号
剪贴板操作:
function SetClipboard() {
var text = document.getElementById("Text").innerHTML;
text = text + "本文章来自:" + window.location.href;
if (window.clipboardData) { // 这个属性支持IE,不支持火狐
window.clipboardData.setData("text", text);// 设置剪贴板内容和 oncopy 事件不能同时进行,需要延时
}
}
剪贴板操作!
标题滚动:
function ScrollTitle() {
var title = document.title;
var first = title.charAt(0);
var last = title.substring(1, title.length);
document.title = last + first;
}
function Start() {
setInterval( "ScrollTitle()", 300);
}
正则表达式:
// 用圆括号将所有选择项括起来,相邻的选择项之间用|分隔。但用圆括号会有一个副作用,是相关的匹配会被缓存,此时可用?:放在第一个选项前来消除这种副作用。
^: 匹配输入字符串的开始位置。例:^ \d。 $:匹配输入字符串的结束位置。例:\d$。
*:匹配零次或多次。例:\d*。等价于{0,}。 +: 匹配一次或多次。例:\d+。等价于{1 ,}。
?:匹配零次或一次。例:\d?。等价于{0,1}。 {n}:匹配n次。例:\d{2 }。
{n,}: 匹配至少n次。例:\d{ 2,}。 {n,m}:匹配至少n次,最多m次。例:\d{1,2 }。
\d: 匹配数字字符。等价于[ 0-9]。 \D:匹配非数字字符。等价于[^0-9 ]。
\n: 匹配换行符。等价于\x0a。 \t: 匹配制表符。等价于\x09。
\s: 匹配任何空白字符,包括空格、制表符、换页符等。 \S: 匹配任何非空白字符。
\w: 匹配数字、字母和下划线。等价于[A -Za-z0-9_]。 \W:匹配非数字、字母和下划线。等价于[^A-Za-z0- 9_]。
[\u4e00 -\u9fa5]: 匹配汉字。例:[\u4e00-\u9fa5]或[汉字]。 ?::后向引用,表示忽略相关匹配的保存。例:^(?:(?:[1-9])|(?:[1-2][0-9])|30|31)$。
Javascript中使用正则表达式:
var reg = /^\w{0,9}$/;// 正则表达式
var bl = reg.test("123");// 返回bool值
var result = reg.exec("123");// 返回字符串
JQuery学习
JQuery简介:
JQuery是对Javascript封装的库,其内部是一些Javascript函数。
JQuery采用链式编程,都是用方法来取值或者赋值,所以可以一直点下去。
普通Javascript的缺点:在一些不同浏览器下需要不同的实现方法,要编写跨浏览器的程序非常麻烦。
JQuery优点:JQuery占用空间少,使用简单方便(Write less, Do more),跨浏览器兼容性好,插件丰富、开源、免费。
JQuery中ready的多次注册:
jQuery(document).ready(Demo); /* 传入当DOM就绪后要执行的函数 */
function Demo() {
alert( "这是一次演示!");
}
$(document).ready( function () { alert("这是匿名的函数"); }); /* 尽量使用匿名函数,可以避免命名冲突 */
$( function () { alert("这样也可以!") }); /* 这是ready注册函数的简写 */
window.onload = function () {
alert( "DOM元素、CSS、图片等DOM元素的属性加载完毕后触发");
}
window.onload = function () {
alert( "后来的替代了先来的!"); /* window.onload只能注册一次,后注册的函数会覆盖先注册的函数 */
}
JQuery提供的函数:
/* 调用map函数对传入的数组中的元素逐个进行处理,然后将处理后的元素返回 */
var arr = [1, 3, 5, 2, 4, 6];
var newArr = $.map(arr, function (element) { /* 第一个参数代表传入的数组,第二个参数中的element代表数组中的每一个元素 */
if (element % 2 == 0) {
return element + 5;
}
else {
return element; /* 使用map函数需要提供返回值 */
}
})
/* 调用each函数对传入的数组中的元素逐个进行处理。 */
var arr1 = { "动漫1": ["海贼王", "路飞"], "动漫2": ["火影忍者", "鸣人"], "电影": ["功夫", "周星驰"] };
$.each(arr1, function (key, value) { /* 第二个参数中的key和value代表数组中的键和值 */
alert( "这里是" + key + "频道。\n" + "正在播放" + value[0] + ",主角:" + value[1]);
}) /* 使用 $.each()函数不需要提供返回值 */
// 在每一个匹配元素的submit事件中绑定一个处理函数。
$("#Btn").submit(function () {
return false ;
})
$( "#Btn").unbind("submit"); // bind()的反向操作,从每一个匹配的元素中删除绑定的事件。
// 禁止表单提交
$("#BtnSubmit").click(function () {
return false ;
})
JQuery动画效果:
$(element).show()、$(element).hide(),显示和隐藏。
$(element).slideUp()、$(element).slideDown()、$(element).slideToggle(),滑动效果。
$(element).fadeIn()、$(element).fadeOut()、$(element).fadeTo(),淡入淡出效果。
$(element).animate(),自定义动画。只有数字值可创建动画(比如 "margin:30px")。字符串值无法创建动画(比如 "background-color:red")
$("#Button").click(function () {
$( "#Div3").animate({
width: "30px",
height: "100px",
fontSize: "100px"
}, 3000);
})
// 鼠标跟随效果
$(document).mousemove(function (e) {
$( "p").css({ position: "absolute", left: e.pageX, top: e.pageY }); /* e.pageX和e.pageY分别代表鼠标在页面上的X坐标和Y坐标 */
})
JQuery基本选择器:
$(".style") /* 选择class属性是style的所有元素 */
$( "#Div input") /* 选择id是"Div"下的所有input元素 */
$( "#Div > input") /* 选择id是"Div"下的直接input元素 */
$( "div ul li") /* 选择div元素内的ul元素内的li元素 */
$( "body,input.style,ul") /* 选择body元素、class属性是"style"的所有input元素、所有ul元素 */
$(element).next() /* 选择该元素后相邻的同级元素 */
$(element).nextAll() /* 选择该元素后所有的同级元素 */
$(element).siblings() /* 选择该元素同级的所有元素 */
$( "td").mouseenter(function () {
$( this ).animate({ "width": "200px", "height": "60px" }); /* 选择鼠标进入的 元素*/
$( "td").not($(this )).animate({ "width": "100px", "height": "60px" }); /* 选择除该 元素以外的所有 元素*/
})
JQuery过滤选择器:
$("td:first") /* 选择第一个td元素 */
$( "td:last") /* 选择最后一个td元素 */
$( "td:not(td:last)") /* 选择不是最后一个td元素的所有td元素 */
$( "td:even") /* 选择所有偶数行的元素,索引从0开始计数,奇数索引受影响。例:第二行,索引为1 */
$( "td:odd") /* 选择所有奇数行的元素,索引从0开始计数,偶数索引受影响。例:第一行,索引为0 */
$( "td:eq(0)") /* 选择等于该索引值的元素,eq---equal */
$( "td:gt(0)") /* 选择大于该索引值的元素,gt---great */
$( "td:lt(9)") /* 选择小于该索引值的元素,lt---little */
$( ":header") /* 选择所有的标题元素,h1...h6 */
JQuery属性过滤选择器:
$("input[id]") /* 选择所有具有id属性的input元素 */
$( "[title=提示消息]") /* 选择title等于"提示消息"的所有元素 */
$( "input[title!=提示消息]") /* 选择title不等于"提示消息"的所有input元素 */
$( "input[title^=输入]") /* 选择title以"输入"开始的所有input元素 */
$( "input[title$=搜索]") /* 选择title以"搜索"结束的所有input元素 */
$( "input[title*=关键词]") /* 选择title包含"关键词"的所有input元素 */
$( "[id][id$=t]") /* 选择所有具有id属性,并且id是以t结束的所有元素 */
表单选择器:
$(":input") /* 选择所有 input, textarea, select 和 button 元素 */
$( "input") /* 选择所有 input元素 */
$( ":text") /* 选择所有的单行文本框,相当于 $("input[type=text]") */
$( ":password") /* 选择所有密码框 */
$( ":checkbox") /* 选择所有复选框 */
$( ":radio") /* 选择所有单选按钮 */
$( ":reset") /* 选择所有重置按钮 */
$( ":submit") /* 选择所有提交按钮 */
$( ":file") /* 选择所有文件域,相当于 $("input[type=file]") */
$( ":image") /* 选择所有图像域,相当于 $("input[type=image]") */
$( ":hidden") /* 选择所有隐藏元素 */
$( ":button") /* 选择所有按钮,其中不包括:重置、提交、单选、复选按钮 */
表单对象属性选择:
$("input:enabled") /* 选择所有可用的input元素 */
$( "input:disabled") /* 选择所有不可用的input元素 */
$( "input:checked") /* 选择所有被选中的input元素(复选框、单选框等,不包括select中的option) */
$( "select option:selected") /* 选择所有被选中的option元素 */
属性的增加、删除、修改、读取:
$("a:first").attr("href") /* 获取元素的属性值 */
$( "a:first").attr({ href: "HomePage.html", title: "首页", className: "home" }); /* 设置元素的多个属性值 */
$( "a:first").attr("title", "首页"); /* 设置元素的一个属性值 */
$( "p").attr("style", function () {
return "font-size:36px"; /* 设置的属性值是一个方法的返回值 */
})
$( "a").removeAttr("href"); /* 删除元素的属性值 */
创建、删除、替换DOM节点:
$("body").append(element); /* 在页面的末尾增加元素 */
$( "body").prepend(element); /* 在页面的开始增加元素 */
$(element).after(element); /* 在指定元素的后面增加元素 */
$(element).before(element); /* 在指定元素的前面增加元素 */
$( "div").empty(); /* 清空div的内容,div仍然保留在页面中 */
$( "a").remove("[title]"); /* 删除具有title属性的所有a标签 */
$( "p:first").replaceAll("p:last");// 用第一个p标签替换掉最后一个p标签
JQuery对象和DOM对象:
JQuery对象是通过JQuery包装DOM对象以后产生的对象,DOM对象只有转换为JQuery对象才能被JQuery操作。
JQuery只能调用JQuery内部封装的方法,不能调用DOM对象的方法,反之亦然。
$(function () {
// $("#Div").innerHTML = "123
"; //错误:使用JQuey对象调用DOM对象的方法
// document.getElementById("Div").html("123
"); //错误:使用DOM对象调用JQuery对象的方法
var domObject = document.getElementById("Div"); // 得到DOM对象
$(domObject).html("DOM对象转换为JQuery对象 "); // 包装DOM对象后调用JQuery的方法
var dom = $(domObject)[0]; // 将JQuery对象转换为DOM对象
$("#Div").css({ background: "red", width: "300px", height: 300, "margin-left": "300px" }); // 如果属性名包含 "-"的话,必须使用引号
$("#Div").css("width", 300).css("height", 300).css("background", "red"); // 修改style值
alert($("#Div").css("width")); // 获取style值
alert($("#Button").val()); // 获取value值
$("#Button").val("value"); // 修改value值
alert($("Div").html());// 获取html源码内容
alert($("Div").text()); // 获取文本内容
})
编写jQuery 插件:
jQuery.extend({
_四则运算: function (a, b, c) {
// /
// / 四则运算
// /
// / 参数1
// / 参数2
// / 运算符
// /
var arr = ["+", "-", "*", "/"];
a *= 1; b *= 1; // 转换为数字
if (isNaN(a) || isNaN(b)) {
alert( "不能识别的符号,请输入数字!");
return ;
}
for (var i = 0; i < arr.length; i++) {
if (arr[i] == c) {
switch (c) {
case "+": alert(a + b);
break ;
case "-": alert(a - b);
break ;
case "*": alert(a * b);
break ;
case "/": alert(a / b);
break ;
default :
}
return ;
}
}
alert( "错误,请检查你的输入!");
}
});
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
转载于:https://www.cnblogs.com/-zgm/archive/2012/10/31/2747655.html
你可能感兴趣的:(黑马程序员Javascript学习)
《java面向对象(2)》<不含基本语法>
java小白板
java 开发语言
提示:本笔记基于黑马程序员java教程整理,仅供参考文章目录前言1.继承2.多态2.1对象多态2.2行为对象2.3多态的问题前言本文纯笔记,主要记录了java面向对象的高级方法继承与多态1.继承在创建多个对象类时,它们可能会有很多相似的属性,如姓名,身高,体重等,就会造成代码的重复,所以我们可以采用继承的思想,将它们相同的属性放在同一个父类中,而其它作为子类的都可以继承父类的属性,子类本身就只用定
指针高级06【数组指针】-黑马程序员C语言
c
数组指针的基本用法概念:指向数组的指针,叫做数组指针作用:方便操作数组中的各种数据#include"stdio.h"intmain(){intarr[]={10,20,30,40,50};intlen=sizeof(arr)/sizeof(int);//获取数组的指针//实际上获取数据的首地址int*p1=arr;int*p2=&arr[0];printf("%p\n",p1);printf("%
Stream 流 【学习笔记】Java 基础
燕赵韩魏555
Java 基础学习 # java java 学习
若文章内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系博主删除。写这篇博客旨在制作笔记,方便个人在线阅览,巩固知识,无其他用途。学习视频【黑马Java基础教程】Stream流从入门到精通】【黑马程序员Java零基础视频教程】(上部)【黑马程序员Java零基础视频教程】(下部)Java基础(查缺补漏)Java集合【学习笔记】Java基础:https://blog.csdn
黑马程序员-接口测试-四天学习接口测试-第二天-接口用例设计,测试点,功能测试,安全测试,性能测试,单接口测试,业务场景测试用例,postman简介,安装
学习记录wanxiaowan
postman 学习 功能测试
今日学习目标分析接口文档,设计编写接口测试用例使用Postman设置请求方法、URL、请求头、请求体,向接口发送http请求,并查看响应数据分析接口文档,设计接口测试用例使用postman设置请求方法,url请求头,请求体,查看响应数据3接口用例设计为什么写防止测试点漏测。条理清晰方便分配工作,评估工作量和时间面试时使用!接口测试的测试点测试点称之为测试维度。5功能测试单接口功能:手工测试中的单个
JavaScript学习笔记一
跨界科技汇
前端 javascript 学习 笔记
web三大标准:HTML(结构)+CSS(样式)+JavaScript(行为)JavaScript的作用:动态效果+数据交互编程语言编程让计算机为解决某个问题而使用某种程序设计语言编写程序代码,最终得到结果是什么?世界上最流行的语言之一,是一种运行在客户端的脚本语言脚本语言不需要编译,运行过程中由**js解析器(js引擎)**逐行来进行解释并执行现在也可以基于Node.js技术来进行服务器端编程作
自己的网页加一个搜索框,调用deepseek的API
Lkkkkkkkcy
java vue
一切源于一个学习黑马程序员视频的突发奇想在网页悬浮一个搜索按钮,点击可以实现调用deepseek文本模型回答你的问题前端实现前端使用vue实现的首先是整体页面:AIWidget.vue搜索{{item}}暂无搜索结果import{ref,watch}from"vue";import{Search}from"@element-plus/icons-vue";import{ElMessage}from
黑马程序员瑞吉外卖Day6小程序空白无显示
Lkkkkkkkcy
Java学习 java 微信小程序 前端
做项目时出现问题之druid连接池报错报错discardlongtimenonereceivedconnection.,jdbcUrl:jdbc:mysql://localhost:3306/sky_take_out?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=c
基于Vue&Axios制作音乐播放器(bilibili黑马程序员Vue入门学习记录)
xxxrsongseven
前端 javascript vue vue.js 前端 css
目录使用Vue制作一个音乐播放器前言VueVue导入Vue挂载Vue指令v-textv-htmlv-onv-showv-ifv-bindv-forv-modelaxiosaxios导入axios使用音乐网站代码HTMLCSSJS使用Vue制作一个音乐播放器前言第一次写,如有不足请指正!音乐播放器效果展示音乐播放器(密码:He371226)(域名出了点问题,临时使用)学习链接:黑马程序员vue前端基
指针高级03【void类型的指针】-黑马程序员C语言
c
没有类型的指针特点:无法获取数据,无法计算,但是可以接收任意地址。不同类型的指针之间,是不能相互赋值的void类型指针打破上面的观点优点:void没有任何类型,好处是可以接收任意类型指针记录的内存地址缺点:void类型的指针,无法获取变量里面的数据,也不能进行加、减的运算#include"stdio.h"voidswap(void*a,void*b,intlen);intmain(){inta=1
【六袆 - 前端】JavaScript学习;JavaScript面试题;坐地铁,坐公交,打DD的时候刷一刷
鞠崽23333
前端框架相关技术 javascript
JavaScriptJavaScript写一个mySetInterVal(fn,a,b),每次间隔a,a+b,a+2b,...,a+nb的时间,然后写一个myClear,停止上面的mySetInterVal介绍防抖节流原理、区别以及应用,并用JavaScript进行实现对闭包的看法,为什么要用闭包?说一下闭包原理以及应用场景实现lodash的_.get实现add(1)(2)(3)实现链式调用类数组
Java笔记 - 黑马程序员_06(Stream,字节流,字符流,对象流(序列化流),属性集(Properties))
谦逊蓄意,只为飞的更高
Java java 开发语言
StreamStream流的三类方法:获取Stream流创建一条流水线,并把数据放到流水线上准备进行操作中间方法流水线上的操作,一次操作完毕之后,还可以继续进行其他操作终结方法是流水线上的最后一个操作,一个Stream流只能有一次终结方法创建Stream流的方式:方式1:根据集合获取流Collection根接口中提供了stream()方法可以获取流。单列集合:直接调用stream0方法即可双列集合
指针高级03【野指针与悬空指针】-黑马程序员C语言
c
指向不明的指针野指针:指针指向的空间未分配悬空指针:指针指向的空间已分配,但是被释放了#include"stdio.h"int*method();intmain(){//野指针:指针指向的空间未分配inta=10;int*p1=&a;printf("%p\n",p1);printf("%d\n",*p1);//p2野指针int*p2=p1+10;printf("%p\n",p2);printf("
指针高级02【指针运算有意义的操作】-黑马程序员C语言
c
指针的运算有意义的操作:指针跟整数进行加、减操作(每次移动N个步长)指针跟指针进行减操作(间隔步长)无异议的操作:指针跟整数进行乘除操作(地址乘以地址无意义)原因:此时指针指向不明指针跟指针进行加、乘、除操作#include"stdio.h"intmain(){intarr[]={1,2,3,4,5,6,7,8,9,10};int*p1=&arr[0];int*p2=&arr[5];printf(
SpringBoot速成概括
噗运特
spring boot java spring
视频:黑马程序员SpringBoot3+Vue3全套视频教程,springboot+vue企业级全栈开发从基础、实战到面试一套通关_哔哩哔哩_bilibili图示:
JavaScript学习笔记
丢内楼道
笔记 javascript html5 java
JavaScriptJavaScript1.JavaScript简介1.1历史1.2快速入门2.基本语法2.1定义变量2.2基本条件控制2.3浏览器必备调试js2.4数据类型2.5严格检查模式3.数据类型3.1字符串及方法3.2数组3.3对象3.4流程控制3.5Map和Set4.函数及面向对象4.1定义函数4.2变量的作用域4.3方法5.内部对象5.1Date5.2Json对象5.3Ajax(自己
设计模式--类图、实例代码
HarryTusta
java 设计模式
前言本文是参照尚硅谷、黑马程序员以及cyc2018记录的个人学习笔记,仅供记录,不确保严谨性,部分实例代码是根据自己的理解抽象了代码,若不理解,更多具象实例可以参考其他网上实例资料,欢迎讨论学习。设计模式在软件工程中,设计模式是对软件设计中普遍存在(反复出现)的各种问题所提出的解决方案。设计模式的目的设计模式是为了让程序具有更好的代码重用性:即相同功能的代码不用多次编写可读性:即变成规范性,便于其
瑞_23种设计模式_中介者模式
瑞486
23种设计模式 设计模式 中介者模式 java
文章目录1中介者模式(MediatorPattern)1.1介绍1.2概述1.3中介者模式的结构1.4中介者模式的优缺点1.5中介者模式的使用场景2案例一2.1需求2.2代码实现3案例二3.1需求3.2代码实现前言:本文章为瑞_系列专栏之《23种设计模式》的中介者模式篇。本文中的部分图和概念等资料,来源于博主学习设计模式的相关网站《菜鸟教程|设计模式》和《黑马程序员Java设计模式详解》,特此注明
Mybatis-Plus学习笔记(自用)
Zzzchc
学习笔记(自用) mybatis 学习 java
Mybatis-Plus学习笔记(自用)本文根据黑马程序员的课程资料与百度搜索的资料共同整理所得,仅用于学习使用,如有侵权,请联系删除文章目录Mybatis-Plus学习笔记(自用)1.纯Mybatis与Mybatis-Plus整合2.Spring+Mybatis+MP3.SpringBoot+Mybatis+MP4.通用CRUD详解4.1注解详解4.2增删改查操作4.3SQL注入原理5.配置5.
MongoDB快速入门(MongoDB简介、MongoDB的应用场景、MongoDB中的基本概念、MongoDB的数据类型、MongoDB的安装与部署、MongoDB的常用命令、MongoDB的索引)
聂 可 以
MongoDB 黑马头条 mongodb 数据库
文章目录1.MongoDB简介2.MongoDB的应用场景3.MongoDB中的基本概念4.MongoDB的数据类型4.1主要数据类型4.2特殊数据类型4.3BSON数据类型5.MongoDB的安装与部署5.1Windows环境5.2Linux环境6.开启MongoDB的安全认证6.1Windows环境6.2Linux环境7.MongoDB的常用命令8.MongoDB的索引视频教程:黑马程序员Mo
【HarmonyOS 鸿蒙 黑马程序员 学习笔记 90.1】
adminwxs
HarmonyOS 学习 黑马 记录 学习 笔记 harmonyos typescript
目录类class实例属性(字段)构造函数(初始化函数)传参对象方法静态属性静态方法继承extends关键字super检测实例instanceof修饰符(类限制符)类class大纲因为class很关键,自己不再组建语言和学习大纲引用黑马程序员原教学大纲,以免误人子弟类名首字母大写(约定成俗,非IDE硬性规定)这篇文章写了大半才注意到-_-!!!实例属性(字段)个人理解可选对象,传参可空简易示例cla
《黑马程序员2023年新版Linux零基础快速入门到精通》学习笔记总目录:开启你的Linux之旅...
魏杨晴Vivian
《黑马程序员2023年新版Linux零基础快速入门到精通》学习笔记总目录:开启你的Linux之旅黑马程序员2023年新版Linux零基础快速入门到精通学习笔记总目录项目地址:https://gitcode.com/Resource-Bundle-Collection/369ce项目介绍《黑马程序员2023年新版Linux零基础快速入门到精通》学习笔记总目录是一个全面且系统的学习资源,旨在帮助零基础
黑马程序员 Linux 从入门到精通配套笔记:助你快速掌握 Linux 核心技能
贡旎彩Kurt
黑马程序员Linux从入门到精通配套笔记:助你快速掌握Linux核心技能【下载地址】黑马程序员Linux从入门到精通配套笔记分享黑马程序员Linux从入门到精通配套笔记项目地址:https://gitcode.com/Open-source-documentation-tutorial/7141a项目介绍“黑马程序员Linux从入门到精通配套笔记”是一个专为Linux初学者和开发者设计的学习资源仓
黑马程序员——浅谈java中的异常机制
IT__JM
java基础
----------------------ASP.Net+Android+IOS开发、.Net培训、期待与您交流!----------------------异常是Java中的重要机制,也使用了面向对象的思想,进行了封装。我们通常使用的异常类。而异常类中所描述的就是程序中可能出现的错误或者问题。就像人生病一样,不一定经常有,但总有生病的时候,而且生病的原因不同,性质不同,对其的治疗自然也不一样。
Java八股文详细文档.1(基于黑马、ChatGPT、DeepSeek)
小钊(求职中)
java 开发语言 数据结构 mysql jvm 数据库 后端
Java面试八股文详细文档.1(基于黑马、ChatGPT、DeepSeek)大三了,真的要去找实习了来提升自己了,学历没有优势只能在项目和八股文上努力一下,通过B站黑马程序员的八股文教学,自己也二刷了,结合ChatGpt、deepSeek总结了一下,(还没有写完,这只是一部分,JVM篇、数据库篇和常见集合篇),有点多,但最好还是结合项目经验来描述,除了JVM是偏向理论的,其他都是可以自己动手来验证
python培训班-Python培训机构_高品质Python线下开发培训班推荐-黑马程序员
编程大乐趣
Python编程基础基础班1课时:15天技术点:97项测验:2次学习方式:线下面授学习目标1.掌握Python开发环境基本配置|2.掌握运算符、表达式、流程控制语句、数组等的使用|3.掌握字符串的基本操作|4.初步建立面向对象的编程思维|5.熟悉异常捕获的基本流程及使用方式|6.掌握类和对象的基本使用方式|7.掌握学生管理系统编写主讲内容1Python基础语法基础语法是编程语言的第一课,打好基础才
spark-pyspark-standalone部署模式全过程
哈哈哈哈q
spark 大数据 分布式
声明:1.参考视频b站黑马程序员视频,极力推荐这个视频,侵权删除https://www.bilibili.com/video/BV1Jq4y1z7VP/?spm_id_from=333.337.search-card.all.click&vd_source=3ae466b20a9e8eabdaa10e84c99758492.第一次配置,仅作为个人记录使用。3.参考黑马程序员standalone配置
JavaScript-黑马程序员-前端零基础
羊羊的代码笔记本
javascript 前端 html
目录1.初识JavaScript1.1浏览器执行js1.2js的组成1.3js三种书写方式1.4JavaScript输入输出语句2.变量2.1变量是一个装东西的容器2.2变量是使用2.3更新变量2.4声明多个变量1.初识JavaScript是一种高级编程语言1.1浏览器执行js浏览器分成两部分:渲染引擎和js引擎渲染引擎:用来解析HTML和CSS,俗称内核js引擎:也称为js解释器。用来读取网页中
【Spring Cloud 10】阿里巴巴分布式服务架构流量控件Sentinel,B站黑马程序员学习笔记
2501_90252715
spring cloud 架构 sentinel
貌似还是他更强一些,不过没关系,加油!所以,今天开启为期一个月的博客疯狂之旅。一、百度百科Sentinel是面向分布式服务架构的高可用流量防护组件,主要以流量为切入点,从限流、流量整形、熔断降级、系统负载保护、热点防护等多个维度来帮助开发者保障微服务的稳定性。Sentinel具有以下特性:丰富的应用场景:Sentinel承接了阿里巴巴近10年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系
22、JavaScript学习笔记——ES5严格模式
lvh98
javascript 学习 前端
ES5严格模式当前使用的ES语法是基于ES3.0的方法加上ES5.0的新增方法。默认情况下,ES3.0和ES5.0冲突的部分,会沿用ES3.0的方法;而在ES5.0严格模式下,冲突部分会使用ES5.0的方法。1.“usestrict”不再兼容ES3.0的一些不规则语法。使用全新的ES5.0规范。1.1ES5.0严格模式的启动要选择使用严格模式,需要使用严格模式编译指示(pragma),即一个不赋值
JavaScript学习记录22
济南小草根
JavaScript javascript 学习 开发语言
第十节RegExp对象1.概述正则表达式(regularexpression)是一种表达文本模式(即字符串结构)的方法,有点像字符串的模板,常常用来按照“给定模式”匹配文本。比如,正则表达式给出一个Email地址的模式,然后用它来确定一个字符串是否为Email地址。JavaScript的正则表达式体系是参照Perl5建立的。新建正则表达式有两种方法。一种是使用字面量,以斜杠表示开始和结束。varr
用MiddleGenIDE工具生成hibernate的POJO(根据数据表生成POJO类)
AdyZhang
POJO eclipse Hibernate MiddleGenIDE
推荐:MiddlegenIDE插件, 是一个Eclipse 插件. 用它可以直接连接到数据库, 根据表按照一定的HIBERNATE规则作出BEAN和对应的XML ,用完后你可以手动删除它加载的JAR包和XML文件! 今天开始试着使用
.9.png
Cb123456
android
“点九”是andriod平台的应用软件开发里的一种特殊的图片形式,文件扩展名为:.9.png
智能手机中有自动横屏的功能,同一幅界面会在随着手机(或平板电脑)中的方向传感器的参数不同而改变显示的方向,在界面改变方向后,界面上的图形会因为长宽的变化而产生拉伸,造成图形的失真变形。
我们都知道android平台有多种不同的分辨率,很多控件的切图文件在被放大拉伸后,边
算法的效率
天子之骄
算法效率 复杂度 最坏情况运行时间 大O阶 平均情况运行时间
算法的效率
效率是速度和空间消耗的度量。集中考虑程序的速度,也称运行时间或执行时间,用复杂度的阶(O)这一标准来衡量。空间的消耗或需求也可以用大O表示,而且它总是小于或等于时间需求。
以下是我的学习笔记:
1.求值与霍纳法则,即为秦九韶公式。
2.测定运行时间的最可靠方法是计数对运行时间有贡献的基本操作的执行次数。运行时间与这个计数成正比。
java数据结构
何必如此
java 数据结构
Java 数据结构
Java工具包提供了强大的数据结构。在Java中的数据结构主要包括以下几种接口和类:
枚举(Enumeration)
位集合(BitSet)
向量(Vector)
栈(Stack)
字典(Dictionary)
哈希表(Hashtable)
属性(Properties)
以上这些类是传统遗留的,在Java2中引入了一种新的框架-集合框架(Collect
MybatisHelloWorld
3213213333332132
//测试入口TestMyBatis
package com.base.helloworld.test;
import java.io.IOException;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibat
Java|urlrewrite|URL重写|多个参数
7454103
java xml Web 工作
个人工作经验! 如有不当之处,敬请指点
1.0 web -info 目录下建立 urlrewrite.xml 文件 类似如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE u
达梦数据库+ibatis
darkranger
sql mysql ibatis SQL Server
--插入数据方面
如果您需要数据库自增...
那么在插入的时候不需要指定自增列.
如果想自己指定ID列的值, 那么要设置
set identity_insert 数据库名.模式名.表名;
----然后插入数据;
example:
create table zhabei.test(
id bigint identity(1,1) primary key,
nam
XML 解析 四种方式
aijuans
android
XML现在已经成为一种通用的数据交换格式,平台的无关性使得很多场合都需要用到XML。本文将详细介绍用Java解析XML的四种方法。
XML现在已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便。对于XML本身的语法知识与技术细节,需要阅读相关的技术文献,这里面包括的内容有DOM(Document Object
spring中配置文件占位符的使用
avords
1.类
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.o
前端工程化-公共模块的依赖和常用的工作流
bee1314
webpack
题记: 一个人的项目,还有工程化的问题嘛? 我们在推进模块化和组件化的过程中,肯定会不断的沉淀出我们项目的模块和组件。对于这些沉淀出的模块和组件怎么管理?另外怎么依赖也是个问题? 你真的想这样嘛? var BreadCrumb = require(‘../../../../uikit/breadcrumb’); //真心ugly。
上司说「看你每天准时下班就知道你工作量不饱和」,该如何回应?
bijian1013
项目管理 沟通 IT职业规划
问题:上司说「看你每天准时下班就知道你工作量不饱和」,如何回应
正常下班时间6点,只要是6点半前下班的,上司都认为没有加班。
Eno-Bea回答,注重感受,不一定是别人的
虽然我不知道你具体从事什么工作与职业,但是我大概猜测,你是从事一项不太容易出现阶段性成果的工作
TortoiseSVN,过滤文件
征客丶
SVN
环境:
TortoiseSVN 1.8
配置:
在文件夹空白处右键
选择 TortoiseSVN -> Settings
在 Global ignote pattern 中添加要过滤的文件:
多类型用英文空格分开
*name : 过滤所有名称为 name 的文件或文件夹
*.name : 过滤所有后缀为 name 的文件或文件夹
--------
【Flume二】HDFS sink细说
bit1129
Flume
1. Flume配置
a1.sources=r1
a1.channels=c1
a1.sinks=k1
###Flume负责启动44444端口
a1.sources.r1.type=avro
a1.sources.r1.bind=0.0.0.0
a1.sources.r1.port=44444
a1.sources.r1.chan
The Eight Myths of Erlang Performance
bookjovi
erlang
erlang有一篇guide很有意思: http://www.erlang.org/doc/efficiency_guide
里面有个The Eight Myths of Erlang Performance: http://www.erlang.org/doc/efficiency_guide/myths.html
Myth: Funs are sl
java多线程网络传输文件(非同步)-2008-08-17
ljy325
java 多线程 socket
利用 Socket 套接字进行面向连接通信的编程。客户端读取本地文件并发送;服务器接收文件并保存到本地文件系统中。
使用说明:请将TransferClient, TransferServer, TempFile三个类编译,他们的类包是FileServer.
客户端:
修改TransferClient: serPort, serIP, filePath, blockNum,的值来符合您机器的系
读《研磨设计模式》-代码笔记-模板方法模式
bylijinnan
java 设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
配置心得
chenyu19891124
配置
时间就这样不知不觉的走过了一个春夏秋冬,转眼间来公司已经一年了,感觉时间过的很快,时间老人总是这样不停走,从来没停歇过。
作为一名新手的配置管理员,刚开始真的是对配置管理是一点不懂,就只听说咱们公司配置主要是负责升级,而具体该怎么做却一点都不了解。经过老员工的一点点讲解,慢慢的对配置有了初步了解,对自己所在的岗位也慢慢的了解。
做了一年的配置管理给自总结下:
1.改变
从一个以前对配置毫无
对“带条件选择的并行汇聚路由问题”的再思考
comsci
算法 工作 软件测试 嵌入式 领域模型
2008年上半年,我在设计并开发基于”JWFD流程系统“的商业化改进型引擎的时候,由于采用了新的嵌入式公式模块而导致出现“带条件选择的并行汇聚路由问题”(请参考2009-02-27博文),当时对这个问题的解决办法是采用基于拓扑结构的处理思想,对汇聚点的实际前驱分支节点通过算法预测出来,然后进行处理,简单的说就是找到造成这个汇聚模型的分支起点,对这个起始分支节点实际走的路径数进行计算,然后把这个实际
Oracle 10g 的clusterware 32位 下载地址
daizj
oracle
Oracle 10g 的clusterware 32位 下载地址
http://pan.baidu.com/share/link?shareid=531580&uk=421021908
http://pan.baidu.com/share/link?shareid=137223&uk=321552738
http://pan.baidu.com/share/l
非常好的介绍:Linux定时执行工具cron
dongwei_6688
linux
Linux经过十多年的发展,很多用户都很了解Linux了,这里介绍一下Linux下cron的理解,和大家讨论讨论。cron是一个Linux 定时执行工具,可以在无需人工干预的情况下运行作业,本文档不讲cron实现原理,主要讲一下Linux定时执行工具cron的具体使用及简单介绍。
新增调度任务推荐使用crontab -e命令添加自定义的任务(编辑的是/var/spool/cron下对应用户的cr
Yii assets目录生成及修改
dcj3sjt126com
yii
assets的作用是方便模块化,插件化的,一般来说出于安全原因不允许通过url访问protected下面的文件,但是我们又希望将module单独出来,所以需要使用发布,即将一个目录下的文件复制一份到assets下面方便通过url访问。
assets设置对应的方法位置 \framework\web\CAssetManager.php
assets配置方法 在m
mac工作软件推荐
dcj3sjt126com
mac
mac上的Terminal + bash + screen组合现在已经非常好用了,但是还是经不起iterm+zsh+tmux的冲击。在同事的强烈推荐下,趁着升级mac系统的机会,顺便也切换到iterm+zsh+tmux的环境下了。
我为什么要要iterm2
切换过来也是脑袋一热的冲动,我也调查过一些资料,看了下iterm的一些优点:
* 兼容性好,远程服务器 vi 什么的低版本能很好兼
Memcached(三)、封装Memcached和Ehcache
frank1234
memcached ehcache spring ioc
本文对Ehcache和Memcached进行了简单的封装,这样对于客户端程序无需了解ehcache和memcached的差异,仅需要配置缓存的Provider类就可以在二者之间进行切换,Provider实现类通过Spring IoC注入。
cache.xml
<?xml version="1.0" encoding="UTF-8"?>
Remove Duplicates from Sorted List II
hcx2013
remove
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.
For example,Given 1->2->3->3->4->4->5,
Spring4新特性——注解、脚本、任务、MVC等其他特性改进
jinnianshilongnian
spring4
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
MySQL安装文档
liyong0802
mysql
工作中用到的MySQL可能安装在两种操作系统中,即Windows系统和Linux系统。以Linux系统中情况居多。
安装在Windows系统时与其它Windows应用程序相同按照安装向导一直下一步就即,这里就不具体介绍,本文档只介绍Linux系统下MySQL的安装步骤。
Linux系统下安装MySQL分为三种:RPM包安装、二进制包安装和源码包安装。二
使用VS2010构建HotSpot工程
p2p2500
HotSpot OpenJDK VS2010
1. 下载OpenJDK7的源码:
http://download.java.net/openjdk/jdk7
http://download.java.net/openjdk/
2. 环境配置
▶
Oracle实用功能之分组后列合并
seandeng888
oracle 分组 实用功能 合并
1 实例解析
由于业务需求需要对表中的数据进行分组后进行合并的处理,鉴于Oracle10g没有现成的函数实现该功能,且该功能如若用JAVA代码实现会比较复杂,因此,特将SQL语言的实现方式分享出来,希望对大家有所帮助。如下:
表test 数据如下:
ID,SUBJECTCODE,DIMCODE,VALUE
1&nbs
Java定时任务注解方式实现
tuoni
java spring jvm xml jni
Spring 注解的定时任务,有如下两种方式:
第一种:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http
11大Java开源中文分词器的使用方法和分词效果对比
yangshangchuan
word分词器 ansj分词器 Stanford分词器 FudanNLP分词器 HanLP分词器
本文的目标有两个:
1、学会使用11大Java开源中文分词器
2、对比分析11大Java开源中文分词器的分词效果
本文给出了11大Java开源中文分词的使用方法以及分词结果对比代码,至于效果哪个好,那要用的人结合自己的应用场景自己来判断。
11大Java开源中文分词器,不同的分词器有不同的用法,定义的接口也不一样,我们先定义一个统一的接口:
/**
* 获取文本的所有分词结果, 对比