面试小结

1.rem的计算原理

打个比方,要计算375px的屏幕,设计稿给的是750px的,此时屏幕1px相当于设计稿的0.5px,所以设计稿上某个元素类imgTest100px,相当于屏幕上50px

设置html 下font-size 默认值为 0.5px,为了计算方便一般会以100倍计算,也就是50px,如下,即1rem = 50px:

@media screen and (min-width:375px) {
    html {
        font-size: 50px;
    }
}

.imgTest{  width: 50px  }

2.垂直居中,水平居中css

设置盒子绝对定位absolute,然后top,right,bottom,left都为0,margin: auto;

3.v-for循环的key的设置

使用对象的id,有易于性能

4.css实现图像旋转的效果

1)设置图片对象无限循环

img{ display:block; annimation: rotate 6s infinite;  }

2) 关键帧动画

@keyframe rotate{

0%{ transform: rotateZ(0deg) }

100%{ transform: rotateZ(360deg) }

}

 

5.Vue父子组件之间的传值(父子组件关系可以总结为props向下传递,事件向上传递)

1) 父组件向子组件传值

父组件:

子组件:

export default{

    props{

      title:{

        type: string,

        default:'Hellow World'

      }

    }

}

2)子组件向父组件传值

父组件:




子组件:



 

6.Vuex的五个核心概念

state:  vuex的基本数据

getter:从基本数据(state)派生的数据

mutation:提交更改数据的方法,同步

action:包裹mutation,使之可以异步

modules:模块化vuex

 

7.Vue的computed和watch的区别

computed
1、computed是计算属性,也就是依赖某个值或者props通过计算得来得数据;
2、 computed的值是在getter执行之后进行缓存的,只有在它依赖的数据发生变化,会重新调用getter来计算;
3、 不支持异步,当computed内有异步操作时无效,无法监听数据的变化;

watch
1、watch是监听器,可以监听某一个数据,然后执行相应的操作;
2、不支持缓存,数据变直接会触发相应的操作;
3、监听的函数接收两个参数,第一个参数是最新的值;第二个参数是输入之前的值;
4、支持异步操作;

8.dispatch和commit的区别:

dispatch:含有异步操作

存储:

this.$store.dispatch('initUserInfo',friend);

取值:

this.$store.getters.userInfo;

commit:同步操作

存储:

this.$store.commit('initUserInfo',friend);

取值:

this.$store.state.userInfo;

9.函数的防抖和节流

防抖:对于短时间内连续触发的事件(上面的滚动事件),防抖的含义就是让某个时间期限(如上面的1000毫秒)内,事件处理函数只执行一次

在第一次触发事件时,不立即执行函数,而是给出一个期限值比如200ms,然后:

  • 如果在200ms内没有再次触发滚动事件,那么就执行函数
  • 如果在200ms内再次触发滚动事件,那么当前的计时取消,重新开始计时

效果:如果短时间内大量触发同一事件,只会执行一次函数。

 

10.第一次页面加载会触发哪几个钩子

beforeCreate, created, beforeMount, mounted

 

11.深度拷贝与浅度拷贝的区别

主要在于有没有为拷贝出的新对象在堆中重新分配一块内存区域。浅度拷贝即直接赋值,拷贝的只是原始对象的引用地址,在堆中仍然共用一块内存。而深度拷贝为新对象在堆中重新分配一块内存,所以对新对象的操作不会影响原始对象。

所以深度拷贝是不会改变拷贝对象的值,

而浅度拷贝是会改变拷贝对象的值

12.Vue设置缓存

VUE.JS 使用缓存我建议用 good-storage ,good-storage 是一个插件,需要安装

localStorage 临时缓存(主动清除缓存才会销毁)

sessionStorage 长期缓存(关闭浏览器自动销毁)

13.forEach和map的区别

forEach没有返回,

map可以有返回,可以return

14.数组常用的一些方法

unshift:从第一位添加元素

shift: 删除数组第一项

push: 数组末尾添加内容

pop: 删除最后一项

slice:按照条件查找出其中内容部分

splice:  对数组进行增删改

join: 用指定的分隔符将数组拼成一个字符串

concat: 连接两个或多个数组

indexOf:检测在数组中第一次出现的索引

lastIndexOf: 检测在数组中最后一次出现的索引

includes: 判断数组是是否包含数组

trim:  去掉字符串首尾空格

 

15.ref的作用

获取实例对象

16.vue组件通信

   1)父子通信

        父向子传递数据是通过 props,子向父是通过 events($emit);通过父链 / 子链也可以通信($parent / $children);ref 也可以访问组件实例;provide / inject API;$attrs/$listeners

   2)  兄弟通信

        Bus;Vuex

   3)跨级通信

         Bus;Vuex;provide / inject API、$attrs/$listeners

17.css吸附定位

position: sticky

18.css垂直居中

水平居中:margin: 0 auto;

垂直居中:


Content here
#parent {display: table;} #child { display: table-cell; vertical-align: middle; }

19.浏览器跨域请求的方式:

CORS

JSONP

Nginx反向代理

20.MVVM的认识

M: Modul(逻辑操作)

V: View(页面)

VM: ViewModel(Modul和View之间的枢纽,比如Vue.js)

1) Model与ViewModel之间的双向关系
   Model通过Ajax通信,发送数据给ViewModel。
   ViewModel也可以通过Ajax通信,发送请求给Model

2) ViewModel与View之间的双向关系
  ViewModel中的数据改变,可以同时改变View上的显示内容。
  View上的内容改变(比如输入框中的内容),也可以同时改变ViewModel中对应的数据

21.执行上下文

JS执行上下文:JS执行前,JS引擎做的准备工作,这份工作就是创建对应的上下文

主要分为三类:全局执行上下文,函数上下文,eval上下文(一般不使用)

22. IE,Chrome,FireFox的内核分别是

IE:  Trident

Chrome: webkit

FireFox: Gecko

23. 数组去重

[...new Set(arr)]

24.SEO的方式和原理

方式:

1)网站结构布局优化:尽量简单,开门见山,提倡扁平结构

     控制首页链接数量;

     扁平化目录层次;

     导航优化(img必须添加alt和title的属性);

     网站的结构布局(页面头部:logo及主导航,页面主体:左边正文,右边放热门文章及相应文章,页面底部:版权信息和友情链接);

     控制页面的大小,减少http的请求,提高网站的加载速度

