在Python中用Request库模拟登录(三):Discuz论坛(未加密,有验证码,有隐藏验证)...

以Discuz的官方站为例。直接点击网页右上角的登录按钮,会弹出一个带验证码的登录窗口。输入验证码之后,会检查验证码是否正确。然后登录。首先,通过抓包分析,这些过程浏览器和服务器交换了哪些数据。

 在Python中用Request库模拟登录(三):Discuz论坛(未加密,有验证码,有隐藏验证)..._第1张图片

 

抓包分析

整个过程产生了5条数据:

在Python中用Request库模拟登录(三):Discuz论坛(未加密,有验证码,有隐藏验证)..._第2张图片

第一个是GET请求,返回了一段html代码

<div id="main_messaqge_LZH8S">
<div id="layer_login_LZH8S">
<h3 class="flb">
<em id="returnmessage_LZH8S">
用户登录em>
<span><a href="javascript:;" class="flbc" onclick="hideWindow('login', 0, 1);" title="关闭">关闭a>span>
h3>
<form method="post" autocomplete="off" name="login" id="loginform_LZH8S" class="cl" onsubmit="pwdclear = 1;ajaxpost('loginform_LZH8S', 'returnmessage_LZH8S', 'returnmessage_LZH8S', 'onerror');return false;" action="member.php?mod=logging&action=login&loginsubmit=yes&handlekey=login&loginhash=LZH8S">
<div class="c cl">
<input type="hidden" name="formhash" value="41969484" />
<input type="hidden" name="referer" value="http://www.discuz.net/forum.php" />
<div class="rfm">
<table>
<tr>
<th>
<span class="login_slct">
<select name="loginfield" style="float: left;" width="45" id="loginfield_LZH8S">
<option value="username">用户名option>
<option value="email">Emailoption>
select>
span>
th>
<td><input type="text" name="username" id="username_LZH8S" autocomplete="off" size="30" class="px p_fre" tabindex="1" value="" />td>
<td class="tipcol"><a href="member.php?mod=register">立即注册a>td>
tr>
table>
div>
<div class="rfm">
<table>
<tr>
<th><label for="password3_LZH8S">密码:label>th>
<td><input type="password" id="password3_LZH8S" name="password" onfocus="clearpwd()" size="30" class="px p_fre" tabindex="1" />td>
<td class="tipcol"><a href="javascript:;" onclick="display('layer_login_LZH8S');display('layer_lostpw_LZH8S');" title="找回密码">找回密码a>td>
tr>
table>
div>
<div class="rfm">
<table>
<tr>
<th>安全提问:th>
<td><select id="loginquestionid_LZH8S" width="213" name="questionid" onchange="if($('loginquestionid_LZH8S').value > 0) {$('loginanswer_row_LZH8S').style.display='';} else {$('loginanswer_row_LZH8S').style.display='none';}">
<option value="0">安全提问(未设置请忽略)option>
<option value="1">母亲的名字option>
<option value="2">爷爷的名字option>
<option value="3">父亲出生的城市option>
<option value="4">您其中一位老师的名字option>
<option value="5">您个人计算机的型号option>
<option value="6">您最喜欢的餐馆名称option>
<option value="7">驾驶执照最后四位数字option>
select>td>
tr>
table>
div>
<div class="rfm" id="loginanswer_row_LZH8S"  style="display:none">
<table>
<tr>
<th>答案:th>
<td><input type="text" name="answer" id="loginanswer_LZH8S" autocomplete="off" size="30" class="px p_fre" tabindex="1" />td>
tr>
table>
div>
<span id="seccode_cSA">span>        
<script type="text/javascript" reload="1">updateseccode('cSA', '
:
', 'member::logging');script> <div class="rfm bw0"> <table> <tr> <th>th> <td><label for="cookietime_LZH8S"><input type="checkbox" class="pc" name="cookietime" id="cookietime_LZH8S" tabindex="1" value="2592000" />自动登录label>td> tr> table> div> <div class="rfm mbw bw0"> <table width="100%"> <tr> <th> th> <td> <button class="pn pnc" type="submit" name="loginsubmit" value="true" tabindex="1"><strong>登录strong>button> td> <td> td> tr> table> div> <div class="rfm bw0 "> <hr class="l" /> <table> <tr> <th>快捷登录:th> <td> <a href="http://www.discuz.net/connect.php?mod=login&op=init&referer=http%3A%2F%2Fwww.discuz.net%2Fforum.php&statfrom=login" target="_top" rel="nofollow"><img src="static/image/common/qq_login.gif" class="vm" />a> <a href="plugin.php?id=wechat:login"><img src="source/plugin/wechat/image/wechat_login.png" class="vm" />a> td> tr> table> div> div> form> div> <div id="layer_lostpw_LZH8S" style="display: none;"> <h3 class="flb"> <em id="returnmessage3_LZH8S">找回密码em> <span><a href="javascript:;" class="flbc" onclick="hideWindow('login')" title="关闭">关闭a>span> h3> <form method="post" autocomplete="off" id="lostpwform_LZH8S" class="cl" onsubmit="ajaxpost('lostpwform_LZH8S', 'returnmessage3_LZH8S', 'returnmessage3_LZH8S', 'onerror');return false;" action="member.php?mod=lostpasswd&lostpwsubmit=yes&infloat=yes"> <div class="c cl"> <input type="hidden" name="formhash" value="41969484" /> <input type="hidden" name="handlekey" value="lostpwform" /> <div class="rfm"> <table> <tr> <th><span class="rq">*span><label for="lostpw_email">Email:label>th> <td><input type="text" name="email" id="lostpw_email" size="30" value="" tabindex="1" class="px p_fre" />td> tr> table> div> <div class="rfm"> <table> <tr> <th><label for="lostpw_username">用户名:label>th> <td><input type="text" name="username" id="lostpw_username" size="30" value="" tabindex="1" class="px p_fre" />td> tr> table> div> <div class="rfm mbw bw0"> <table> <tr> <th>th> <td><button class="pn pnc" type="submit" name="lostpwsubmit" value="true" tabindex="100"><span>提交span>button>td> tr> table> div> div> form> div> div> <div id="layer_message_LZH8S" style="display: none;"> <h3 class="flb" id="layer_header_LZH8S"> <em>用户登录em> <span><a href="javascript:;" class="flbc" onclick="hideWindow('login')" title="关闭">关闭a>span> h3> <div class="c"><div class="alert_right"> <div id="messageleft_LZH8S">div> <p class="alert_btnleft" id="messageright_LZH8S">p> div> div> <script type="text/javascript" reload="1"> var pwdclear = 0; function initinput_login() { document.body.focus(); if($('loginform_LZH8S')) { $('loginform_LZH8S').username.focus(); } simulateSelect('loginfield_LZH8S'); } initinput_login(); function clearpwd() { if(pwdclear) { $('password3_LZH8S').value = ''; } pwdclear = 0; } script>
登录窗口

看起来就是登录窗口。

特别注意到,这段代码中有

loginhash=LZH8S
<input type="hidden" name="formhash" value="41969484" />

'LZH8S'在代码中频繁出现,formhash出现两次。

刷新之后,loginhash和formhash发生了变化。

第二个GET请求返回了一段JavaScript代码

 1 if($('seccode_cSA')) {
 2     if(!$('vseccode_cSA')) {
 3         var sectpl = seccheck_tpl['cSA'] != '' ? seccheck_tpl['cSA'].replace(//g, 'codecSA') : '';
 4         var sectplcode = sectpl != '' ? sectpl.split('') : Array('
',': ','
',''); 5 var string = '' + sectplcode[0] + '验证码' + sectplcode[1] + '' + 6 ' 换一个' + 7 '' + 8 sectplcode[2] + '请输入下面动画图片中的字符
' + sectplcode[3]; 9 evalscript(string); 10 $('seccode_cSA').innerHTML = string; 11 } else { 12 var string = '请输入下面动画图片中的字符
'; 13 evalscript(string); 14 $('vseccode_cSA').innerHTML = string; 15 } 16 17 }
code info

其中的update值在刷新和点击换一个验证码之后产生变化

src="misc.php?mod=seccode&update=18644&idhash=cSA"

第三个GET请求的头文件包含

GET http://www.discuz.net/misc.php?mod=seccode&update=18644&idhash=cSA HTTP/1.1
Accept: image/webp,image/*,*/*;q=0.8

根据Accept属性可知返回的是一张图片,请求链接中包含了上一条请求的update值。

第4个GET请求的链接为

GET http://www.discuz.net/misc.php?mod=seccode&action=check&inajax=1&modid=member::logging&idhash=cSA&secverify=e38p 

最后的secverify=e38p为验证码,返回的文本为

xml version="1.0" encoding="gbk"?>
<root>succeed]]>root>

根据链接中的action=check和返回的文本推断,这是在检查输入的验证码是否正确。

第5个为POST请求,headers为

 1 POST http://www.discuz.net/member.php?mod=logging&action=login&loginsubmit=yes&handlekey=login&loginhash=LZH8S&inajax=1 HTTP/1.1
 2 Host: www.discuz.net
 3 Connection: keep-alive
 4 Content-Length: 200
 5 Cache-Control: max-age=0
 6 Origin: http://www.discuz.net
 7 Upgrade-Insecure-Requests: 1
 8 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36
 9 Content-Type: application/x-www-form-urlencoded
10 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
11 Referer: http://www.discuz.net/forum.php
12 Accept-Encoding: gzip, deflate
13 Accept-Language: zh-CN,zh;q=0.8
14 Cookie: t7asq_4ad6_saltkey=X3kj05VV; t7asq_4ad6_lastvisit=1496539605; t7asq_4ad6_nofavfid=1; t7asq_4ad6_ulastactivity=1496722517%7C0; t7asq_4ad6_lastcheckfeed=3051978%7C1496722517; t7asq_4ad6_security_cookiereport=798bNiNKvpmS%2BJb6aMC1CK0u2rBbgm%2Bl4RHOagb%2FADNc1uz1WEc6; t7asq_4ad6_connect_is_bind=0; t7asq_4ad6_forum_lastvisit=D_10_1496722811; pgv_pvi=7116158144; pgv_info=ssi=s5527714008; t7asq_4ad6_seccode=14415.a12e22e835ed3df84a; t7asq_4ad6_lastact=1496730222%09misc.php%09seccode
15 
16 formhash=41969484&referer=http%3A%2F%2Fwww.discuz.net%2Fforum.php&loginfield=username&username=123&password=123&questionid=0&answer=&seccodehash=cSA&seccodemodid=member%3A%3Alogging&seccodeverify=e38p

请求的链接中含有loginhash=LZH8S,提交的数据中含有formhash=41969484和验证码seccodeverify=e38p和没有被加密的用户名和密码。

因为用户名和密码是随便输入的,所以返回的文本为

xml version="1.0" encoding="gbk"?>
<root>登录失败,您还可以尝试 4 次]]>root>

下面进行模拟登录,注意要获取loginhash、formhash和update的值。

模拟登录

登录过程中的5个请求的headers都不同,在模拟请求时,完全复制抓包到的headers。

定义函数:

 1 import requests
 2 session=requests.session()
 3 
 4 #获取登录窗口中的loginhash和formhash
 5 def get_login_window():
 6     url='http://www.discuz.net/member.php?mod=logging&action=login&infloat=yes&handlekey=login&inajax=1&ajaxtarget=fwin_content_login'
 7     headers={'Host':'www.discuz.net','Connection':'keep-alive','User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36','X-Requested-With':'XMLHttpRequest','Accept':'*/*','Referer':'http://www.discuz.net/forum.php','Accept-Encoding':'gzip, deflate, sdch','Accept-Language':'zh-CN,zh;q=0.8'}
 8     #清空原来的headers
 9     session.headers.clear()
10     #更新headers
11     session.headers.update(headers)
12     r=session.get(url)
13     #获取loginhash
14     p=r.text.find('loginhash')+len('loginhash')+1
15     loginhash=r.text[p:p+5]
16     #获取formhash
17     p=r.text.find('formhash')+len('formhash" value="')
18     formhash=r.text[p:p+8]
19     return (loginhash,formhash)
20 
21 #获取update
22 def get_code_info():
23     url='http://www.discuz.net/misc.php?mod=seccode&action=update&idhash=cSA&0.3916181418197131&modid=member::logging'
24     r=session.get(url)
25     p=r.text.find('update=')
26     update=r.text[p+7:p+12]
27     return update
28 
29 #获取验证码
30 def get_code(update):
31     url='http://www.discuz.net/misc.php?mod=seccode&update='+update+'&idhash=cSA'
32     headers={'Host':'www.discuz.net','Connection':'keep-alive','User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36','Accept':'image/webp,image/*,*/*;q=0.8','Referer':'http://www.discuz.net/forum.php','Accept-Encoding':'gzip, deflate, sdch','Accept-Language':'zh-CN,zh;q=0.8'}
33     session.headers.clear()
34     session.headers.update(headers)
35     r=session.get(url)
36     if(r.content[:3]==b'GIF'):
37         #保存验证码图片
38         file=open('code.gif','wb')
39         file.write(r.content)
40         file.close()
41     else:
42         #打印错误信息
43         print(r.text)
44 
45 #检查验证码是否正确
46 #通过人工识别验证码code,:)
47 def check_code(code):
48     url='http://www.discuz.net/misc.php?mod=seccode&action=check&inajax=1&modid=member::logging&idhash=cSA&secverify='+code
49     headers={'Host':'www.discuz.net','Connection':'keep-alive','User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36','Accept':'image/webp,image/*,*/*;q=0.8','Referer':'http://www.discuz.net/forum.php','Accept-Encoding':'gzip, deflate, sdch','Accept-Language':'zh-CN,zh;q=0.8'}
50     session.headers.clear()
51     session.headers.update(headers)
52     r=session.get(url)
53     return r.text
54 
55 #模拟登录
56 def login(loginhash,formhash,code,username,password):
57     url='http://www.discuz.net/member.php?mod=logging&action=login&loginsubmit=yes&handlekey=login&loginhash='+loginhash+'&inajax=1'
58     data={'formhash':formhash,
59           'referer':'http://www.discuz.net/forum.php',
60           'loginfield':'username',
61           'username':username,
62           'password':password,
63           'questionid':'0',
64           'answer':'',
65           'seccodehash':'cSA',
66           'seccodemodid':'member::logging',
67           'seccodeverify':code}
68     headers={'Host':'www.discuz.net','Connection':'keep-alive','Content-Length':'203','Cache-Control':'max-age=0','Origin':'http://www.discuz.net','Upgrade-Insecure-Requests':'1','User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36','Content-Type':'application/x-www-form-urlencoded','Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8','Referer':'http://www.discuz.net/forum.php','Accept-Encoding':'gzip, deflate','Accept-Language':'zh-CN,zh;q=0.8'}
69     session.headers.clear()
70     session.headers.update(headers)
71     r=session.post(url,data)
72     print(r.text)

模拟登录:

(loginhash,formhash)=get_login_window()
get_code(get_code_info())
code=input()#人工识别 :)
check_code(code)
#[CDATA[succeed]]
login(loginhash,formhash,code,username,password)
#欢迎您回来,现在将转入登录前页面

测试:

此页面只有在登录后才能显示

url='http://www.discuz.net/home.php?mod=space&do=pm'

标题为 ”用户名 -  Discuz! 官方站 -  Powered by Discuz!“

如果未登录,则标题为 ”提示信息 -  Discuz! 官方站 -  Powered by Discuz!“

session.headers.clear()
r=session.get(url)
p=r.text.find('</span><span style="color:#800000;">'</span>)+len(<span style="color:#800000;">'</span><span style="color:#800000;"><title></span><span style="color:#800000;">'</span><span style="color:#000000;">)
</span><span style="color:#0000ff;">print</span>(r.text[p:r.text.find(<span style="color:#800000;">'</span><span style="color:#800000;"><</span><span style="color:#800000;">'</span>,p)])</pre> 
   </div> 
   <p>如果打印出了 ”用户名 -  Discuz! 官方站 -  Powered by Discuz!“,则证明登录成功。</p> 
  </div> 
  <p>转载于:https://www.cnblogs.com/-E6-/p/6944620.html</p> 
 </div> 
</div>
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1292532189916897280"></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">你可能感兴趣的:(在Python中用Request库模拟登录(三):Discuz论坛(未加密,有验证码,有隐藏验证)...)</h4>
        <div id="paradigm-article-related">
            <div class="recommend-post mb30">
                <ul class="widget-links">
                    <li><a href="/article/1901559443414380544.htm"
                           title="如何使用 Python 实现生成对抗网络" target="_blank">如何使用 Python 实现生成对抗网络</a>
                        <span class="text-muted">NoABug</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%94%9F%E6%88%90%E5%AF%B9%E6%8A%97%E7%BD%91%E7%BB%9C/1.htm">生成对抗网络</a><a class="tag" taget="_blank" href="/search/tensorflow/1.htm">tensorflow</a>
                        <div>如何使用Python实现生成对抗网络生成对抗网络(GenerativeAdversarialNetwork,GAN)是一种能够生成高质量、逼真图像的深度学习模型。GAN模型由两个神经网络组成:一个生成器和一个判别器。生成器的任务是以噪声为输入,生成看似真实的图像;而判别器则需要根据输入的图像,判断该图像是真实的还是由生成器生成的。下面我们将通过Python代码来实现一个简单的GAN模型。首先,我们</div>
                    </li>
                    <li><a href="/article/1901559444177743872.htm"
                           title="GAN模型的Python应用——生成对抗网络" target="_blank">GAN模型的Python应用——生成对抗网络</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/%E7%94%9F%E6%88%90%E5%AF%B9%E6%8A%97%E7%BD%91%E7%BB%9C/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>GAN模型的Python应用——生成对抗网络生成对抗网络(GenerativeAdversarialNetwork,GAN)是深度学习中的一种重要模型,已经被广泛应用于图像、文本生成等领域。GAN模型由两个神经网络组成:生成器(Generator)和判别器(Discriminator)。生成器用于生成假样本,判别器用于评估真实性。两个神经网络相互博弈,通过一次次迭代训练,最终生成器可以生成足以骗过</div>
                    </li>
                    <li><a href="/article/1901559191001165824.htm"
                           title="嵌入式c语言进阶(三)状态机State Machine" target="_blank">嵌入式c语言进阶(三)状态机State Machine</a>
                        <span class="text-muted">niuTaylor</span>
<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/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>状态机(StateMachine)是一种描述系统在不同状态之间转换行为的数学模型或设计模式,广泛应用于嵌入式系统、业务流程、游戏开发等领域。以下从核心概念、实现方式、应用实战三方面进行详细解析:一、状态机核心概念四大要素现态(CurrentState):系统当前所处的状态。事件(Event):触发状态转移的条件,如用户操作、时间到期等。动作(Action):状态转移时执行的操作,例如发送通知、更新</div>
                    </li>
                    <li><a href="/article/1901558812482007040.htm"
                           title="嵌入式开发中的Doxygen注释规范实践" target="_blank">嵌入式开发中的Doxygen注释规范实践</a>
                        <span class="text-muted">剁椒鱼头炖香菇</span>
<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/stm32/1.htm">stm32</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E7%89%87%E6%9C%BA/1.htm">单片机</a>
                        <div>目录一、为什么需要规范的注释?二、Doxygen注释规范详解1.文件注释2.函数注释3.宏定义注释4.结构体注释三、注释规范最佳实践1.文件注释模板2.函数注释模板3.代码注释原则四、常见注释误区与解决方案误区1:过度注释误区2:过时注释误区3:模糊注释五、工具推荐六、项目实践案例七、总结一、为什么需要规范的注释?在嵌入式开发中,规范的代码注释如同精密仪器的说明书,具有以下重要作用:提高可读性:使</div>
                    </li>
                    <li><a href="/article/1901558558261047296.htm"
                           title="二值逻辑、三值逻辑到多值逻辑的变迁(含示例)" target="_blank">二值逻辑、三值逻辑到多值逻辑的变迁(含示例)</a>
                        <span class="text-muted">搏博</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E5%8E%9F%E7%90%86/1.htm">人工智能原理</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a><a class="tag" taget="_blank" href="/search/%E7%BA%BF%E6%80%A7%E4%BB%A3%E6%95%B0/1.htm">线性代数</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/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/1.htm">数据分析</a>
                        <div>二值逻辑、三值逻辑到多值逻辑的变迁是一个逻辑体系不断拓展和深化的过程,反映了人们对复杂现象和不确定性问题认识的逐步深入。前文,我们已经探讨过命题逻辑与谓词逻辑,了解了如何用符号语言从浅入深地刻画现实世界。具体可以看我的CSDN文章:人工智能的数学基础之命题逻辑与谓词逻辑(含示例)-CSDN博客人工智能中用到的逻辑可概括地划分为两大类。第一类是经典命题逻辑和一阶谓词逻辑,第二类是泛指除经典逻辑之外的</div>
                    </li>
                    <li><a href="/article/1901558432041857024.htm"
                           title="ollama下载的DeepSeek的模型(Model)文件在哪里?(C盘下)" target="_blank">ollama下载的DeepSeek的模型(Model)文件在哪里?(C盘下)</a>
                        <span class="text-muted">神秘泣男子</span>
<a class="tag" taget="_blank" href="/search/%E5%B8%B8%E8%A7%81AI%E5%A4%A7%E6%A8%A1%E5%9E%8B%E9%83%A8%E7%BD%B2%E4%B8%8E%E5%BA%94%E7%94%A8/1.htm">常见AI大模型部署与应用</a><a class="tag" taget="_blank" href="/search/Ollama%E9%83%A8%E7%BD%B2LLM/1.htm">Ollama部署LLM</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/ollama/1.htm">ollama</a><a class="tag" taget="_blank" href="/search/llama/1.htm">llama</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E7%84%B6%E8%AF%AD%E8%A8%80%E5%A4%84%E7%90%86/1.htm">自然语言处理</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a>
                        <div>目录一、下载大模型(DeepSeek)2.安装Ollama3.检查安装是否成功二、拉取大模型(DeepSeek)1.打开命令行2.下载模型3.测试下载4.等待下载完成三.模型存放路径这个位置!!在人工智能快速发展的今天,大语言模型已经成为许多人探索和使用的热门技术。而Ollama作为一款轻量级的本地大模型运行工具,让我们能够在个人电脑上体验各种强大的AI模型,如DeepSeek系列。不少用户在安装</div>
                    </li>
                    <li><a href="/article/1901558053023576064.htm"
                           title="sequelize + Nodejs + MySQL 的简单用法" target="_blank">sequelize + Nodejs + MySQL 的简单用法</a>
                        <span class="text-muted">小公鸡卡哇伊呀~</span>
<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/1.htm">数据库</a>
                        <div>HowtoUseSequelizeORMinNodeJS-Tutorial1Sequlize简介Sequelize是最流行的可以与Nodejs一起使用的一种关系数据库ORM(Object-relationalmapping对象关系映射),Mongoose是MongoDB的ORM.Sequelize的作用,简单地说,就是避免在代码里写原生SQL语句,而是将这种语句改成JavaScript:不必再写类</div>
                    </li>
                    <li><a href="/article/1901558053929545728.htm"
                           title="iOS中使用QLPreviewController来预览文件" target="_blank">iOS中使用QLPreviewController来预览文件</a>
                        <span class="text-muted">happyrabbit456</span>
<a class="tag" taget="_blank" href="/search/Mac/1.htm">Mac</a><a class="tag" taget="_blank" href="/search/%2B/1.htm">+</a><a class="tag" taget="_blank" href="/search/ios/1.htm">ios</a>
                        <div>MacOS系统有一个很方便的功能就是文件预览,在Finder中选中一个文件,按下空格键就能够预览其中的内容。支持图片、文档、视频等类型。在iOS4.0系统中,官方SDK提供了一个QLPreviewController,使用它就可以让我们的App在iPhone/iPad中直接预览各个文件了。官方的开发文档中说明其支持的文件类型有:iWork文档微软Office97以上版本的文档RTF文档PDF文件图</div>
                    </li>
                    <li><a href="/article/1901557926632419328.htm"
                           title="YOLOv8 改进:添加 GAM 注意力机制" target="_blank">YOLOv8 改进:添加 GAM 注意力机制</a>
                        <span class="text-muted">鱼弦</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E6%97%B6%E4%BB%A3/1.htm">人工智能时代</a><a class="tag" taget="_blank" href="/search/YOLO/1.htm">YOLO</a>
                        <div>YOLOv8改进:添加GAM注意力机制引言在目标检测领域,YOLO(YouOnlyLookOnce)网络因其速度和准确性被广泛应用。然而,随着场景的复杂化,仅仅依靠卷积特征可能不足以捕捉图像中的重要信息。引入注意力机制,如GAM(GlobalAttentionMechanism),可以有效提高模型对关键区域的关注,从而提升检测性能。技术背景GAM是一种全局注意力机制,通过全局信息聚合和自适应权重分</div>
                    </li>
                    <li><a href="/article/1901557674395365376.htm"
                           title="如何使用Python实现生成对抗网络(GAN)" target="_blank">如何使用Python实现生成对抗网络(GAN)</a>
                        <span class="text-muted">「已注销」</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%92%E8%81%94%E7%BD%91%E5%89%8D%E6%B2%BF%E6%8A%80%E6%9C%AF/1.htm">互联网前沿技术</a><a class="tag" taget="_blank" href="/search/%E9%9F%A9%E8%BF%9B%E7%9A%84%E5%88%9B%E4%BD%9C%E7%A9%BA%E9%97%B4/1.htm">韩进的创作空间</a><a class="tag" taget="_blank" href="/search/%E5%85%A8%E6%A0%88%E5%BC%80%E5%8F%91%E7%9F%A5%E8%AF%86%E5%BA%93/1.htm">全栈开发知识库</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%94%9F%E6%88%90%E5%AF%B9%E6%8A%97%E7%BD%91%E7%BB%9C/1.htm">生成对抗网络</a><a class="tag" taget="_blank" href="/search/tensorflow/1.htm">tensorflow</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/1.htm">数据分析</a>
                        <div>生成对抗网络(GAN)是一种深度学习模型,由两个部分组成:生成器和判别器。生成器负责生成与训练数据相似的新数据,而判别器负责判断输入数据是真实的还是由生成器生成的。这两个部分不断相互博弈,直到生成器能够生成非常逼真的数据,使判别器难以区分生成数据和真实数据。下面是一个简单的Python实现,使用TensorFlow和Keras库。在开始之前,请确保已经安装了TensorFlow和Keras。imp</div>
                    </li>
                    <li><a href="/article/1901556792454868992.htm"
                           title="技术解析麦萌短剧《月光下的你》:从「时间序列的对抗扰动」到「加密身份的收敛证明」" target="_blank">技术解析麦萌短剧《月光下的你》:从「时间序列的对抗扰动」到「加密身份的收敛证明」</a>
                        <span class="text-muted">萌萌短剧</span>
<a class="tag" taget="_blank" href="/search/%E9%87%8D%E6%9E%84/1.htm">重构</a>
                        <div>《月光下的你》以十六年的时间跨度展开一场关于「数据污染」与「身份验证」的深度博弈,本文将用机器学习视角拆解这场跨越时空的模型纠偏实验。1.数据污染事件:十六年前的对抗攻击许芳菲(Agent_Xu)的遭遇可视为时间序列上的对抗样本注入:标签篡改攻击:许清清(Adversary_XuQing)通过伪造标签(Label_Tampering)将Agent_Xu与傅临州(Node_Fu)强行关联,触发道德约</div>
                    </li>
                    <li><a href="/article/1901556792878493696.htm"
                           title="大理石平板精密量具和其他量具有什么不同?" target="_blank">大理石平板精密量具和其他量具有什么不同?</a>
                        <span class="text-muted">北重机械加工中心18833778062</span>
<a class="tag" taget="_blank" href="/search/%E5%88%B6%E9%80%A0/1.htm">制造</a>
                        <div>大理石平板精密量具与其他量具(如金属平板精密量具或塑料量具)在材质和使用特点上有一些不同。材质:大理石平板精密量具是用大理石材质制成的,具有很高的硬度和稳定性,不易受温度变化和湿度变化影响;而金属平板精密量具通常由金属材质(如不锈钢)制成,而塑料量具则由塑料材质制成。稳定性:大理石平板具有良好的稳定性,使其在测量时不易变形或受到外部因素的影响,能够保持较高的测量精度;金属平板精密量具虽也具有较好的</div>
                    </li>
                    <li><a href="/article/1901556162738843648.htm"
                           title="《动态磁盘RAID阵列:深度解析与实战指南》" target="_blank">《动态磁盘RAID阵列:深度解析与实战指南》</a>
                        <span class="text-muted">懂技术的小又又</span>
<a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E6%9C%BA/1.htm">计算机</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</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/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/windows/1.htm">windows</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>目录一、RAID技术概述常见RAID级别RAID0:条带化,提升读写性能,无冗余RAID1:镜像,数据冗余,提供数据保护RAID5:奇偶校验,提供冗余和负载均衡RAID10:镜像+条带化,兼具数据保护和高性能二、动态磁盘管理动态磁盘的优势三、动态磁盘RAID阵列实战实验环境搭建(vmvareworkstation)四、实际应用案例五、RAID技术的优化与维护六、RAID技术的未来发展七、软RAID</div>
                    </li>
                    <li><a href="/article/1901555533081538560.htm"
                           title="iOS QLPreviewController预览PDF文件等(Swift)" target="_blank">iOS QLPreviewController预览PDF文件等(Swift)</a>
                        <span class="text-muted">#摩斯先生</span>
<a class="tag" taget="_blank" href="/search/iOS/1.htm">iOS</a><a class="tag" taget="_blank" href="/search/pdf/1.htm">pdf</a><a class="tag" taget="_blank" href="/search/swift/1.htm">swift</a><a class="tag" taget="_blank" href="/search/ios/1.htm">ios</a><a class="tag" taget="_blank" href="/search/xcode/1.htm">xcode</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>QLPreviewController是可以显示常见文件的专用控制器。可以显示的文件有:文档类:PDF(.pdf)MicrosoftOffice文件:Word文档(.doc,.docx)Excel表格(.xls,.xlsx)PowerPoint演示文稿(.ppt,.pptx)iWork文档:Pages(.pages)Numbers(.numbers)Keynote(.key)纯文本文件(.txt,</div>
                    </li>
                    <li><a href="/article/1901553770811158528.htm"
                           title="matlab从无到有系列(二):矩阵运算基础" target="_blank">matlab从无到有系列(二):矩阵运算基础</a>
                        <span class="text-muted">左手の明天</span>
<a class="tag" taget="_blank" href="/search/Matlab/1.htm">Matlab</a><a class="tag" taget="_blank" href="/search/matlab/1.htm">matlab</a><a class="tag" taget="_blank" href="/search/%E7%9F%A9%E9%98%B5/1.htm">矩阵</a><a class="tag" taget="_blank" href="/search/%E7%BA%BF%E6%80%A7%E4%BB%A3%E6%95%B0/1.htm">线性代数</a>
                        <div>目录矩阵运算典例各种矩阵的生成全一矩阵、全零矩阵和单位矩阵随机矩阵特殊矩阵矩阵的范式矩阵旋转和矩阵变维矩阵运算典例2.1在MATLAB中如何建立矩阵,并将其赋予变量a?>> a=[573;491]2.2有几种建立矩阵的方法?各有什么优点?</div>
                    </li>
                    <li><a href="/article/1901553644331921408.htm"
                           title="Cesium:开源的三维地球可视化引擎" target="_blank">Cesium:开源的三维地球可视化引擎</a>
                        <span class="text-muted">ZD1</span>
<a class="tag" taget="_blank" href="/search/%E4%BF%A1%E6%81%AF%E5%8F%AF%E8%A7%86%E5%8C%96/1.htm">信息可视化</a>
                        <div>简介:Cesium是一款开源的三维地球可视化引擎,为开发者和用户提供了强大且易于使用的工具,用于创建令人惊叹的虚拟地球场景。它基于WebGL技术,能够在现代的Web浏览器上运行,并支持各种平台和设备。本文将详细介绍Cesium的特点和应用领域。特点:a.高性能:Cesium利用GPU加速和流式处理技术,能够处理大规模的地理数据,并实时渲染出逼真的三维地球场景。b.开放性:Cesium是一个开源项目</div>
                    </li>
                    <li><a href="/article/1901553390941433856.htm"
                           title="InfluxDB写入测试" target="_blank">InfluxDB写入测试</a>
                        <span class="text-muted">PascalMing</span>
<a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/influxdb/1.htm">influxdb</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E8%AF%BB%E5%86%99%E6%B5%8B%E8%AF%95/1.htm">读写测试</a>
                        <div>早几年测试时序库时,采集数据到kafka,然后用不同数据进行存储验证。Influxdb是花时间比较多的,它的数据建模方法、读写方法都需要使用特殊的API。时间久了自己也经常忘记,把当时的测试关键代码记录下来,也方便日后查找。代码基于java编写。1、接口数据定义,clientid+tag组合必须唯一publicclassKafkaInfo{//客户端idpublicStringclientid;/</div>
                    </li>
                    <li><a href="/article/1901552761057636352.htm"
                           title="迪威模型发布系统为客户提供优质的建站平台" target="_blank">迪威模型发布系统为客户提供优质的建站平台</a>
                        <span class="text-muted">3D小将</span>
<a class="tag" taget="_blank" href="/search/%E8%BF%AA%E5%A8%81%E6%A8%A1%E5%9E%8B/1.htm">迪威模型</a><a class="tag" taget="_blank" href="/search/%E8%81%94%E8%AE%AF%E8%BD%AF%E4%BB%B6/1.htm">联讯软件</a><a class="tag" taget="_blank" href="/search/3d/1.htm">3d</a><a class="tag" taget="_blank" href="/search/%E5%BB%BA%E9%80%A0%E8%80%85%E6%A8%A1%E5%BC%8F/1.htm">建造者模式</a>
                        <div>迪威模型发布系统确实可以为客户提供优质的建站平台,以下从几个方面来分析:丰富的模型展示功能多格式支持:能够支持多种3D模型格式,如的SolidWorks、SketchUp、Catia、PROE等,这使得客户在构建网站时,可以轻松上传和展示各种来源的3D模型,满足不同行业、不同项目的需求。无论是建筑设计公司展示建筑模型,还是机械制造企业展示产品模型,都能完美适配。交互性强:提供模型旋转、多角度浏览、</div>
                    </li>
                    <li><a href="/article/1901552507281272832.htm"
                           title="JavaScript 的 requestAnimationFrame" target="_blank">JavaScript 的 requestAnimationFrame</a>
                        <span class="text-muted">小华0000</span>
<a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/ecmascript/1.htm">ecmascript</a>
                        <div>在现代Web开发中,用户体验至关重要。动画作为用户交互的重要组成部分,如果处理不当,很容易出现卡顿、掉帧等问题,严重影响用户体验。幸运的是,JavaScript提供了一个强大的API:requestAnimationFrame(简称rAF),它为我们创建平滑、高效的动画提供了坚实的基础。本文将深入探讨requestAnimationFrame的原理、使用、高级技巧以及在实际项目中的应用,帮助你掌握</div>
                    </li>
                    <li><a href="/article/1901552506404663296.htm"
                           title="Animate.css" target="_blank">Animate.css</a>
                        <span class="text-muted">小华0000</span>
<a class="tag" taget="_blank" href="/search/Animate/1.htm">Animate</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/%E5%8A%A8%E7%94%BB/1.htm">动画</a>
                        <div>这个库提供了多种预定义的动画效果,比如平移、缩放、旋转、淡入淡出等,开发者可以通过简单的类名直接在HTML元素上应用这些动画,而无需自己编写复杂的CSS动画代码。以下是对Animate.css的详细介绍:1.Animate.css简介Animate.css是一个基于CSS的动画库,主要特点包括:简单易用:只需在HTML元素中添加指定的类名即可使用动画。丰富的动画效果:包括入场、出场、注意效果等数十</div>
                    </li>
                    <li><a href="/article/1901552379245948928.htm"
                           title="Simulink实例演示:智能车辆远程驾驶控制系统仿真" target="_blank">Simulink实例演示:智能车辆远程驾驶控制系统仿真</a>
                        <span class="text-muted">xiaoheshang_123</span>
<a class="tag" taget="_blank" href="/search/MATLAB/1.htm">MATLAB</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E9%A1%B9%E7%9B%AE%E5%AE%9E%E4%BE%8B/1.htm">开发项目实例</a><a class="tag" taget="_blank" href="/search/1000/1.htm">1000</a><a class="tag" taget="_blank" href="/search/%E4%BE%8B%E4%B8%93%E6%A0%8F/1.htm">例专栏</a><a class="tag" taget="_blank" href="/search/%E6%89%8B%E6%8A%8A%E6%89%8B%E6%95%99%E4%BD%A0%E5%AD%A6/1.htm">手把手教你学</a><a class="tag" taget="_blank" href="/search/MATLAB/1.htm">MATLAB</a><a class="tag" taget="_blank" href="/search/%E4%B8%93%E6%A0%8F/1.htm">专栏</a><a class="tag" taget="_blank" href="/search/simulink/1.htm">simulink</a><a class="tag" taget="_blank" href="/search/matlab/1.htm">matlab</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E5%8A%A8%E9%A9%BE%E9%A9%B6/1.htm">自动驾驶</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a>
                        <div>目录Simulink实例演示:智能车辆远程驾驶控制系统仿真一、背景介绍二、所需工具和环境三、步骤详解步骤1:创建Simulink模型步骤1.1:打开Simulink并新建模型步骤2:设计车辆动力学模型步骤2.1:添加车辆底盘模块步骤2.2:添加纵向和横向控制模块步骤2.3:连接各模块步骤3:设计动力总成系统步骤3.1:选择动力源类型步骤3.2:配置动力总成参数步骤3.3:连接动力总成模块到车辆底盘</div>
                    </li>
                    <li><a href="/article/1901552378679717888.htm"
                           title="MySQL0基础概念4" target="_blank">MySQL0基础概念4</a>
                        <span class="text-muted">wqx951</span>
<a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a>
                        <div>MySQL体系结构概述1.MySQL系统的重要组件包括连接管理器、线程管理器、命令分发器。2.连接管理器负责接收用户请求,转交给线程管理器,验证用户访问。3.用户请求包括查询命令,这些命令由命令分发器处理,如交友、缓存、解析结果或记录用户行为。MySQL查询处理流程1.查询处理流程包括高速缓存查询、词法分析、语法分析、结果缓存检查和分析后结果处理。2.如果查询结果在缓存中,直接返回缓存结果;否则,</div>
                    </li>
                    <li><a href="/article/1901551370801049600.htm"
                           title="三层架构 与 MVC、MVP、MVVM 模式的区别" target="_blank">三层架构 与 MVC、MVP、MVVM 模式的区别</a>
                        <span class="text-muted">weixin_43747073</span>
<a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/mvc/1.htm">mvc</a><a class="tag" taget="_blank" href="/search/mvp/1.htm">mvp</a><a class="tag" taget="_blank" href="/search/mvvm/1.htm">mvvm</a>
                        <div>以下内容只是个人不成熟的见解,才疏学浅,惭愧。文章目录1、三层架构2、MVX架构模式2.1MVC2.2MVPMVC&MVP的区别MVP的优点MVP的缺点2.3MVVMMVVM的优点总结参考1、三层架构三层架构是一种软件架构(softwarearchitecture),是一种分层结构。在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构,它将整个业务应用从上到下划分为:表示层(UserIn</div>
                    </li>
                    <li><a href="/article/1901550866213695488.htm"
                           title="C/C++中左值引用,右值引用,万能引用的关系和区别" target="_blank">C/C++中左值引用,右值引用,万能引用的关系和区别</a>
                        <span class="text-muted">东北豆子哥</span>
<a class="tag" taget="_blank" href="/search/C%2B%2B/1.htm">C++</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>
                        <div>在C++中,左值引用、右值引用和万能引用是三种不同的引用类型,它们的主要区别在于绑定的对象类型和生命周期管理。以下是它们的详细解释和示例代码。1.左值引用(LvalueReference)左值引用绑定到一个左值(即有名字的、可以取地址的对象)。左值引用通常用于传递参数或延长对象的生命周期。#includevoidprint(int&x){std::coutvoidprint(int&&x){std</div>
                    </li>
                    <li><a href="/article/1901550110651772928.htm"
                           title="diy nas配置推荐2019_打造家用NAS之一(2019年版)" target="_blank">diy nas配置推荐2019_打造家用NAS之一(2019年版)</a>
                        <span class="text-muted">weixin_39691748</span>
<a class="tag" taget="_blank" href="/search/diy/1.htm">diy</a><a class="tag" taget="_blank" href="/search/nas%E9%85%8D%E7%BD%AE%E6%8E%A8%E8%8D%902019/1.htm">nas配置推荐2019</a>
                        <div>大概6年前写了一些自己DIYNAS的文档,发表在http://newsmth.net上面。过了好多年再修改一下之前的文档,发布在这里,供大家参考。自己弄家用存储方面的东西算下来也有几年了。于是现在写点东西总结一下,也方便对这方面有兴趣的网友参考。希望大家看了之后能够少走弯路,造个适合自己的NAS。基本有如下的内容:什么类型的存储适合我?硬件选型OS安装基本配置性能调整总结与展望1.什么类型的存储适</div>
                    </li>
                    <li><a href="/article/1901549984428388352.htm"
                           title="matlab 矩阵的数组平方和,MATLAB中的矩阵和数组" target="_blank">matlab 矩阵的数组平方和,MATLAB中的矩阵和数组</a>
                        <span class="text-muted">跟英语死磕到底</span>
<a class="tag" taget="_blank" href="/search/matlab/1.htm">matlab</a><a class="tag" taget="_blank" href="/search/%E7%9F%A9%E9%98%B5%E7%9A%84%E6%95%B0%E7%BB%84%E5%B9%B3%E6%96%B9%E5%92%8C/1.htm">矩阵的数组平方和</a>
                        <div>本文概述MATLAB一次处理整个矩阵和数组。所有类型的数据变量都存储为多维数组,可以是字符,字符串或数字。二维数组称为矩阵,通常用于线性代数。在MATLAB中创建数组我们可以在MATLAB中以多种方式创建数组:通过在元素之间使用空格:此命令创建一个具有一行四列的数组变量”A”。存储在工作空间中的’A’变量和输出将在命令窗口中显示为:通过在元素之间使用逗号:此命令将创建一个具有一行四列的数组变量”a</div>
                    </li>
                    <li><a href="/article/1901549732308774912.htm"
                           title="大模型联网搜索组件 SearXNG 部署和使用" target="_blank">大模型联网搜索组件 SearXNG 部署和使用</a>
                        <span class="text-muted">「已注销」</span>

                        <div>SearXNG是一个免费的互联网元搜索引擎,它整合了来自超过70个搜索服务的结果。用户不会被跟踪或进行特征分析,很好地保护了用户隐私。2022年11月OpenAI发布ChatGPT后,大模型和知识库开始火爆,联网搜索成为弥补大模型知识陈旧的重要工具。提供元搜索功能的SearXNG开始被很多大模型应用比如ChatNio[1]采用,在大模型时代发挥了巨大作用。本文将介绍如何基于docker部署私人的S</div>
                    </li>
                    <li><a href="/article/1901549479073476608.htm"
                           title="Python在股票数据分析中的应用有哪些?如何用Python获取股票数据并进行可视化" target="_blank">Python在股票数据分析中的应用有哪些?如何用Python获取股票数据并进行可视化</a>
                        <span class="text-muted">财云量化</span>
<a class="tag" taget="_blank" href="/search/python%E7%82%92%E8%82%A1%E8%87%AA%E5%8A%A8%E5%8C%96/1.htm">python炒股自动化</a><a class="tag" taget="_blank" href="/search/%E9%87%8F%E5%8C%96%E4%BA%A4%E6%98%93/1.htm">量化交易</a><a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%8C%96%E4%BA%A4%E6%98%93/1.htm">程序化交易</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/python%E8%82%A1%E7%A5%A8%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/1.htm">python股票数据分析</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E8%8E%B7%E5%8F%96/1.htm">数据获取</a><a class="tag" taget="_blank" href="/search/%E5%8F%AF%E8%A7%86%E5%8C%96/1.htm">可视化</a><a class="tag" taget="_blank" href="/search/%E8%82%A1%E7%A5%A8%E9%87%8F%E5%8C%96%E6%8E%A5%E5%8F%A3/1.htm">股票量化接口</a><a class="tag" taget="_blank" href="/search/%E8%82%A1%E7%A5%A8API%E6%8E%A5%E5%8F%A3/1.htm">股票API接口</a>
                        <div>炒股自动化:申请官方API接口,散户也可以python炒股自动化(0),申请券商API接口python炒股自动化(1),量化交易接口区别Python炒股自动化(2):获取股票实时数据和历史数据Python炒股自动化(3):分析取回的实时数据和历史数据Python炒股自动化(4):通过接口向交易所发送订单Python炒股自动化(5):通过接口查询订单,查询账户资产股票量化,Python炒股,CSDN</div>
                    </li>
                    <li><a href="/article/1901548471412912128.htm"
                           title="RabbitMQ在Spring Boot中的使用" target="_blank">RabbitMQ在Spring Boot中的使用</a>
                        <span class="text-muted">VioletAmaranth</span>
<a class="tag" taget="_blank" href="/search/java-rabbitmq/1.htm">java-rabbitmq</a><a class="tag" taget="_blank" href="/search/rabbitmq/1.htm">rabbitmq</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a>
                        <div>在SpringBoot中使用RabbitMQ涉及多个步骤,包括配置、创建监听器和发送消息。以下是详细的使用指南:1.添加依赖需要在项目的pom.xml文件中添加spring-boot-starter-amqp依赖:org.springframework.bootspring-boot-starter-amqp这将触发自动配置。2.配置文件在application.properties或applic</div>
                    </li>
                    <li><a href="/article/1901547841558474752.htm"
                           title="前端学习网站大全" target="_blank">前端学习网站大全</a>
                        <span class="text-muted">洪布斯</span>

                        <div>CSDN-专业IT技术社区:https://www.csdn.net/GitHub:https://github.com/jQuery插件库-收集最全最新最好的jQuery插件:http://www.jq22.com/Iconfont-阿里巴巴矢量图标库:https://www.iconfont.cn/菜鸟教程-学的不仅是技术,更是梦想!:https://www.runoob.com/Animat</div>
                    </li>
                                <li><a href="/article/85.htm"
                                       title="ztree异步加载" target="_blank">ztree异步加载</a>
                                    <span class="text-muted">3213213333332132</span>
<a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a><a class="tag" taget="_blank" href="/search/json/1.htm">json</a><a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/ztree/1.htm">ztree</a>
                                    <div>相信新手用ztree的时候,对异步加载会有些困惑,我开始的时候也是看了API花了些时间才搞定了异步加载,在这里分享给大家。 
我后台代码生成的是json格式的数据,数据大家按各自的需求生成,这里只给出前端的代码。 
 
设置setting,这里只关注async属性的配置 
 

            var setting = {
            	//异步加载配置	
      </div>
                                </li>
                                <li><a href="/article/212.htm"
                                       title="thirft rpc 具体调用流程" target="_blank">thirft rpc 具体调用流程</a>
                                    <span class="text-muted">BlueSkator</span>
<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/rpc/1.htm">rpc</a><a class="tag" taget="_blank" href="/search/thrift/1.htm">thrift</a>
                                    <div>Thrift调用过程中,Thrift客户端和服务器之间主要用到传输层类、协议层类和处理类三个主要的核心类,这三个类的相互协作共同完成rpc的整个调用过程。在调用过程中将按照以下顺序进行协同工作: 
        (1)     将客户端程序调用的函数名和参数传递给协议层(TProtocol),协议</div>
                                </li>
                                <li><a href="/article/339.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/%E5%BC%82%E6%88%96/1.htm">异或</a><a class="tag" taget="_blank" href="/search/%5E/1.htm">^</a>
                                    <div>/*
 * 5 0101
 * 9 1010
 *
 * 5 ^ 5
 * 0101
 * 0101
 * -----
 * 0000
 * 得出第一个规律: 相同的数进行异或, 结果是0
 *
 * 9 ^ 5 ^ 6
 * 1010
 * 0101
 * ----
 * 1111
 *
 * 1111
 * 0110
 * ----
 * 1001
 </div>
                                </li>
                                <li><a href="/article/466.htm"
                                       title="事件源对象" target="_blank">事件源对象</a>
                                    <span class="text-muted">周华华</span>
<a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a>
                                    <div><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml&q</div>
                                </li>
                                <li><a href="/article/593.htm"
                                       title="MySql配置及相关命令" target="_blank">MySql配置及相关命令</a>
                                    <span class="text-muted">g21121</span>
<a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a>
                                    <div>        MySQL安装完毕后我们需要对它进行一些设置及性能优化,主要包括字符集设置,启动设置,连接优化,表优化,分区优化等等。 
  
        一 修改MySQL密码及用户 
     </div>
                                </li>
                                <li><a href="/article/720.htm"
                                       title="[简单]poi删除excel 2007超链接" target="_blank">[简单]poi删除excel 2007超链接</a>
                                    <span class="text-muted">53873039oycg</span>
<a class="tag" taget="_blank" href="/search/Excel/1.htm">Excel</a>
                                    <div>      采用解析sheet.xml方式删除超链接,缺点是要打开文件2次,代码如下: 
     
public void removeExcel2007AllHyperLink(String filePath) throws Exception {
		OPCPackage ocPkg = OPCPac</div>
                                </li>
                                <li><a href="/article/847.htm"
                                       title="Struts2添加 open flash chart" target="_blank">Struts2添加 open flash chart</a>
                                    <span class="text-muted">云端月影</span>

                                    <div>准备以下开源项目: 
1. Struts 2.1.6 
2. Open Flash Chart 2 Version 2 Lug Wyrm Charmer (28th, July 2009) 
3. jofc2,这东西不知道是没做好还是什么意思,好像和ofc2不怎么匹配,最好下源码,有什么问题直接改。 
4. log4j 
 
用eclipse新建动态网站,取名OFC2Demo,将Struts2 l</div>
                                </li>
                                <li><a href="/article/974.htm"
                                       title="spring包详解" target="_blank">spring包详解</a>
                                    <span class="text-muted">aijuans</span>
<a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a>
                                    <div>  
下载的spring包中文件及各种包众多,在项目中往往只有部分是我们必须的,如果不清楚什么时候需要什么包的话,看看下面就知道了。 aspectj目录下是在Spring框架下使用aspectj的源代码和测试程序文件。Aspectj是java最早的提供AOP的应用框架。 dist 目录下是Spring 的发布包,关于发布包下面会详细进行说明。 docs&nb</div>
                                </li>
                                <li><a href="/article/1101.htm"
                                       title="网站推广之seo概念" target="_blank">网站推广之seo概念</a>
                                    <span class="text-muted">antonyup_2006</span>
<a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/Web/1.htm">Web</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><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/Google/1.htm">Google</a>
                                    <div>   持续开发一年多的b2c网站终于在08年10月23日上线了。作为开发人员的我在修改bug的同时,准备了解下网站的推广分析策略。 
    所谓网站推广,目的在于让尽可能多的潜在用户了解并访问网站,通过网站获得有关产品和服务等信息,为最终形成购买决策提供支持。 
    网站推广策略有很多,seo,email,adv</div>
                                </li>
                                <li><a href="/article/1228.htm"
                                       title="单例模式,sql注入,序列" target="_blank">单例模式,sql注入,序列</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/%E5%8D%95%E4%BE%8B%E6%A8%A1%E5%BC%8F/1.htm">单例模式</a><a class="tag" taget="_blank" href="/search/%E5%BA%8F%E5%88%97/1.htm">序列</a><a class="tag" taget="_blank" href="/search/sql%E6%B3%A8%E5%85%A5/1.htm">sql注入</a><a class="tag" taget="_blank" href="/search/%E9%A2%84%E7%BC%96%E8%AF%91/1.htm">预编译</a>
                                    <div>  
序列在前面写过有关的博客,也有过总结,但是今天在做一个JDBC操作数据库的相关内容时 需要使用序列创建一个自增长的字段  居然不会了,所以将序列写在本篇的前面 
  
 1,序列是一个保存数据连续的增长的一种方式; 
序列的创建; 
 CREATE SEQUENCE seq_pro
  2  INCREMENT BY 1 -- 每次加几个
  3 </div>
                                </li>
                                <li><a href="/article/1355.htm"
                                       title="Mockito单元测试实例" target="_blank">Mockito单元测试实例</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95/1.htm">单元测试</a><a class="tag" taget="_blank" href="/search/mockito/1.htm">mockito</a>
                                    <div>Mockito单元测试实例: 
public class SettingServiceTest {
    
    private List<PersonDTO> personList = new ArrayList<PersonDTO>();
    
    @InjectMocks
    private SettingPojoService settin</div>
                                </li>
                                <li><a href="/article/1482.htm"
                                       title="精通Oracle10编程SQL(9)使用游标" target="_blank">精通Oracle10编程SQL(9)使用游标</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</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/plsql/1.htm">plsql</a>
                                    <div>/*
 *使用游标
 */
--显示游标
--在显式游标中使用FETCH...INTO语句
DECLARE
   CURSOR emp_cursor is 
      select ename,sal from emp where deptno=1;
   v_ename emp.ename%TYPE;
   v_sal emp.sal%TYPE;
begin
   ope</div>
                                </li>
                                <li><a href="/article/1609.htm"
                                       title="【Java语言】动态代理" target="_blank">【Java语言】动态代理</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/java%E8%AF%AD%E8%A8%80/1.htm">java语言</a>
                                    <div>  JDK接口动态代理 
JDK自带的动态代理通过动态的根据接口生成字节码(实现接口的一个具体类)的方式,为接口的实现类提供代理。被代理的对象和代理对象通过InvocationHandler建立关联 
  
package com.tom;

import com.tom.model.User;
import com.tom.service.IUserService;
</div>
                                </li>
                                <li><a href="/article/1736.htm"
                                       title="Java通信之URL通信基础" target="_blank">Java通信之URL通信基础</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/jdk/1.htm">jdk</a><a class="tag" taget="_blank" href="/search/webservice/1.htm">webservice</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C%E5%8D%8F%E8%AE%AE/1.htm">网络协议</a><a class="tag" taget="_blank" href="/search/ITeye/1.htm">ITeye</a>
                                    <div>java对网络通信以及提供了比较全面的jdk支持,java.net包能让程序员直接在程序中实现网络通信。 
在技术日新月异的现在,我们能通过很多方式实现数据通信,比如webservice、url通信、socket通信等等,今天简单介绍下URL通信。 
学习准备:建议首先学习java的IO基础知识 
  
URL是统一资源定位器的简写,URL可以访问Internet和www,可以通过url</div>
                                </li>
                                <li><a href="/article/1863.htm"
                                       title="博弈Java讲义 - Java线程同步 (1)" target="_blank">博弈Java讲义 - Java线程同步 (1)</a>
                                    <span class="text-muted">boyitech</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</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/%E5%90%8C%E6%AD%A5/1.htm">同步</a><a class="tag" taget="_blank" href="/search/%E9%94%81/1.htm">锁</a>
                                    <div>  
在并发编程中经常会碰到多个执行线程共享资源的问题。例如多个线程同时读写文件,共用数据库连接,全局的计数器等。如果不处理好多线程之间的同步问题很容易引起状态不一致或者其他的错误。 
   同步不仅可以阻止一个线程看到对象处于不一致的状态,它还可以保证进入同步方法或者块的每个线程,都看到由同一锁保护的之前所有的修改结果。处理同步的关键就是要正确的识别临界条件(cri</div>
                                </li>
                                <li><a href="/article/1990.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>

public class DeleteExtraSpace {

	/**
	 * 题目:给定字符串,删除开始和结尾处的空格,并将中间的多个连续的空格合并成一个。
	 * 方法1.用已有的String类的trim和replaceAll方法
	 * 方法2.全部用正则表达式,这个我不熟
	 * 方法3.“重新发明轮子”,从头遍历一次
	 */
	public static v</div>
                                </li>
                                <li><a href="/article/2117.htm"
                                       title="An error has occurred.See the log file错误解决!" target="_blank">An error has occurred.See the log file错误解决!</a>
                                    <span class="text-muted">Kai_Ge</span>
<a class="tag" taget="_blank" href="/search/MyEclipse/1.htm">MyEclipse</a>
                                    <div>今天早上打开MyEclipse时,自动关闭!弹出An error has occurred.See the log file错误提示! 
很郁闷昨天启动和关闭还好着!!!打开几次依然报此错误,确定不是眼花了! 
打开日志文件!找到当日错误文件内容: 
--------------------------------------------------------------------------</div>
                                </li>
                                <li><a href="/article/2244.htm"
                                       title="[矿业与工业]修建一个空间矿床开采站要多少钱?" target="_blank">[矿业与工业]修建一个空间矿床开采站要多少钱?</a>
                                    <span class="text-muted">comsci</span>

                                    <div> 
       地球上的钛金属矿藏已经接近枯竭........... 
 
       我们在冥王星的一颗卫星上面发现一些具有开采价值的矿床..... 
 
       那么,现在要编制一个预算,提交给财政部门..</div>
                                </li>
                                <li><a href="/article/2371.htm"
                                       title="解析Google Map Routes" target="_blank">解析Google Map Routes</a>
                                    <span class="text-muted">dai_lm</span>
<a class="tag" taget="_blank" href="/search/google+api/1.htm">google api</a>
                                    <div>为了获得从A点到B点的路劲,经常会使用Google提供的API,例如 
[url] 
http://maps.googleapis.com/maps/api/directions/json?origin=40.7144,-74.0060&destination=47.6063,-122.3204&sensor=false 
[/url] 
从返回的结果上,大致可以了解应该怎么走,但</div>
                                </li>
                                <li><a href="/article/2498.htm"
                                       title="SQL还有多少“理所应当”?" target="_blank">SQL还有多少“理所应当”?</a>
                                    <span class="text-muted">datamachine</span>
<a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a>
                                    <div>转贴存档,原帖地址:http://blog.chinaunix.net/uid-29242841-id-3968998.html、http://blog.chinaunix.net/uid-29242841-id-3971046.html! 
 
------------------------------------华丽的分割线-------------------------------- 
</div>
                                </li>
                                <li><a href="/article/2625.htm"
                                       title="Yii使用Ajax验证时,如何设置某些字段不需要验证" target="_blank">Yii使用Ajax验证时,如何设置某些字段不需要验证</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a><a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a>
                                    <div>经常像你注册页面,你可能非常希望只需要Ajax去验证用户名和Email,而不需要使用Ajax再去验证密码,默认如果你使用Yii 内置的ajax验证Form,例如: 
$form=$this->beginWidget('CActiveForm', array(        'id'=>'usuario-form',&</div>
                                </li>
                                <li><a href="/article/2752.htm"
                                       title="使用git同步网站代码" target="_blank">使用git同步网站代码</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/crontab/1.htm">crontab</a><a class="tag" taget="_blank" href="/search/git/1.htm">git</a>
                                    <div>转自:http://ued.ctrip.com/blog/?p=3646?tn=gongxinjun.com 
  
管理一网站,最开始使用的虚拟空间,采用提供商支持的ftp上传网站文件,后换用vps,vps可以自己搭建ftp的,但是懒得搞,直接使用scp传输文件到服务器,现在需要更新文件到服务器,使用scp真的很烦。发现本人就职的公司,采用的git+rsync的方式来管理、同步代码,遂</div>
                                </li>
                                <li><a href="/article/2879.htm"
                                       title="sql基本操作" target="_blank">sql基本操作</a>
                                    <span class="text-muted">蕃薯耀</span>
<a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/sql%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C/1.htm">sql基本操作</a><a class="tag" taget="_blank" href="/search/sql%E5%B8%B8%E7%94%A8%E6%93%8D%E4%BD%9C/1.htm">sql常用操作</a>
                                    <div>sql基本操作 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
蕃薯耀 2015年6月1日 17:30:33 星期一 
  
  
&</div>
                                </li>
                                <li><a href="/article/3006.htm"
                                       title="Spring4+Hibernate4+Atomikos3.3多数据源事务管理" target="_blank">Spring4+Hibernate4+Atomikos3.3多数据源事务管理</a>
                                    <span class="text-muted">hanqunfeng</span>
<a class="tag" taget="_blank" href="/search/Hibernate4/1.htm">Hibernate4</a>
                                    <div>Spring3+后不再对JTOM提供支持,所以可以改用Atomikos管理多数据源事务。Spring2.5+Hibernate3+JTOM参考:http://hanqunfeng.iteye.com/blog/1554251Atomikos官网网站:http://www.atomikos.com/   一.pom.xml 
<dependency>
			<</div>
                                </li>
                                <li><a href="/article/3133.htm"
                                       title="jquery中两个值得注意的方法one()和trigger()方法" target="_blank">jquery中两个值得注意的方法one()和trigger()方法</a>
                                    <span class="text-muted">jackyrong</span>
<a class="tag" taget="_blank" href="/search/trigger/1.htm">trigger</a>
                                    <div>  在jquery中,有两个值得注意但容易忽视的方法,分别是one()方法和trigger()方法,这是从国内作者<<jquery权威指南》一书中看到不错的介绍 
 
 
1) one方法 
    one方法的功能是让所选定的元素绑定一个仅触发一次的处理函数,格式为 
   one(type,${data},fn) 
&nb</div>
                                </li>
                                <li><a href="/article/3260.htm"
                                       title="拿工资不仅仅是让你写代码的" target="_blank">拿工资不仅仅是让你写代码的</a>
                                    <span class="text-muted">lampcy</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%92%A8%E8%AF%A2/1.htm">咨询</a>
                                    <div>这是我对团队每个新进员工说的第一件事情。这句话的意思是,我并不关心你是如何快速完成任务的,哪怕代码很差,只要它像救生艇通气门一样管用就行。这句话也是我最喜欢的座右铭之一。 
这个说法其实很合理:我们的工作是思考客户提出的问题,然后制定解决方案。思考第一,代码第二,公司请我们的最终目的不是写代码,而是想出解决方案。 
话粗理不粗。 
付你薪水不是让你来思考的,也不是让你来写代码的,你的目的是交付产品</div>
                                </li>
                                <li><a href="/article/3387.htm"
                                       title="架构师之对象操作----------对象的效率复制和判断是否全为空" target="_blank">架构师之对象操作----------对象的效率复制和判断是否全为空</a>
                                    <span class="text-muted">nannan408</span>
<a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84%E5%B8%88/1.htm">架构师</a>
                                    <div>1.前言。 
  如题。 
2.代码。 
 (1)对象的复制,比spring的beanCopier在大并发下效率要高,利用net.sf.cglib.beans.BeanCopier 
 

Src src=new Src();
BeanCopier beanCopier = BeanCopier.create(Src.class, Des.class, false);
      </div>
                                </li>
                                <li><a href="/article/3514.htm"
                                       title="ajax 被缓存的解决方案" target="_blank">ajax 被缓存的解决方案</a>
                                    <span class="text-muted">Rainbow702</span>
<a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a><a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a><a class="tag" taget="_blank" href="/search/cache/1.htm">cache</a><a class="tag" taget="_blank" href="/search/%E7%BC%93%E5%AD%98/1.htm">缓存</a>
                                    <div>使用jquery的ajax来发送请求进行局部刷新画面,各位可能都做过。 
今天碰到一个奇怪的现象,就是,同一个ajax请求,在chrome中,不论发送多少次,都可以发送至服务器端,而不会被缓存。但是,换成在IE下的时候,发现,同一个ajax请求,会发生被缓存的情况,只有第一次才会被发送至服务器端,之后的不会再被发送。郁闷。 
解决方法如下: 
① 直接使用 JQuery提供的 “cache”参数,</div>
                                </li>
                                <li><a href="/article/3641.htm"
                                       title="修改date.toLocaleString()的警告" target="_blank">修改date.toLocaleString()的警告</a>
                                    <span class="text-muted">tntxia</span>
<a class="tag" taget="_blank" href="/search/String/1.htm">String</a>
                                    <div>  
我们在写程序的时候,经常要查看时间,所以我们经常会用到date.toLocaleString(),但是date.toLocaleString()是一个过时 的API,代替的方法如下: 
  
package com.tntxia.htmlmaker.util;

import java.text.SimpleDateFormat;
import java.util.</div>
                                </li>
                                <li><a href="/article/3768.htm"
                                       title="项目完成后的小总结" target="_blank">项目完成后的小总结</a>
                                    <span class="text-muted">xiaomiya</span>
<a class="tag" taget="_blank" href="/search/js/1.htm">js</a><a class="tag" taget="_blank" href="/search/%E6%80%BB%E7%BB%93/1.htm">总结</a><a class="tag" taget="_blank" href="/search/%E9%A1%B9%E7%9B%AE/1.htm">项目</a>
                                    <div>项目完成了,突然想做个总结但是有点无从下手了。 
做之前对于客户端给的接口很模式。然而定义好了格式要求就如此的愉快了。 
先说说项目主要实现的功能吧 
1,按键精灵 
2,获取行情数据 
3,各种input输入条件判断 
4,发送数据(有json格式和string格式) 
5,获取预警条件列表和预警结果列表, 
6,排序, 
7,预警结果分页获取 
8,导出文件(excel,text等) 
9,修</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>