面试小结

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/1891101604044664832.htm" title="Vue 2 路由指南:从基础到高级" target="_blank">Vue 2 路由指南:从基础到高级</a> <span class="text-muted">鸡吃丸子</span> <a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</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><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E6%A1%86%E6%9E%B6/1.htm">前端框架</a> <div>注意:对于代码看不清的部分,用鼠标选中就能看到了,背景颜色和字体颜色过于接近,我也不知道怎么调,只能这样子先看着了一、VueRouter是什么?VueRouter是Vue.js官方的路由管理器,它允许你在单页面应用中通过不同的URL显示不同的组件。VueRouter与Vue.js核心深度集成,提供了声明式的路由定义、嵌套路由、动态路由、导航守卫等功能,帮助开发者构建复杂的单页面应用。二、安装与配置</div> </li> <li><a href="/article/1891090884112478208.htm" title="Java 实现拖拽列表更新排序" target="_blank">Java 实现拖拽列表更新排序</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/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/cloud/1.htm">cloud</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/boot/1.htm">boot</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a> <div>拖拽列表更新排序,接口提供给前端这个功能主要是需要的算法逻辑很多图解:如在前端页面上想把id=5拖拽到id=3上拖拽之后的效果:解析图例:代码示例:DevToCoding|Java面试指南、学习笔记/***拖拽数据更新排序*@paramcurrentId当前数据id*@paramtargetId目标数据id*@return*/@RequestMapping("/sort/{currentId}/{</div> </li> <li><a href="/article/1891079528084729856.htm" title="cocos creator从零开发简单框架(07)-UI返回" target="_blank">cocos creator从零开发简单框架(07)-UI返回</a> <span class="text-muted"></span> <a class="tag" taget="_blank" href="/search/cocos/1.htm">cocos</a> <div>参考UIMain,创建一个新的UIBag,创建一个名为BtnBack文本为返回的按钮,再创建一个名为BtnMain文本为主页的按钮,然后把UIBag节点拖动到resources目录下并从场景删除。新建scripts/UIBag.ts,内容如下。importUIBasefrom"../framework/scripts/view/UIBase"importUIMgrfrom"../framework</div> </li> <li><a href="/article/1891078912692252672.htm" title="Flux架构:构建可预测的Web应用状态管理体系" target="_blank">Flux架构:构建可预测的Web应用状态管理体系</a> <span class="text-muted">阿珊和她的猫</span> <a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>前端开发工程师、技术日更博主、已过CET6阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1牛客高级专题作者、打造专栏《前端面试必备》、《2024面试高频手撕题》蓝桥云课签约作者、上架课程《Vue.js和Egg.js开发企业级健康管理项目》、《带你从入门到实战全面掌握uni-app》前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。文章</div> </li> <li><a href="/article/1891077022319439872.htm" title="Vue3 + Moveable + Selecto 拖拽组件 Demo" target="_blank">Vue3 + Moveable + Selecto 拖拽组件 Demo</a> <span class="text-muted">巧克力力克巧!</span> <a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E7%A7%AF%E7%B4%AF/1.htm">学习积累</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>一、项目概述本demo旨在通过Vue3、Moveable和Selecto三个库的结合,实现一个基本的拖拽组件功能。通过Selecto实现元素的选择功能,通过Moveable控制选中元素的大小和位置。同时,封装了hooks以实现元素与数据之间的绑定,使得操作更加灵活和可维护。二、技术栈Vue3:用于构建用户界面的渐进式JavaScript框架。Moveable:一个可以拖拽、缩放、旋转DOM元素的库</div> </li> <li><a href="/article/1891074499709825024.htm" title="中国第一本介绍企业级开发工具Zend的书籍" target="_blank">中国第一本介绍企业级开发工具Zend的书籍</a> <span class="text-muted">weixin_34245749</span> <a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E5%B7%A5%E5%85%B7/1.htm">开发工具</a><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/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/ViewUI/1.htm">ViewUI</a> <div>【书名】大道PHP:LAMP+Zend+开源框架整合开发与实战【作者】三扬科技【ISBN】978-7-121-09171-1【出版社】电子工业出版社【出版日期】2009年9月【定价】99.00元(含视频DVD1张)【宣传语】第一本介绍企业级开发工具Zend的书籍最完整的PHP5开发技术与实战代码万用大全基于Linux+Apache+MySQL+PHP黄金组合,Socket、WebService、A</div> </li> <li><a href="/article/1891069455673389056.htm" title="利用Python进行数据清洗与预处理:Pandas的高级用法" target="_blank">利用Python进行数据清洗与预处理:Pandas的高级用法</a> <span class="text-muted">步入烟尘</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><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/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>本文已收录于《Python超入门指南全册》本专栏专门针对零基础和需要进阶提升的同学所准备的一套完整教学,从基础到精通不断进阶深入,后续还有实战项目,轻松应对面试,专栏订阅地址:https://blog.csdn.net/mrdeam/category_12647587.html优点:订阅限时19.9付费专栏,私信博主还可进入全栈VIP答疑群,作者优先解答机会(代码指导、远程服务),群里大佬众多可以</div> </li> <li><a href="/article/1891065925759725568.htm" title="学习使用Elm架构的JavaScript项目" target="_blank">学习使用Elm架构的JavaScript项目</a> <span class="text-muted">陈昊和</span> <div>学习使用Elm架构的JavaScript项目learn-elm-architecture-in-javascript:unicorn:LearnhowtobuildwebappsusingtheElmArchitecturein"vanilla"JavaScript(step-by-stepTDDtutorial)!项目地址:https://gitcode.com/gh_mirrors/le/le</div> </li> <li><a href="/article/1891065926242070528.htm" title="学习Elm架构在JavaScript中的应用" target="_blank">学习Elm架构在JavaScript中的应用</a> <span class="text-muted">萧书泓</span> <div>学习Elm架构在JavaScript中的应用learn-elm-architecture-in-javascript:unicorn:LearnhowtobuildwebappsusingtheElmArchitecturein"vanilla"JavaScript(step-by-stepTDDtutorial)!项目地址:https://gitcode.com/gh_mirrors/le/le</div> </li> <li><a href="/article/1891065798995275776.htm" title="推荐开源项目:Flame —— 构建PureScript Web应用的轻量级框架" target="_blank">推荐开源项目:Flame —— 构建PureScript Web应用的轻量级框架</a> <span class="text-muted">贾彩知Maura</span> <div>推荐开源项目:Flame——构建PureScriptWeb应用的轻量级框架purescript-flameFast&simpleframeworkforbuildingwebapplications项目地址:https://gitcode.com/gh_mirrors/pu/purescript-flame项目介绍Flame是一个受Elm架构启发,专为使用PureScript开发web应用程序而设</div> </li> <li><a href="/article/1891065672667033600.htm" title="探索Redux:构建可预测、可测试的JavaScript应用" target="_blank">探索Redux:构建可预测、可测试的JavaScript应用</a> <span class="text-muted">黎杉娜Torrent</span> <div>探索Redux:构建可预测、可测试的JavaScript应用learn-redux:boom:ComprehensiveNotesforLearning(howtouse)ReduxtomanagestateinyourWeb/Mobile(React.js)Apps.项目地址:https://gitcode.com/gh_mirrors/le/learn-redux项目介绍在现代Web开发中,J</div> </li> <li><a href="/article/1891057860494815232.htm" title="探索Elm架构:用纯JavaScript构建优雅的Web应用" target="_blank">探索Elm架构:用纯JavaScript构建优雅的Web应用</a> <span class="text-muted">邵瑗跃Free</span> <div>探索Elm架构:用纯JavaScript构建优雅的Web应用learn-elm-architecture-in-javascript:unicorn:LearnhowtobuildwebappsusingtheElmArchitecturein"vanilla"JavaScript(step-by-stepTDDtutorial)!项目地址:https://gitcode.com/gh_mirro</div> </li> <li><a href="/article/1891053702341521408.htm" title="Java面试八股文:Memcached面试题专场(持续更新中......)" target="_blank">Java面试八股文:Memcached面试题专场(持续更新中......)</a> <span class="text-muted">Java凤梨</span> <a class="tag" taget="_blank" href="/search/Java%E9%87%91%E4%B8%89%E9%93%B6%E5%9B%9B%E9%9D%A2%E8%AF%95%E9%A2%98/1.htm">Java金三银四面试题</a><a class="tag" taget="_blank" href="/search/memcached/1.htm">memcached</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a> <div>全套Java金三银四面试题持续更新可文末自取,建议关注收藏不然下次找不到哟~目录1、Memcached是什么,有什么作用?memcached服务在企业集群架构中有哪些应用场景?一、作为数据库的前端缓存应用二、作业集群的session会话共享存储。2、Memcached服务分布式集群如何实现?3、Memcached服务特点及工作原理是什么?4、简述Memcached内存管理机制原理?SlabAllo</div> </li> <li><a href="/article/1891053197435400192.htm" title="thymeleaf模板_Thymeleaf参考手册(十五):模板缓存" target="_blank">thymeleaf模板_Thymeleaf参考手册(十五):模板缓存</a> <span class="text-muted">weixin_39814960</span> <a class="tag" taget="_blank" href="/search/thymeleaf%E6%A8%A1%E6%9D%BF/1.htm">thymeleaf模板</a> <div>Thymeleaf的工作要归功于一组解析器(用于标记和文本),该解析器将模板解析为事件序列(打开标签,文本,关闭标签,注释等)和一系列处理器(每种需要一种行为)应用–修改模板解析的事件序列,以便通过将原始模板与我们的数据结合来创建我们期望的结果。默认情况下,它还包括存储已解析模板的缓存;在处理模板文件之前读取和解析模板文件所导致的事件顺序。在Web应用程序中工作时,此功能特别有用,它基于以下概念:</div> </li> <li><a href="/article/1891053069785952256.htm" title="高可用(HA)架构" target="_blank">高可用(HA)架构</a> <span class="text-muted">weixin_34344403</span> <a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/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/java/1.htm">java</a> <div>http://aokunsang.iteye.com/blog/2053719浅谈web应用的负载均衡、集群、高可用(HA)解决方案http://zhuanlan.51cto.com/art/201612/524201.htm互联网架构“高可用”http://www.blogjava.net/ivanwan/archive/2013/12/25/408014.htmlLVS/Nginx/HAPro</div> </li> <li><a href="/article/1891049790502924288.htm" title="【计算机毕设选题】2025计算机毕业设计选题推荐-高通过率选题指南(二)" target="_blank">【计算机毕设选题】2025计算机毕业设计选题推荐-高通过率选题指南(二)</a> <span class="text-muted">计算机YiDian</span> <a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E6%9C%BA%E6%AF%95%E8%AE%BE%E5%AE%9E%E6%88%98%E6%A1%88%E4%BE%8B/1.htm">计算机毕设实战案例</a><a class="tag" taget="_blank" href="/search/%E6%AF%95%E4%B8%9A%E8%AE%BE%E8%AE%A1%E9%80%89%E9%A2%98%2F%E5%BC%80%E9%A2%98/1.htm">毕业设计选题/开题</a><a class="tag" taget="_blank" href="/search/%E6%BA%90%E7%A0%81/1.htm">源码</a><a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E6%9C%BA%E6%AF%95%E4%B8%9A%E8%AE%BE%E8%AE%A1%E9%80%89%E9%A2%98/1.htm">计算机毕业设计选题</a><a class="tag" taget="_blank" href="/search/%E6%AF%95%E4%B8%9A%E8%AE%BE%E8%AE%A1%E9%80%89%E9%A2%98/1.htm">毕业设计选题</a><a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E6%9C%BA%E6%AF%95%E8%AE%BE%E9%80%89%E9%A2%98/1.htm">计算机毕设选题</a><a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E6%9C%BA%E6%AF%95%E4%B8%9A%E8%AE%BE%E8%AE%A1/1.htm">计算机毕业设计</a> <div>计算机毕业设计作为大学生涯的收官之作,承载着对学生专业技能、创新思维及实践能力的全面考验。随着信息技术的飞速发展,计算机毕业设计的形式也日益多样化,从传统的网站(Web)开发到新兴的小程序、APP构建,再到大数据分析与处理,每一种形式都代表着不同的技术挑战与实现路径。本文旨在探讨这些多样化的毕业设计形式及其背后的技术支撑,为即将踏上毕业设计征程的学子们提供一份详实的参考指南,对毕设开发需要帮助,以</div> </li> <li><a href="/article/1891048274958282752.htm" title="WEB漏洞-XXE&XML之利用检测绕过" target="_blank">WEB漏洞-XXE&XML之利用检测绕过</a> <span class="text-muted">网小白白</span> <a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/php/1.htm">php</a><a class="tag" taget="_blank" href="/search/web/1.htm">web</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8/1.htm">网络安全</a> <div>XXE"xmlexternalentityinjection"-XML外部实体注入漏洞服务端接收和解析了来自用户端的xml数据,而又没有做严格的安全控制,从而导致xml外部实体注入xml基本语法XML被设计用来结构化、存储以及传输信息;恰恰相反,HTML是被设计用来显示数据,其焦点是数据的外观。XML没有预定义的标签。它仅仅是纯文本而已。有能力处理纯文本的软件都可以处理XML。XML不会做任何事情</div> </li> <li><a href="/article/1891044744973316096.htm" title="Vue.js 新手必看:5个趣味小案例快速理解数据绑定原理" target="_blank">Vue.js 新手必看:5个趣味小案例快速理解数据绑定原理</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/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>Vue.js是一个渐进式JavaScript框架,用于构建用户界面。其核心特性之一是数据绑定,它允许开发者通过简单的声明式语法将数据与DOM元素绑定在一起。这种双向数据绑定机制使得数据更新和视图更新变得非常直观和高效。本文将通过5个趣味小案例,帮助Vue.js新手快速理解数据绑定的原理和实现方式。案例1:简单的文本绑定目标将输入框中的内容实时显示在页面上。实现代码Vue数据绑定-文本绑定输入框内容</div> </li> <li><a href="/article/1891042221252210688.htm" title="Spring Boot中使用RabbitMQ(2)" target="_blank">Spring Boot中使用RabbitMQ(2)</a> <span class="text-muted">D1561691</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-rabbitmq/1.htm">java-rabbitmq</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/boot/1.htm">boot</a><a class="tag" taget="_blank" href="/search/rabbitmq/1.htm">rabbitmq</a> <div>《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》,点击传送门,即可获取!MessageBroker与AMQP简介MessageBroker是一种消息验证、传输、路由的架构模式,其设计目标主要应用于下面这些场景:消息路由到一个或多个目的地消息转化为其他的表现方式执行消息的聚集、消息的分解,并将结果发送到他们的目的地,然后重新组合相应返回给消息用户调用Web服务来检索数据响</div> </li> <li><a href="/article/1891032135620423680.htm" title="java获取服务器状态_获取远程服务器上 Java 进程的运行状态" target="_blank">java获取服务器状态_获取远程服务器上 Java 进程的运行状态</a> <span class="text-muted">夏种子</span> <a class="tag" taget="_blank" href="/search/java%E8%8E%B7%E5%8F%96%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%8A%B6%E6%80%81/1.htm">java获取服务器状态</a> <div>为了安全考虑,有些服务器会被限制登录.本文介绍如何获取远程服务器上Java进程的运行状态.启动jstatd服务在服务器端启动jstatd服务后,远程的机器可以通过rmi协议获取服务器上Java程序的运行状态.在服务器上创建jstatd的授权文件,假设文件路径为/etc/jstatd.all.policy,内容如下:grantcodebase"file:/usr/local/java/lib/too</div> </li> <li><a href="/article/1891031883022659584.htm" title="面试官 :Java 调优经验有吗?" target="_blank">面试官 :Java 调优经验有吗?</a> <span class="text-muted">Think_Higher</span> <a class="tag" taget="_blank" href="/search/Java%E7%94%9F%E6%80%81%E5%9C%88/1.htm">Java生态圈</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E4%B8%ADIT%E4%BC%81%E4%B8%9A%E9%9D%A2%E8%AF%95%E9%A2%98%E6%95%B4%E7%90%86/1.htm">大中IT企业面试题整理</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><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/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>文章目录调优准备性能分析CPU分析jstack[pid]jstat-gcutil[pid]vmstat15内存分析IO分析1.文件IO2.网络IO其他分析工具JavaMissionControl(jmc)BtraceJwebap性能调优CPU调优内存调优IO调优其他优化建议JVM参数进阶对于调优这个事情来说,一般就是三个过程:性能监控:问题没有发生,你并不知道你需要调优什么?此时需要一些系统、应用</div> </li> <li><a href="/article/1891030370376282112.htm" title="django上传文件" target="_blank">django上传文件</a> <span class="text-muted">大得369</span> <a class="tag" taget="_blank" href="/search/django/1.htm">django</a><a class="tag" taget="_blank" href="/search/sqlite/1.htm">sqlite</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>1、settings.py配置#静态文件配置STATIC_URL='/static/'STATICFILES_DIRS=[BASE_DIR/'static',]上传文件#定义一个视图函数,该函数接收一个request参数fromdjango.shortcutsimportrender#必备引入importjsonfromdjango.views.decorators.httpimportrequi</div> </li> <li><a href="/article/1891027346215989248.htm" title="Base64 PDF解析器" target="_blank">Base64 PDF解析器</a> <span class="text-muted">沐沐uuu</span> <a class="tag" taget="_blank" href="/search/%E4%B8%80%E4%BA%9B%E5%B0%8F%E5%B7%A5%E5%85%B7/1.htm">一些小工具</a><a class="tag" taget="_blank" href="/search/pdf/1.htm">pdf</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>Base64PDF解析器body{font-family:Arial,sans-serif;max-width:800px;margin:20pxauto;padding:20px;}.container{border:1pxsolid#ccc;padding:20px;border-radius:5px;}textarea{width:100%;height:150px;margin:10px0</div> </li> <li><a href="/article/1891024318855442432.htm" title="spring security 实现短信登录---若依RuoYi整合短信验证码登录" target="_blank">spring security 实现短信登录---若依RuoYi整合短信验证码登录</a> <span class="text-muted">菜鸡且互啄69</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a> <div>背景:若依默认使用账号密码进行登录,但是咱们客户需要增加一个短信登录功能,即在不更改原有账号密码登录的基础上,整合短信验证码登录。本案例基于RuoYi-Vue版本实现,其他版本应该大同小异。本文参考http://t.csdnimg.cn/go78Z1自定义短信登录token验证仿照UsernamePasswordAuthenticationToken类,编写短信登录token验证。我们自己构造的这</div> </li> <li><a href="/article/1891023435866370048.htm" title="青少年编程与数学 02-009 Django 5 Web 编程 14课题、命名空间" target="_blank">青少年编程与数学 02-009 Django 5 Web 编程 14课题、命名空间</a> <span class="text-muted">明月看潮生</span> <a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B%E4%B8%8E%E6%95%B0%E5%AD%A6/1.htm">编程与数学</a><a class="tag" taget="_blank" href="/search/%E7%AC%AC02%E9%98%B6%E6%AE%B5/1.htm">第02阶段</a><a class="tag" taget="_blank" href="/search/%E9%9D%92%E5%B0%91%E5%B9%B4%E7%BC%96%E7%A8%8B/1.htm">青少年编程</a><a class="tag" taget="_blank" href="/search/django/1.htm">django</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B%E4%B8%8E%E6%95%B0%E5%AD%A6/1.htm">编程与数学</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>青少年编程与数学02-009Django5Web编程14课题、命名空间一、命名空间命名空间的作用如何定义和使用命名空间定义命名空间使用命名空间命名空间的注意事项二、命名空间的好处1.**避免URL名称冲突**2.**提高代码的可读性和可维护性**3.**增强应用的可重用性**4.**支持复杂的URL结构**5.**便于团队协作和文档编写**三、练习步骤1:创建项目和应用步骤2:定义模型`blog/</div> </li> <li><a href="/article/1891022173833850880.htm" title="python flask django在线投票系统 md14i" target="_blank">python flask django在线投票系统 md14i</a> <span class="text-muted">专注分享bishe530</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/flask/1.htm">flask</a><a class="tag" taget="_blank" href="/search/django/1.htm">django</a> <div>文章目录具体实现截图项目技术介绍论文写作思路核心代码部分展示可定制开发功能创新亮点django项目示例源码/演示视频获取方式具体实现截图项目技术介绍Python版本:python3.7以上框架支持:flask/django开发软件:PyCharm数据库:mysql数据库工具:Navicat浏览器:谷歌浏览器(PycharmFlaskDjangoVuemysql)论文写作思路第一部分绪论,主要介绍所</div> </li> <li><a href="/article/1891021921319972864.htm" title="深入理解现代前端框架:Vue.js 的进阶探秘" target="_blank">深入理解现代前端框架:Vue.js 的进阶探秘</a> <span class="text-muted">lozhyf</span> <a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E6%A1%86%E6%9E%B6/1.htm">前端框架</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/flutter/1.htm">flutter</a> <div>在当今的web开发领域,前端框架如雨后春笋般涌现,而Vue.js凭借其简洁易用和强大的功能,成为了众多开发者的心头好。本文将带领大家深入探索Vue.js的一些进阶特性,帮助你将Vue应用开发提升到新的高度。一、Vue.js的响应式原理Vue.js最核心的特性之一就是其响应式系统。当数据发生变化时,Vue能够自动更新DOM,这一过程是如何实现的呢?Vue.js使用了Object.defineProp</div> </li> <li><a href="/article/1891021794916233216.htm" title="C++开发IDE用VisualStudio好还是QtCreator好?" target="_blank">C++开发IDE用VisualStudio好还是QtCreator好?</a> <span class="text-muted">1号程序媛</span> <a class="tag" taget="_blank" href="/search/Qt%E5%BC%80%E5%8F%91%E4%BB%8E%E9%9B%B6%E5%88%B0%E7%B2%BE%E9%80%9A/1.htm">Qt开发从零到精通</a><a class="tag" taget="_blank" href="/search/C%2B%2B%E5%BC%80%E5%8F%91%E5%A4%A7%E5%85%A8/1.htm">C++开发大全</a><a class="tag" taget="_blank" href="/search/ide/1.htm">ide</a><a class="tag" taget="_blank" href="/search/visual/1.htm">visual</a><a class="tag" taget="_blank" href="/search/studio/1.htm">studio</a><a class="tag" taget="_blank" href="/search/C%2B%2B/1.htm">C++</a> <div>在熟练使用了VisualStudio和QtCreator之后,我依然认为QtCreator作为C++项目开发IDE的便捷性真的相当杰出。当然了,VisualStudio和QtCreator本身就不是一个量级,VS越做越大,庞大的插件库也使得他能够支持从嵌入式到手机端,从web到脚本,甚至游戏,仿真等等各个领域的开发任务。所以做得大,必然导致很多细节功能没法做得好。相反,Qt的IDE工具QtCrea</div> </li> <li><a href="/article/1891021793167208448.htm" title="软件工程-软件测试" target="_blank">软件工程-软件测试</a> <span class="text-muted">Wlq0415</span> <a class="tag" taget="_blank" href="/search/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B/1.htm">软件工程</a><a class="tag" taget="_blank" href="/search/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B/1.htm">软件工程</a> <div>目录测试的目的测试原则测试过程传统软件的测试策略单元测试的测试内容(考点)集成测试确认测试准则/有效性测试测试方法黑盒测试等价类划分边界值分析错误推测因果图判定表白盒测试WEB服务器测试测试的目的就是希望能以最少的人力和时间发现潜在的各种错误和缺陷。测试原则应尽早、不断地进行测试。测试工作应该避免由原开发软件的人或小组承担在设计测试方案时,不仅要确定输入数据,而且要根据系统功能确定预期输出结果。在</div> </li> <li><a href="/article/1891021762632675328.htm" title="cocos creator从零开发简单框架(10)-UI更新" target="_blank">cocos creator从零开发简单框架(10)-UI更新</a> <span class="text-muted"></span> <a class="tag" taget="_blank" href="/search/cocos/1.htm">cocos</a> <div>当UI打开后,别的地方数据更新了可能要通知UI同时更新,这时需要有更新UI的接口。编辑framework/scripts/AppUtil.ts,添加getClassName方法获取View类名。publicstaticgetClassName(viewCls:any):string{return(newviewCls()asViewBase).getClassName()}编辑framework/</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>