2)网页代码优化

     :  每个页面的<title>标题中不要设置相同的内容</p> <p>     <meta keywords>:  关键词,列举出几个页面的重要关键词即可</p> <p>     <meta description>: 网页描述,不能太长</p> <p>    <body>:  尽量让代码语义话,在适当的位置使用适当的标签</p> <p>    <a>:  页内链接,要加title属性加以说面</p> <p>3)文本缩进不要使用特殊符号 </p> <p>4)  巧妙利用css布局,将重要的HTML放在最前面</p> <p>5)重要内容不要用JS输出,因为“蜘蛛”不认识</p> <p>6)尽量减少使用iframe框架,因为蜘蛛一般不会读取其中的内容</p> <p>7)谨慎使用display: none; 因为搜索引擎会过滤掉display:none其中的内容</p> <p>8)不断精进代码</p> <p>9) js代码如果是DOM操作,应经历朗放在body结束标签之前,html代码之后</p> <p>10)尽量不要使用通配符选择器</p> <p> </p> <h3>25.png8和png24的区别</h3> <p>1)  png8生成图像是索引模式;png24生成图像是rgb模式</p> <p>2)  png8生成图像较小;png24生成图像较大;</p> <p>3)  png8只支持完全透明的图像;png24即支持完全透明的图像,也支持半透明(apha通道)图像</p> <p>4)  png8与gif模式有相似之处,都是索引模式,只支持像素级的纯透明,不支持alpha通道;</p> <p> </p> <h3>26.promise事件机制</h3> <p>1)执行一个宏任务(栈中没有就从事件队列中获取)</p> <p>2)执行过程中,如果遇到微任务,就添加到微任务列表中</p> <p>3)宏任务执行完成,就立即执行微任务列表中的微任务</p> <p>4)微任务执行完毕,开始检查渲染,然后GUI线程接管渲染</p> <p>5)渲染完毕后,JS继续接管,开始下一次渲染</p> <p> </p> <h3>27.this的四种用法</h3> <p>1)在一般函数方法中使用,this指全局对象;</p> <p>2)作为对象方法调用,this指上下级对象</p> <p>3)作为构造函数调用,this指new出来的对象</p> <p>4)apply 调用 ,apply方法作用是改变函数的调用对象,此方法的第一个参数为改变后调用这个函数的对象,this指代第一个参数</p> <p> </p> <h3>28.created和mounted的区别</h3> <ul> <li> <p>created:在模板渲染成html前调用,即通常初始化某些属性值,然后再渲染成视图。</p> </li> <li> <p>mounted:在模板渲染成html后调用,通常是初始化页面完成后,再对html的dom节点进行一些需要的操作</p> </li> </ul> <h3>29.作用域链</h3> <p>一般情况下,变量取值到创建这个函数对象的作用域中取值</p> <p>但是如果当前作用域中没有取到值,就会向上级作用域中查,直到查到全局作用域,这么一条查找的作用域过程叫做作用域链</p> <h3>30.怎么写一个组件</h3> <p>回归本质,组件的意义是什么?个人的理解就是完成一个可以被抽象、复用并且可以扩展的功能组件,和使用什么框架无关。</p> <p>关键在于抽象、复用和可扩展,当然安全性和易用性也要考虑进去。</p> <h3>31.cal()的作用</h3> <p>计算属性</p> <h3>32.浏览器为什么禁止跨域</h3> <p>跨域:跨域的产生来源于同源策略,即浏览器地址的协议名、域名、端口名都一样的情况下,才允许访问相同的cookie、localStorge和Ajax。如果在不同源的情况下,就叫做跨域。</p> <p>同源策略:请求的url地址,必须与浏览器上的url地址处于同域上,也就是域名,端口,协议相同</p> <h3>33.vue router有哪几种导航钩子</h3> <p>beforeRouteEnter, beforeRouteUpdate,  beforeRouteLeave</p> <p>全局钩子函数,定义在全局的路由对象中,主要有</p> <p>beforeEach:路由切换时调用</p> <p>afterEach: 在每次路由切换成功后被激活时调用</p> <p>34.改变this指向的方式:</p> <p>1)call</p> <pre><code> function f1(n1,n2){ console.log(this); console.log(n1,n2); } // f1(10,20) var obj = {name:'李云龙'} f1.call(obj,10,20) // 此时的this,指向就变成了第一个参数obj,从第二个参数开始,就是函数f1的形参 </code></pre> <p>2)  apply</p> <pre><code> // apply方法 function f1(n1,n2){ console.log(this); console.log(n1,n2); } var obj = {name:'李云龙'} f1.apply(obj,[10,20]) </code></pre> <p>3)  bind</p> <pre><code> function f1(n1,n2){ console.log(this); console.log(n1,n2); } var obj = {name:'李云龙'} f1.bind(obj,10,20) 不会立即调用f1函数 ,而是会产生一个修改了this指向的新的函数 </code></pre> <h3>35.普通函数和箭头函数的区别</h3> <p>1)外形不同</p> <pre><code>// 普通函数 function func(){ // code } // 箭头函数 let func=()=>{ // code } </code></pre> <p>2)普通函数可以有匿名函数,也可以有具体名函数,但是箭头函数都是匿名函数。</p> <pre><code>// 具名函数 function func(){ // code } // 匿名函数 let func=function(){ // code } // 箭头函数全都是匿名函数 let func=()=>{ // code } </code></pre> <p>3)箭头函数不能用于构造函数,不能使用new;普通函数可以用于构造函数,以此创建对象实例</p> <pre><code>function Person(name,age){ this.name=name; this.age=age; } let admin=new Person("恩诺小弦",18); console.log(admin.name); console.log(admin.age); </code></pre> <p>4)箭头函数中this指向不同</p> <p>==></p> <p>总结:</p> <p>(1).箭头函数的 this 永远指向其上下文的 this ,任何方法都改变不了其指向,如 call() , bind() , apply()<br> (2).普通函数的this指向调用它的那个对象</p> <p> </p> <h3>36.基本数据类型和引用数据类型有哪些,区别是什么</h3> <p>基本数据类型:int, double,char,boolean</p> <p>引用数据类型:String,StringBuffer,integer</p> <h3>37.路由模式有几种</h3> <p>hash, history, adstract.</p> <h3>38.动态组件与异步组件的区别</h3> <h3>39.http和https的区别</h3> <h3>40.常见的前端安全漏洞有哪些,分别如何防范</h3> <h3>41.vue的原</h3> <h3>和原理是什么</h3> <h3>43.webpack的原理</h3> <h3>理是什么42.js的运行机制是什么</h3> <h3>44.单线程和多线程的区别</h3> <p> </p> <p> </p> <p> </p> <p>在一个地方呆太久,即在舒适圈太久,容易松懈对于知识点的复习,所以还是要加油啊!</p> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1690613513392828416"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(#,L4:Vue,Part1:Web,#,L1:Base,面试,vue,computed,watch)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1833525688494288896.htm" title="web前端基础——第八章" target="_blank">web前端基础——第八章</a> <span class="text-muted">ZiminLi</span> <a class="tag" taget="_blank" href="/search/%E6%8A%80%E6%9C%AF%E6%A0%88%E7%AC%94%E8%AE%B0/1.htm">技术栈笔记</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>目录八十五、对象的简介和基本操作八十六、属性名和属性值八十七、基本数据类型和引用数据类型八十八、对象字面量八十九、函数的简介九十、函数的参数九十一、函数的返回值九十二、实参可以是任何值九十三、返回值的类型九十四、立即执行函数九十五、方法九十六、枚举对象中的属性九十七、作用域(Scope)全局作用域变量的声明提前函数作用域九十八、this九十九、使用工厂方法创建对象一百、构造函数一百零一、原型对象一</div> </li> <li><a href="/article/1833523416079101952.htm" title="llm在网页中的流式输出(langchain与streamlit库)" target="_blank">llm在网页中的流式输出(langchain与streamlit库)</a> <span class="text-muted">格瑞Lxf</span> <a class="tag" taget="_blank" href="/search/langchain/1.htm">langchain</a> <div>一、手动进行流式输出llm本身是支持在终端流式输出的,以ollama为例llm=Ollama(base_url="http://localhost:11434",model="qwen",callback_manager=CallbackManager([StreamingStdOutCallbackHandler()]),)查看源码StreamingStdOutCallbackHandler类中</div> </li> <li><a href="/article/1833522405868400640.htm" title="Tomcat与JDK版本对应关系,Tomcat各版本特性" target="_blank">Tomcat与JDK版本对应关系,Tomcat各版本特性</a> <span class="text-muted">2401_84048671</span> <a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/tomcat/1.htm">tomcat</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>ApacheTomcat8.xApacheTomcat7.xApacheTomcat6.xApacheTomcat是一个开源软件实现了JavaServlet和JavaServerPages技术。不同版本的Servlet和JSP规范可使用不同版本的ApacheTomcat。Tomcat与JDK版本对应关系为:|Servlet规格|JSP规范|EL规格|WebSocket规范|JASPIC规格|Apa</div> </li> <li><a href="/article/1833518502644903936.htm" title="c#视觉应用开发中如何使用Emgu CV在C#中进行图像处理?" target="_blank">c#视觉应用开发中如何使用Emgu CV在C#中进行图像处理?</a> <span class="text-muted">openwin_top</span> <a class="tag" taget="_blank" href="/search/C%23%E8%A7%86%E8%A7%89%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%E9%97%AE%E9%A2%98%E7%B3%BB%E5%88%97/1.htm">C#视觉应用开发问题系列</a><a class="tag" taget="_blank" href="/search/c%23/1.htm">c#</a><a class="tag" taget="_blank" href="/search/%E5%9B%BE%E5%83%8F%E5%A4%84%E7%90%86/1.htm">图像处理</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>microPythonPython最小内核源码解析NI-motion运动控制c语言示例代码解析python编程示例系列python编程示例系列二python的Web神器Streamlit如何应聘高薪职位EmguCV是OpenCV的.NET包装器,可以让开发者在.NET语言(如C#)中使用OpenCV的功能进行图像处理。在进行图像处理时,EmguCV提供了丰富的API可以使用。以下是使用EmguCV</div> </li> <li><a href="/article/1833514971900768256.htm" title="Java Web安全与Spring Config对象实战" target="_blank">Java Web安全与Spring Config对象实战</a> <span class="text-muted">福建低调</span> <div>本文还有配套的精品资源,点击获取简介:本课程深入探讨JavaWeb开发中的安全实践,包括认证与授权、输入验证、CSRF和XSS防护以及SQL注入防御等关键安全措施。同时,介绍SpringSecurity框架的应用,以及Config对象在Spring配置管理中的作用,包括依赖注入和外部化配置。课程还包括实战演练,通过设置安全环境和安全漏洞模拟,帮助开发者提升应用的安全性和故障排查能力。1.Web安全</div> </li> <li><a href="/article/1833514972450222080.htm" title="heidisql linux 安装_CentOS mysql GUI图形化数据库管理工具Heidisql的安装Navicat" target="_blank">heidisql linux 安装_CentOS mysql GUI图形化数据库管理工具Heidisql的安装Navicat</a> <span class="text-muted">俄罗斯一只战斗鸡</span> <a class="tag" taget="_blank" href="/search/heidisql/1.htm">heidisql</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E8%A3%85/1.htm">安装</a> <div>在Windows下有用过Navicat和Heidisql,都是很强大的工具。因为Navicat是收费的,转到Linux环境下就一下使用Heidisql了。安装:系统环境:Centos7.2一、首先修改yum的源为阿里云:1、备份mv/etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.backup2、下载新的CentO</div> </li> <li><a href="/article/1833514973851119616.htm" title="OceanBase:在win11 wsl下的Ubuntu中的安装OceanBase Docker版" target="_blank">OceanBase:在win11 wsl下的Ubuntu中的安装OceanBase Docker版</a> <span class="text-muted">赵大土</span> <a class="tag" taget="_blank" href="/search/OceanBase/1.htm">OceanBase</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a> <div>在win11wsl下的Ubuntu中的安装OceanBaseDocker版1.在win11中启用wsl并安装Ubuntu2.在Ubuntu中安装Docker3.在Docker中安装OceanBase1.在win11中启用wsl并安装Ubuntu鼠标右键点击win图标,选择【Windows终端(管理员)】,输入一下命令,等待安装后重启系统wsl--install注意:这个命令默认会将会将wsl2设置</div> </li> <li><a href="/article/1833513205209591808.htm" title="linux提权:从入门,Linux提权:从入门到放弃" target="_blank">linux提权:从入门,Linux提权:从入门到放弃</a> <span class="text-muted">Kalu丁</span> <a class="tag" taget="_blank" href="/search/linux%E6%8F%90%E6%9D%83%3A%E4%BB%8E%E5%85%A5%E9%97%A8/1.htm">linux提权:从入门</a> <div>日站就要日个彻底。往往我们能拿下服务器的web服务,却被更新地比西方记者还快的管理员把内网渗透的种子扼杀在提权的萌芽里面。Linux系统的提权过程不止涉及到了漏洞,也涉及了很多系统配置。一下是我总结的一些提权方法。几点前提已经拿到低权shell被入侵的机器上面有nc,python,perl等linux非常常见的工具有权限上传文件和下载文件内核漏洞提权提到脏牛,运维流下两行眼泪,我们留下两行鼻血。内</div> </li> <li><a href="/article/1833513206086201344.htm" title="heidisql linux 安装_Linux和Windows下Mysql数据库安装详解" target="_blank">heidisql linux 安装_Linux和Windows下Mysql数据库安装详解</a> <span class="text-muted">吴钧泽</span> <a class="tag" taget="_blank" href="/search/heidisql/1.htm">heidisql</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E8%A3%85/1.htm">安装</a> <div>目录数据库原理数据库简介文件存储对数据的存储需求一直存在。保存数据的方式,经历了手工管理、文件管理等阶段,直至数据库管理阶段。文件存储方式保存数据的弊端:缺乏对数据的整体管理,数据不便修改;不利于数据分析和共享;数据量急剧增长,大量数据不可能长期保存在文件中。数据库应运而生,是人们存放数据、访问数据、操作数据的存储仓库。DB和DBMS数据库(Database,简称DB)是按照数据结构来组织、存储和</div> </li> <li><a href="/article/1833512826161950720.htm" title="html字体如何设置渐变,CSS 实现文字渐变色" target="_blank">html字体如何设置渐变,CSS 实现文字渐变色</a> <span class="text-muted">甄公子</span> <a class="tag" taget="_blank" href="/search/html%E5%AD%97%E4%BD%93%E5%A6%82%E4%BD%95%E8%AE%BE%E7%BD%AE%E6%B8%90%E5%8F%98/1.htm">html字体如何设置渐变</a> <div>CSS实现文字渐变,有下面两种方法:1.background属性.text-gradient{background-image:linear-gradient(toright,orange,purple);-webkit-background-clip:text;color:transparent;font-size:30px;}文字渐变效果如下:实现原理:background-image属性为该</div> </li> <li><a href="/article/1833512698554445824.htm" title="淘宝海量数据库OceanBase:系统架构详解" target="_blank">淘宝海量数据库OceanBase:系统架构详解</a> <span class="text-muted">weixin_34356555</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/%E7%B3%BB%E7%BB%9F%E6%9E%B6%E6%9E%84/1.htm">系统架构</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a> <div>无论从数据量还是访问量,OceanBase不再能够是一个单机系统,即使一台单机能服务高达几个TB的数据、提供几万QPS的服务能力,因此,分布式系统不可避免,然而,内部如何实现拆表(拆库)以及如何实现数据库的事务,成为了一个很大的挑战和十分艰难的抉择:相关文章:淘宝海量数据库之一:来自业务的挑战淘宝海量数据库之二:一致性选择淘宝海量数据库之三:事务的ACID一种选择是当前数据库的常用的水平拆库,淘宝</div> </li> <li><a href="/article/1833510807451824128.htm" title="全网最详细Gradio教程系列——Gradio简介" target="_blank">全网最详细Gradio教程系列——Gradio简介</a> <span class="text-muted">shao918516</span> <a class="tag" taget="_blank" href="/search/Gradio/1.htm">Gradio</a><a class="tag" taget="_blank" href="/search/%E7%AE%80%E4%BB%8B/1.htm">简介</a> <div>全网最详细Gradio教程系列——Gradio简介前言本篇摘要1.WEBUI框架:Gradio1.1Gradio介绍1.1.1Gradio是什么1.1.2Gradio的历史1.1.3Gradio的特性1.1.4Gradio的用途1.2Gradio与NiceGui、StreamLit、Dash及PyWebIO的比较1.2.1各个框架区别1.2.2框架选择建议参考文献前言本系列文章主要介绍WEB界面工</div> </li> <li><a href="/article/1833507907732336640.htm" title="项目实战系列三: 家居购项目 第五部分" target="_blank">项目实战系列三: 家居购项目 第五部分</a> <span class="text-muted">~ 小团子</span> <a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/%E5%AE%B6%E5%B1%85%E8%B4%AD%E9%A1%B9%E7%9B%AE/1.htm">家居购项目</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>显示订单[订单管理]暂时缺货需求分析1.如果某家居库存为0,首页的"AddtoCart"按钮显示为"暂时缺货"2.后台也加上校验.只有在库存>0时,才能添加到购物车代码实现1.修改web/views/customer/index.jspAddToCart[缺货]0}">AddToCart2.修改src/com/zzw/furns/web/CartServlet.java,当添加购物车时,要保证商品</div> </li> <li><a href="/article/1833504128022704128.htm" title="版本控制的核心:Git中的哈希与默克尔树解析" target="_blank">版本控制的核心:Git中的哈希与默克尔树解析</a> <span class="text-muted">liuwill</span> <a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E6%8A%80%E6%9C%AF/1.htm">开发技术</a><a class="tag" taget="_blank" href="/search/git/1.htm">git</a><a class="tag" taget="_blank" href="/search/%E6%BA%90%E4%BB%A3%E7%A0%81%E7%AE%A1%E7%90%86/1.htm">源代码管理</a> <div>Git是最常用的代码版本控制工具。它帮助我们跟踪代码的更改、管理代码版本,同时保证代码库的完整性和安全性。我们知道Git中有一些基本的操作,比如commit、merge、rebase等,但这些操作的底层机制是如何实现的呢?哈希函数和默克尔树扮演了非常重要的角色。本文将探讨Git中哈希和默克尔树的机制及其实际应用。什么是哈希函数?哈希函数是一种将输入数据转换为固定长度的输出(通常为字符串)的算法。G</div> </li> <li><a href="/article/1833503749604208640.htm" title="Web渗透练习技巧N则(一)" target="_blank">Web渗透练习技巧N则(一)</a> <span class="text-muted">jintonghuoya</span> <a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/%E6%90%9C%E7%B4%A2%E5%BC%95%E6%93%8E/1.htm">搜索引擎</a><a class="tag" taget="_blank" href="/search/WordPress/1.htm">WordPress</a><a class="tag" taget="_blank" href="/search/Joomla/1.htm">Joomla</a> <div>简介对于我们的生活来说,web的重要性不言而喻,因为这个看起来简单的几个页面与我们的生活的联系越来越紧密,我们有更多的个人信息由其承载往来于服务器和我们的电脑之间,正因为如此,web的安全也变得越来越重要,越来越不能被我们忽视。作为一个网络安全的工作者/爱好者,研究web的安全性也变得越来越重要。那么,接下来的几篇文章,我将陆续给大家介(ban)绍(yun)一些国外的大牛的web渗透的奇技淫巧,当</div> </li> <li><a href="/article/1833503623452127232.htm" title="(代码可运行)Bootstrap框架的HTML示例" target="_blank">(代码可运行)Bootstrap框架的HTML示例</a> <span class="text-muted">程序员大侠</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/CSS/1.htm">CSS</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/bootstrap/1.htm">bootstrap</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>Bootstrap:一套流行的前端开发框架,基于HTML、CSS和JavaScript,适用于快速构建响应式Web应用。以下是一个使用Bootstrap构建的简单响应式Web应用的HTML示例:BootstrapExampleHello,Bootstrap!CardtitleSomequickexampletexttobuildonthecardtitleandmakeupthebulkofthe</div> </li> <li><a href="/article/1833502615674122240.htm" title="实现两个窗口通信方法之postMessage" target="_blank">实现两个窗口通信方法之postMessage</a> <span class="text-muted">itKingOne</span> <a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/postmessage/1.htm">postmessage</a><a class="tag" taget="_blank" href="/search/%E9%A1%B5%E9%9D%A2%E9%80%9A%E8%AE%AF/1.htm">页面通讯</a><a class="tag" taget="_blank" href="/search/%E8%B7%A8%E5%9F%9F%E9%80%9A%E8%AE%AF/1.htm">跨域通讯</a> <div>两个窗口的通信问题应该是一个比较常见的问题了,通信可以通过很多种方式,如下:localStoragepostMessagewebsocket今天博主先来一篇postMessage干货,后期还会给出websocket的实现代码。首先来看一下基本的语法otherWindow.postMessage(message,targetOrigin,[transfer]);otherWindow其他窗口的一个引</div> </li> <li><a href="/article/1833502363403513856.htm" title="**项目推荐:探索全球化的Web应用 —— Apache Sling I18N**" target="_blank">**项目推荐:探索全球化的Web应用 —— Apache Sling I18N**</a> <span class="text-muted">解然嫚Keegan</span> <div>项目推荐:探索全球化的Web应用——ApacheSlingI18Nsling-org-apache-sling-i18nApacheSlingI18NSupport项目地址:https://gitcode.com/gh_mirrors/sl/sling-org-apache-sling-i18n在全球化日益加深的今天,软件和网络服务的国际化与本地化(I18N)变得至关重要。ApacheSling,</div> </li> <li><a href="/article/1833498959637737472.htm" title="下一代软件架构——SOA" target="_blank">下一代软件架构——SOA</a> <span class="text-muted">CSDN_document</span> <a class="tag" taget="_blank" href="/search/soa/1.htm">soa</a><a class="tag" taget="_blank" href="/search/%E4%BC%81%E4%B8%9A%E5%BA%94%E7%94%A8/1.htm">企业应用</a><a class="tag" taget="_blank" href="/search/web/1.htm">web</a><a class="tag" taget="_blank" href="/search/%E4%B8%AD%E9%97%B4%E4%BB%B6/1.htm">中间件</a><a class="tag" taget="_blank" href="/search/weblogic/1.htm">weblogic</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a> <div>Web服务作为炙手可热的技术,如何应用到企业的IT系统和商业流程之中、并给企业带来直接的经济效益,一直备受国内外企业管理者的高度关注和推崇。而在近两年,出现了一种技术架构被誉为下一代Web服务的基础架构,它就是SOA(Service-orientedarchitecture,面向服务架构)。1996年,Gartner最早提出SOA。2002年12月,Gartner提出SOA是“现代应用开发领域最重</div> </li> <li><a href="/article/1833498833254969344.htm" title="Anaconda安装与Python虚拟环境配置保姆级图文教程(附速查字典)_anaconda配置python环境" target="_blank">Anaconda安装与Python虚拟环境配置保姆级图文教程(附速查字典)_anaconda配置python环境</a> <span class="text-muted">2401_84976246</span> <a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a><a class="tag" taget="_blank" href="/search/c%E8%AF%AD%E8%A8%80/1.htm">c语言</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a> <div>网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。需要这份系统化的资料的朋友,可以添加戳这里获取一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!目录1混乱的Python库2什么是Anacond</div> </li> <li><a href="/article/1833496692800974848.htm" title="自学黑客(网络安全)" target="_blank">自学黑客(网络安全)</a> <span class="text-muted">白袍无涯</span> <a class="tag" taget="_blank" href="/search/web%E5%AE%89%E5%85%A8/1.htm">web安全</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8/1.htm">安全</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8/1.htm">网络安全</a><a class="tag" taget="_blank" href="/search/%E7%B3%BB%E7%BB%9F%E5%AE%89%E5%85%A8/1.htm">系统安全</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/1.htm">计算机网络</a> <div>前言:想自学网络安全(黑客技术)首先你得了解什么是网络安全!什么是黑客!网络安全可以基于攻击和防御视角来分类,我们经常听到的“红队”、“渗透测试”等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。无论网络、Web、移动、桌面、云等哪个领域,都有攻与防两面性,例如Web安全技术,既有Web渗透,也有Web防御技术(WAF)。作为一个合格的网络安全工程师,应该做到攻守兼备,毕竟</div> </li> <li><a href="/article/1833489635276320768.htm" title="移动端测试" target="_blank">移动端测试</a> <span class="text-muted">渔jy</span> <a class="tag" taget="_blank" href="/search/Android%E7%B3%BB%E7%BB%9F%E5%8F%8A%E5%BA%94%E7%94%A8/1.htm">Android系统及应用</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>三种移动端产品类型介绍移动端应用的测试其自身特点,和其他传统测试又有一些独特的测试方法与思路。移动端应用又可以进一步细分为三大类:WebApp指的是移动端的Web浏览器,其实和PC端的Web浏览器没有任何区别,只不过Web浏览器所依附的操作系统不再是Windows和Linux了,而是iOS和Android了。WebApp采用的技术主要是,传统的HTML、JavaScript、CSS等Web技术栈,</div> </li> <li><a href="/article/1833488878539993088.htm" title="SQLite数据库管理与Android应用集成" target="_blank">SQLite数据库管理与Android应用集成</a> <span class="text-muted">含老司开挖掘机</span> <div>本文还有配套的精品资源,点击获取简介:SQLite是一种轻量级的关系型数据库,适用于移动设备和单机应用。它内置了对SQL标准的支持,并提供丰富的数据操作功能。在Android开发中,SQLite是默认的数据库解决方案,可通过SQLiteOpenHelper和SQLiteDatabaseAPI进行管理。本教程将通过实践帮助理解SQLite数据库的创建、管理和使用,以及如何将其与Android应用集成</div> </li> <li><a href="/article/1833487741132828672.htm" title="C# WinForm实现WebService接口进行图片上传下载" target="_blank">C# WinForm实现WebService接口进行图片上传下载</a> <span class="text-muted">诡道荒行</span> <div>本文还有配套的精品资源,点击获取简介:本文深入介绍了在C#WinForm应用程序中使用WebService接口连接服务器,实现图片的上传和下载功能。通过理解WebService基础,利用WinForm工具创建用户界面,并实现客户端与WebService的连接,我们详细探讨了图片上传与下载的具体步骤,包括文件选择、数据转换、接口调用,以及异常处理和进度显示。同时,还强调了安全性与性能优化的重要性,确</div> </li> <li><a href="/article/1833486732943781888.htm" title="「 自动化测试 」面试题.." target="_blank">「 自动化测试 」面试题..</a> <span class="text-muted">测试界筱筱</span> <a class="tag" taget="_blank" href="/search/%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95/1.htm">软件测试</a><a class="tag" taget="_blank" href="/search/servlet/1.htm">servlet</a><a class="tag" taget="_blank" href="/search/%E5%8A%9F%E8%83%BD%E6%B5%8B%E8%AF%95/1.htm">功能测试</a><a class="tag" taget="_blank" href="/search/%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95/1.htm">软件测试</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E5%8A%A8%E5%8C%96%E6%B5%8B%E8%AF%95/1.htm">自动化测试</a><a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E4%BA%BA%E7%94%9F/1.htm">程序人生</a><a class="tag" taget="_blank" href="/search/%E8%81%8C%E5%9C%BA%E5%92%8C%E5%8F%91%E5%B1%95/1.htm">职场和发展</a> <div>1.你会封装自动化测试框架吗?自动化框架主要的核心框架就是分层+PO模式:分别为:基础封装层BasePage,PO页面对象层,TestCase测试用例层。然后再加上日志处理模块,ini配置文件读取模块,unittest+ddt数据驱动模块,jenkins持续集成模式组成。2.自动化测试的使用场景?需求稳定,不会频繁变更。研发和测试周期长,需要频繁执行回归测试。需要在多种平台上重复运行相同测试的场景</div> </li> <li><a href="/article/1833485347649056768.htm" title="Vue:设置背景图片&解决background-color不生效问题" target="_blank">Vue:设置背景图片&解决background-color不生效问题</a> <span class="text-muted">蜉蝣Sakura</span> <a class="tag" taget="_blank" href="/search/vue%E5%88%9D%E5%AD%A6/1.htm">vue初学</a><a class="tag" taget="_blank" href="/search/vue/1.htm">vue</a> <div>在画页面时,想给页面设置背景图,采用如下的方案页面index.vue部分如下...页面index.vue样式部分如下.background{position:fixed;}效果如下这时,想给这一部分设置背景颜色为白色...样式如下.overview{margin:20pxauto;height:100%;width:70%;background-color:white;}发现设置backgroun</div> </li> <li><a href="/article/1833483835057205248.htm" title="vue css 背景图片路径" target="_blank">vue css 背景图片路径</a> <span class="text-muted">饭盒尽头的GIS</span> <a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a> <div>vuecss背景图片路径background:url('~@/assets/images/nav/broadcast@2x.png')no-repeatcenter;</div> </li> <li><a href="/article/1833481944445317120.htm" title="Vue 的常用指令以及相关修饰符的含义" target="_blank">Vue 的常用指令以及相关修饰符的含义</a> <span class="text-muted">渡鸦七</span> <a class="tag" taget="_blank" href="/search/Vue/1.htm">Vue</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>Vue的常用指令插值表达式{{}}用来在Vue模板中插入变量。{{message}}newVue({el:'#app',data:{message:'HelloVue!'}})v-textv-text指令用来设置元素的文本内容。newVue({el:'#app',data:{message:'HelloVue!'}})v-htmlv-html指令用来设置元素的HTML内容。newVue({el:'</div> </li> <li><a href="/article/1833481312447590400.htm" title="python面试知识汇总" target="_blank">python面试知识汇总</a> <span class="text-muted">m0_61721020</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>读写锁,不同点,应用场景互斥锁:mutex,用于保证在任何时刻,都只能有一个线程访问该对象。当获取锁操作失败时,线程会进入睡眠,等待锁释放时被唤醒自旋锁:spinlock,在任何时刻同样只能有一个线程访问对象。但是当获取锁操作失败时,不会进入睡眠,而是会在原地自旋,直到锁被释放。这样节省了线程从睡眠状态到被唤醒期间的消耗,在加锁时间短暂的环境下会极大的提高效率。但如果加锁时间过长,则会非常浪费CP</div> </li> <li><a href="/article/1833479296862220288.htm" title="深入探索从ES6到ES2023" target="_blank">深入探索从ES6到ES2023</a> <span class="text-muted">hai40587</span> <a class="tag" taget="_blank" href="/search/es6/1.htm">es6</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/ecmascript/1.htm">ecmascript</a> <div>从ES6到ES2023,我们深入探索ECMAScript(简称ES)的演变与发展,了解这一JavaScript标准背后的技术革新和进步。ECMAScript作为JavaScript的标准化版本,每年都在不断推出新版本,为开发者带来更加丰富和强大的功能。本文将从ES6的引入开始,逐步介绍到最新的ES2023,同时探讨这些新特性对现代Web开发的影响。ECMAScript简介与JavaScript的关</div> </li> <li><a href="/article/67.htm" title="jvm调优总结(从基本概念 到 深度优化)" target="_blank">jvm调优总结(从基本概念 到 深度优化)</a> <span class="text-muted">oloz</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a><a class="tag" taget="_blank" href="/search/jdk/1.htm">jdk</a><a class="tag" taget="_blank" href="/search/%E8%99%9A%E6%8B%9F%E6%9C%BA/1.htm">虚拟机</a><a class="tag" taget="_blank" href="/search/%E5%BA%94%E7%94%A8%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">应用服务器</a> <div>JVM参数详解:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html   Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。 </div> </li> <li><a href="/article/194.htm" title="【Scala十六】Scala核心十:柯里化函数" target="_blank">【Scala十六】Scala核心十:柯里化函数</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/scala/1.htm">scala</a> <div>本篇文章重点说明什么是函数柯里化,这个语法现象的背后动机是什么,有什么样的应用场景,以及与部分应用函数(Partial Applied Function)之间的联系   1. 什么是柯里化函数 A way to write functions with multiple parameter lists. For instance def f(x: Int)(y: Int) is a </div> </li> <li><a href="/article/321.htm" title="HashMap" target="_blank">HashMap</a> <span class="text-muted">dalan_123</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>HashMap在java中对很多人来说都是熟的;基于hash表的map接口的非同步实现。允许使用null和null键;同时不能保证元素的顺序;也就是从来都不保证其中的元素的顺序恒久不变。 1、数据结构     在java中,最基本的数据结构无外乎:数组 和 引用(指针),所有的数据结构都可以用这两个来构造,HashMap也不例外,归根到底HashMap就是一个链表散列的数据</div> </li> <li><a href="/article/448.htm" title="Java Swing如何实时刷新JTextArea,以显示刚才加append的内容" target="_blank">Java Swing如何实时刷新JTextArea,以显示刚才加append的内容</a> <span class="text-muted">周凡杨</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%9B%B4%E6%96%B0/1.htm">更新</a><a class="tag" taget="_blank" href="/search/swing/1.htm">swing</a><a class="tag" taget="_blank" href="/search/JTextArea/1.htm">JTextArea</a> <div>在代码中执行完textArea.append("message")后,如果你想让这个更新立刻显示在界面上而不是等swing的主线程返回后刷新,我们一般会在该语句后调用textArea.invalidate()和textArea.repaint()。 问题是这个方法并不能有任何效果,textArea的内容没有任何变化,这或许是swing的一个bug,有一个笨拙的办法可以实现</div> </li> <li><a href="/article/575.htm" title="servlet或struts的Action处理ajax请求" target="_blank">servlet或struts的Action处理ajax请求</a> <span class="text-muted">g21121</span> <a class="tag" taget="_blank" href="/search/servlet/1.htm">servlet</a> <div>其实处理ajax的请求非常简单,直接看代码就行了: //如果用的是struts //HttpServletResponse response = ServletActionContext.getResponse(); // 设置输出为文字流 response.setContentType("text/plain"); // 设置字符集 res</div> </li> <li><a href="/article/702.htm" title="FineReport的公式编辑框的语法简介" target="_blank">FineReport的公式编辑框的语法简介</a> <span class="text-muted">老A不折腾</span> <a class="tag" taget="_blank" href="/search/finereport/1.htm">finereport</a><a class="tag" taget="_blank" href="/search/%E5%85%AC%E5%BC%8F/1.htm">公式</a><a class="tag" taget="_blank" href="/search/%E6%80%BB%E7%BB%93/1.htm">总结</a> <div>FINEREPORT用到公式的地方非常多,单元格(以=开头的便被解析为公式),条件显示,数据字典,报表填报属性值定义,图表标题,轴定义,页眉页脚,甚至单元格的其他属性中的鼠标悬浮提示内容都可以写公式。 简单的说下自己感觉的公式要注意的几个地方:   1.if语句语法刚接触感觉比较奇怪,if(条件式子,值1,值2),if可以嵌套,if(条件式子1,值1,if(条件式子2,值2,值3)</div> </li> <li><a href="/article/829.htm" title="linux mysql 数据库乱码的解决办法" target="_blank">linux mysql 数据库乱码的解决办法</a> <span class="text-muted">墙头上一根草</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93%E4%B9%B1%E7%A0%81/1.htm">数据库乱码</a> <div>linux 上mysql数据库区分大小写的配置 lower_case_table_names=1 1-不区分大小写 0-区分大小写   修改/etc/my.cnf 具体的修改内容如下:   [client] default-character-set=utf8   [mysqld] datadir=/var/lib/mysql socket=/va</div> </li> <li><a href="/article/956.htm" title="我的spring学习笔记6-ApplicationContext实例化的参数兼容思想" target="_blank">我的spring学习笔记6-ApplicationContext实例化的参数兼容思想</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/Spring+3/1.htm">Spring 3</a> <div>ApplicationContext能读取多个Bean定义文件,方法是: ApplicationContext appContext = new ClassPathXmlApplicationContext( new String[]{“bean-config1.xml”,“bean-config2.xml”,“bean-config3.xml”,“bean-config4.xml</div> </li> <li><a href="/article/1083.htm" title="mysql 基准测试之sysbench" target="_blank">mysql 基准测试之sysbench</a> <span class="text-muted">annan211</span> <a class="tag" taget="_blank" href="/search/%E5%9F%BA%E5%87%86%E6%B5%8B%E8%AF%95/1.htm">基准测试</a><a class="tag" taget="_blank" href="/search/mysql%E5%9F%BA%E5%87%86%E6%B5%8B%E8%AF%95/1.htm">mysql基准测试</a><a class="tag" taget="_blank" href="/search/MySQL%E6%B5%8B%E8%AF%95/1.htm">MySQL测试</a><a class="tag" taget="_blank" href="/search/sysbench/1.htm">sysbench</a> <div>1 执行如下命令,安装sysbench-0.5: tar xzvf sysbench-0.5.tar.gz  cd sysbench-0.5  chmod +x autogen.sh  ./autogen.sh  ./configure --with-mysql --with-mysql-includes=/usr/local/mysql</div> </li> <li><a href="/article/1210.htm" title="sql的复杂查询使用案列与技巧" target="_blank">sql的复杂查询使用案列与技巧</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E5%87%BD%E6%95%B0/1.htm">函数</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E9%A1%B5/1.htm">数据分页</a><a class="tag" taget="_blank" href="/search/%E5%90%88%E5%B9%B6%E6%9F%A5%E8%AF%A2/1.htm">合并查询</a> <div>  本片博客使用的数据库表是oracle中的scott用户表;          -------------------  自然连接查询           查询 smith 的上司(两种方法) &</div> </li> <li><a href="/article/1337.htm" title="深入学习Thread类" target="_blank">深入学习Thread类</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/thread/1.htm">thread</a><a class="tag" taget="_blank" href="/search/%E5%A4%9A%E7%BA%BF%E7%A8%8B/1.htm">多线程</a><a class="tag" taget="_blank" href="/search/java%E5%A4%9A%E7%BA%BF%E7%A8%8B/1.htm">java多线程</a> <div>一.             线程的名字 下面来看一下Thread类的name属性,它的类型是String。它其实就是线程的名字。在Thread类中,有String getName()和void setName(String)两个方法用来设置和获取这个属性的值。 同时,Thr</div> </li> <li><a href="/article/1464.htm" title="JSON串转换成Map以及如何转换到对应的数据类型" target="_blank">JSON串转换成Map以及如何转换到对应的数据类型</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/fastjson/1.htm">fastjson</a><a class="tag" taget="_blank" href="/search/net.sf.json/1.htm">net.sf.json</a> <div>        在实际开发中,难免会碰到JSON串转换成Map的情况,下面来看看这方面的实例。另外,由于fastjson只支持JDK1.5及以上版本,因此在JDK1.4的项目中可以采用net.sf.json来处理。 一.fastjson实例 JsonUtil.java package com.study; impor</div> </li> <li><a href="/article/1591.htm" title="【RPC框架HttpInvoker一】HttpInvoker:Spring自带RPC框架" target="_blank">【RPC框架HttpInvoker一】HttpInvoker:Spring自带RPC框架</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a> <div>HttpInvoker是Spring原生的RPC调用框架,HttpInvoker同Burlap和Hessian一样,提供了一致的服务Exporter以及客户端的服务代理工厂Bean,这篇文章主要是复制粘贴了Hessian与Spring集成一文,【RPC框架Hessian四】Hessian与Spring集成   在 【RPC框架Hessian二】Hessian 对象序列化和反序列化一文中</div> </li> <li><a href="/article/1718.htm" title="【Mahout二】基于Mahout CBayes算法的20newsgroup的脚本分析" target="_blank">【Mahout二】基于Mahout CBayes算法的20newsgroup的脚本分析</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/Mahout/1.htm">Mahout</a> <div>#!/bin/bash # # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information re</div> </li> <li><a href="/article/1845.htm" title="nginx三种获取用户真实ip的方法" target="_blank">nginx三种获取用户真实ip的方法</a> <span class="text-muted">ronin47</span> <div>随着nginx的迅速崛起,越来越多公司将apache更换成nginx. 同时也越来越多人使用nginx作为负载均衡, 并且代理前面可能还加上了CDN加速,但是随之也遇到一个问题:nginx如何获取用户的真实IP地址,如果后端是apache,请跳转到<apache获取用户真实IP地址>,如果是后端真实服务器是nginx,那么继续往下看。 实例环境: 用户IP 120.22.11.11 </div> </li> <li><a href="/article/1972.htm" title="java-判断二叉树是不是平衡" target="_blank">java-判断二叉树是不是平衡</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>参考了 http://zhedahht.blog.163.com/blog/static/25411174201142733927831/ 但是用java来实现有一个问题。 由于Java无法像C那样“传递参数的地址,函数返回时能得到参数的值”,唯有新建一个辅助类:AuxClass import ljn.help.*; public class BalancedBTree { </div> </li> <li><a href="/article/2099.htm" title="BeanUtils.copyProperties VS PropertyUtils.copyProperties" target="_blank">BeanUtils.copyProperties VS PropertyUtils.copyProperties</a> <span class="text-muted">诸葛不亮</span> <a class="tag" taget="_blank" href="/search/PropertyUtils/1.htm">PropertyUtils</a><a class="tag" taget="_blank" href="/search/BeanUtils/1.htm">BeanUtils</a> <div> BeanUtils.copyProperties VS  PropertyUtils.copyProperties  作为两个bean属性copy的工具类,他们被广泛使用,同时也很容易误用,给人造成困然;比如:昨天发现同事在使用BeanUtils.copyProperties copy有integer类型属性的bean时,没有考虑到会将null转换为0,而后面的业</div> </li> <li><a href="/article/2226.htm" title="[金融与信息安全]最简单的数据结构最安全" target="_blank">[金融与信息安全]最简单的数据结构最安全</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a> <div>       现在最流行的数据库的数据存储文件都具有复杂的文件头格式,用操作系统的记事本软件是无法正常浏览的,这样的情况会有什么问题呢?        从信息安全的角度来看,如果我们数据库系统仅仅把这种格式的数据文件做异地备份,如果相同版本的所有数据库管理系统都同时被攻击,那么</div> </li> <li><a href="/article/2353.htm" title="vi区段删除" target="_blank">vi区段删除</a> <span class="text-muted">Cwind</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/vi/1.htm">vi</a><a class="tag" taget="_blank" href="/search/%E5%8C%BA%E6%AE%B5%E5%88%A0%E9%99%A4/1.htm">区段删除</a> <div>区段删除是编辑和分析一些冗长的配置文件或日志文件时比较常用的操作。简记下vi区段删除要点备忘。   vi概述    引文中并未将末行模式单独列为一种模式。单不单列并不重要,能区分命令模式与末行模式即可。   vi区段删除步骤: 1. 在末行模式下使用:set nu显示行号 非必须,随光标移动vi右下角也会显示行号,能够正确找到并记录删除开始行</div> </li> <li><a href="/article/2480.htm" title="清除tomcat缓存的方法总结" target="_blank">清除tomcat缓存的方法总结</a> <span class="text-muted">dashuaifu</span> <a class="tag" taget="_blank" href="/search/tomcat/1.htm">tomcat</a><a class="tag" taget="_blank" href="/search/%E7%BC%93%E5%AD%98/1.htm">缓存</a> <div>用tomcat容器,大家可能会发现这样的问题,修改jsp文件后,但用IE打开 依然是以前的Jsp的页面。 出现这种现象的原因主要是tomcat缓存的原因。 解决办法如下: 在jsp文件头加上 <meta http-equiv="Expires" content="0"> <meta http-equiv="kiben&qu</div> </li> <li><a href="/article/2607.htm" title="不要盲目的在项目中使用LESS CSS" target="_blank">不要盲目的在项目中使用LESS CSS</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/less/1.htm">less</a> <div> 如果你还不知道LESS CSS是什么东西,可以看一下这篇文章,是我一朋友写给新人看的《CSS——LESS》   不可否认,LESS CSS是个强大的工具,它弥补了css没有变量、无法运算等一些“先天缺陷”,但它似乎给我一种错觉,就是为了功能而实现功能。   比如它的引用功能 ? .rounded_corners{     </div> </li> <li><a href="/article/2734.htm" title="[入门]更上一层楼" target="_blank">[入门]更上一层楼</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/yii2/1.htm">yii2</a> <div>更上一层楼 通篇阅读完整个“入门”部分,你就完成了一个完整 Yii 应用的创建。在此过程中你学到了如何实现一些常用功能,例如通过 HTML 表单从用户那获取数据,从数据库中获取数据并以分页形式显示。你还学到了如何通过 Gii 去自动生成代码。使用 Gii 生成代码把 Web 开发中多数繁杂的过程转化为仅仅填写几个表单就行。 本章将介绍一些有助于更好使用 Yii 的资源: </div> </li> <li><a href="/article/2861.htm" title="Apache HttpClient使用详解" target="_blank">Apache HttpClient使用详解</a> <span class="text-muted">eksliang</span> <a class="tag" taget="_blank" href="/search/httpclient/1.htm">httpclient</a><a class="tag" taget="_blank" href="/search/http%E5%8D%8F%E8%AE%AE/1.htm">http协议</a> <div>Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会</div> </li> <li><a href="/article/2988.htm" title="zxing二维码扫描功能" target="_blank">zxing二维码扫描功能</a> <span class="text-muted">gundumw100</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/zxing/1.htm">zxing</a> <div>经常要用到二维码扫描功能 现给出示例代码 import com.google.zxing.WriterException; import com.zxing.activity.CaptureActivity; import com.zxing.encoding.EncodingHandler; import android.app.Activity; import an</div> </li> <li><a href="/article/3115.htm" title="纯HTML+CSS带说明的黄色导航菜单" target="_blank">纯HTML+CSS带说明的黄色导航菜单</a> <span class="text-muted">ini</span> <a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/hovertree/1.htm">hovertree</a> <div>HoverTree带说明的CSS菜单:纯HTML+CSS结构链接带说明的黄色导航   在线体验效果:http://hovertree.com/texiao/css/1.htm代码如下,保存到HTML文件可以看到效果:   <!DOCTYPE html > <html > <head> <title>HoverTree</div> </li> <li><a href="/article/3242.htm" title="fastjson初始化对性能的影响" target="_blank">fastjson初始化对性能的影响</a> <span class="text-muted">kane_xie</span> <a class="tag" taget="_blank" href="/search/fastjson/1.htm">fastjson</a><a class="tag" taget="_blank" href="/search/%E5%BA%8F%E5%88%97%E5%8C%96/1.htm">序列化</a> <div>之前在项目中序列化是用thrift,性能一般,而且需要用编译器生成新的类,在序列化和反序列化的时候感觉很繁琐,因此想转到json阵营。对比了jackson,gson等框架之后,决定用fastjson,为什么呢,因为看名字感觉很快。。。   网上的说法:   fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。 </div> </li> <li><a href="/article/3369.htm" title="基于Mybatis封装的增删改查实现通用自动化sql" target="_blank">基于Mybatis封装的增删改查实现通用自动化sql</a> <span class="text-muted">mengqingyu</span> <a class="tag" taget="_blank" href="/search/DAO/1.htm">DAO</a> <div>1.基于map或javaBean的增删改查可实现不写dao接口和实现类以及xml,有效的提高开发速度。 2.支持自定义注解包括主键生成、列重复验证、列名、表名等 3.支持批量插入、批量更新、批量删除 <bean id="dynamicSqlSessionTemplate" class="com.mqy.mybatis.support.Dynamic</div> </li> <li><a href="/article/3496.htm" title="js控制input输入框的方法封装(数字,中文,字母,浮点数等)" target="_blank">js控制input输入框的方法封装(数字,中文,字母,浮点数等)</a> <span class="text-muted">qifeifei</span> <a class="tag" taget="_blank" href="/search/javascript+js/1.htm">javascript js</a> <div>在项目开发的时候,经常有一些输入框,控制输入的格式,而不是等输入好了再去检查格式,格式错了就报错,体验不好。 /** 数字,中文,字母,浮点数(+/-/.) 类型输入限制,只要在input标签上加上 jInput="number,chinese,alphabet,floating" 备注:floating属性只能单独用*/     funct</div> </li> <li><a href="/article/3623.htm" title="java 计时器应用" target="_blank">java 计时器应用</a> <span class="text-muted">tangqi609567707</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/timer/1.htm">timer</a> <div>mport java.util.TimerTask;   import java.util.Calendar;   public class MyTask extends TimerTask {        private static final int </div> </li> <li><a href="/article/3750.htm" title="erlang输出调用栈信息" target="_blank">erlang输出调用栈信息</a> <span class="text-muted">wudixiaotie</span> <a class="tag" taget="_blank" href="/search/erlang/1.htm">erlang</a> <div>在erlang otp的开发中,如果调用第三方的应用,会有有些错误会不打印栈信息,因为有可能第三方应用会catch然后输出自己的错误信息,所以对排查bug有很大的阻碍,这样就要求我们自己打印调用的栈信息。用这个函数:erlang:process_display (self (), backtrace).需要注意这个函数只会输出到标准错误输出。 也可以用这个函数:erlang:get_s</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>