當前位置:首頁 » 密碼管理 » 碼語訪問者

碼語訪問者

發布時間: 2025-06-14 22:33:57

A. ASP怎麼查看在線訪問者的IP地址

分類: 電腦/網路 >> 程序設計 >> 其他編程語言
問題描述:

訪問者訪問一個蠢含IP。ASP文件,能獲得他的IP,而我們能同時從另外一個頁面LOADIP。ASP文件看到他的IP,這段代碼要怎麼寫呀,我寫了出來能獲得IP,但是就是我們不能同時從另外一個顫笑頁面看到訪問者的IP,哪位大俠能教教我!

IP。ASP 代碼

<% Application.Lock()

Application("Userip") = Request.ServerVariables("HTTP_X_FORWARDED_FOR")

If Application("Userip") = "" Then Application("Userip") = Request.ServerVariables("REMOTE_ADDR")

Session("Userip")=Application("Userip")

Application.UnLock()

Response.Redirect("loadip")

%>

LOADIP。ASP代碼

<%

if Session("userip") <> "" then

online=Response.IsClientConnected

online=true

userip=Session("userip")

Response.Write"<table border=1 align=center>"

Response.Write"<tr><td width=100>"

Response.Write("來訪者IP:")

Response.Write"<帶洞笑/td><td width=200 align=center><a href=#>"

Response.Write(userip)

Response.Write("</a></td><td>")

Response.Write(date())

Response.Write("</td></tr></table>")

else

Response.Write("<div align=center>")

Response.Write("沒有來訪者")

Response.Write("</div>")

end if

%>

哪裡錯了,哪位大哥大姐幫幫我!

解析:

沒有錯誤,請問你是那裡報錯?本地和遠程調試都未出現錯誤啊?

=============

你能解釋一下「同時」是個什麼意思么?

你的意思是你打開一個頁面,如果有訪問者登陸後,你打開的那個頁面就立即顯示出登陸者的IP?

B. 怎麼做電子地圖,類似百度的那種最好有實例+代碼的鏈接

首先,你加別人的鏈接,正常情況別人是很喜歡的,因為這本身就是一種免費的推廣方法,所以你不必擔心。

然後介紹一下比較常見的網路推廣方法:

1、廣告網站軟文推廣法:現在廣告類型的網站非常流行,去廣告網站主要是去幾個有人氣的廣告網站有針對性的加幾百上千個用戶。然後選擇合適的軟文並合理的附帶上網站鏈接,發表到自己的日誌里。再讓自己的一些好友分享,這樣就讓很多人都關注到你的文章,關注到了你的網站。

2、廣告網站API合作推廣法:如果你自己或下面的員工有一定的技術實力,可以開發一些和自己網站產品相關的小插件,插到校內上,插到海內上。只要有開放API的廣告網站都去插下。現在很多網站都有在這么搞,去校內看看哪些開放的應用程序,很多都是一些小網站提供的,而且上面都或多或少有掛自己網站的廣告。而且這個市場越早做越好,很多廣告網站都是才開始嘗試開發API,審核的要求還不是特別嚴格。等以後做的網站多了,再想插到廣告網站里去就難了。

3、收藏夾推廣法:把一些精彩內容的頁面添加到QQ書簽,網路搜藏,雅虎收藏等,讓喜歡這些內容的網民去閱讀,收藏。

4、版主聯盟推廣法:這個方法適合論壇社區網站的推廣。也就是先去加入一些版主聯盟,像大旗版主聯盟就很不錯,每天把論壇的一些精彩內容提交上去,等待被相關頻道錄用,一經錄用,那就會給你帶去不少的IP。我最多的一次是兩天就給網站帶去了3W多的IP點擊量。

5、回復置頂推廣法:其實這個方法我也不知道該叫什麼名字,它的局限性很小,據我所知,只使用於貓撲大雜燴,就暫且叫回復置頂吧。這個方法是我偶然發現的,是在看網站IP來路的時候發現的,發現那天有200多的IP來自貓撲的一個帖子,但是我知道我們沒有去那裡發過推廣帖,所以覺得有點奇怪,就去那個帖子看看,發現是有人放了我們網站的一個鏈接,並且回復置頂了,所以才給我們帶來了200多的IP。後來我就去和一些常在貓撲混的網友聊,才知道可以用一種叫「月明符」的道具來置頂回復。版主還不能刪,只要管理員才有權刪,所以一般情況下都能置頂一段時間。

6、有獎注冊推廣法:以增加會員注冊量來做的一種推廣方法。一般大家都是以有獎注冊,或者一些激勵注冊的方法來推廣,現在的人都是現實很精的,無利可圖的事,他們是不會做的。

7、免費游戲推廣法:免費游戲就是在你的網站掛一中免費的游戲,但是是要和網站的主題相同,還要是有獎游戲。他們網站就掛了一款完全免費的「夢幻體彩」足球比分競猜游戲,就和他們的網站內容完全是一致。推廣的效果也非常好。

9、搜索引擎推廣法:如今的新手站長,最熱衷的就是這個短平快的方法。搜索網站的功能就是整合網路資源,給網民找到最適合的網站內容,給其他網站帶去流量是其意想不到的副作用。很多站長類網站的網站推廣欄目,似乎都變成seo專區了。seo的最好方法,就是網頁代碼規范、訪問速度快、內容獨特少重復,對網民有用,而且具有唯一性。

10、軟文推廣法:寫文章,或者引用好文章,裡面巧妙地加入自己的網址。

11、博客推廣法:軟文要有發表的地方。一個是發到論壇,文章站,一個是發到博客里。發到博客里有個好處,不會被亂刪。

12、媒體推廣法:讓傳統的媒體,報紙、電視、廣播等等報道。

13、手機推廣法:wap網站、群發簡訊、彩鈴提示等。手機的功能越來越強,小巧容易攜帶,以後手機的上網人數肯定超過電腦人數。

14、網摘推廣法:提高優質網頁、圖片、帖子到網摘站和聚合類網站。如果被推薦,也能有不少流量。

15、論壇推廣法:注冊幾十個幾百個論壇,每個論壇注冊幾十個帳號,把簽名設為自己的網站。發表熱門內容,自己頂自己帖子。注意換馬甲,發布有爭議性的標題內容。好的標題是論壇推廣成敗的100%。這里說的論壇是指泛論壇,包含留言本、論壇、貼吧等等一切網民可能聚集的地方。

16、第三極推廣法:在宣傳網站的同時,綴上自己的財富第三極號碼。在每個網頁的內容後面,加上自己的財富第三極號碼,擴大知名度,還有帶來額外的財富收入。

17、QQ和MSN昵稱推廣法:把昵稱修改為網址,例如免費大獎游戲。

18、郵件列表推廣法:就是定期不定期的給網民發送電子雜志。

19、非預期郵件推廣法:用專業的郵件群發工具,上網批量搜集電子信箱地址,然後群發。如今的很多網站,都要用電子信箱作為用戶名,因此,搜集電子信箱地址,比以前方便多了,而且這些電子信箱都是活信箱,網民經常用的信箱,而非失效的信箱,效果不錯。郵件標題要「規范」,別讓網民誤以為是垃圾郵件。

20、口碑推廣法:好好做內容,讓網民自己主動傳播你的網站。

21、限制訪問內容推廣法:給網站內容分出訪問等級,設置訪問條件。給網民一個推廣鏈接,網民只有推薦夠一定訪客或者注冊會員後,才能訪問該內容。非主流色彩愛情網站多用此方法,效果奇佳。

22、網站排名投票推廣法:加入其他的網站推出的網站排名,或者給其他站進行網站排名,都能有效地提高網站的展示率。

23、聚合鏈接推廣法:將優秀內容聚合在一起,吸引網民。

24、BT電爐哇嘎資源推廣法:可以在音視頻文件里放入自己的網站,特別是在一些需要證書才能收看的視頻文件里,甚至可以彈出網站。一些站長使用這種方法,藉助最新的電影上映時機,發布一個視頻文件,就能搞到幾十萬的ip,效果絕對一流。

25、圖片打水印推廣法:防止別的網站引用圖片,不僅不友好沒效果,而且阻擋了搜索引擎的收錄。從某種角度來說,其他網站也是自己網站的特殊網民。如果給網站打上水印,放上網站地址,積極地讓別的站引用圖片,提高網址曝光率,那麼宣傳效果是很好。水印法,包括圖片水印法、視頻水印法、網頁水印法

26、視頻源Flash推廣法:如今的視頻網站,都提供外部的訪問介面。在別的網站、日誌引用這些視頻的同時,直接宣傳了網站,擴大了網站的影響力。

27、提交到網址站推廣法:網站導航站,網站目錄站。

28、電子郵件自動回復推廣法:就是在郵箱設置自動回復,把網站的地址和網站介紹設置為自動回復內容。當你接收到任何一封郵件的時候,郵箱就會自動回復過去。

29、無償單向鏈接推廣法:無償給其他網站做鏈接,既能豐富自己網站的信息,而且在網民搜索別的站的時候,又可能出現自己的網頁結果。

30、網站間互換鏈接推廣法:這是幾年前最流行的網站宣傳方法,如今存在的交換鏈網站很稀少了。

31、批量提交交換鏈接推廣法:用自動提交工具,提交網站到其他網站的友情鏈接欄目。當站長們在審核是否通過你站的時候,就為你貢獻了一個ip。人類社會的發展,就是得益於工具自動化程度的提高。要充分利用互聯網傳遞信息的自動化、數字化、批量化優勢,善於使用批量宣傳工具,節省人力重復性勞動。

33、流量統計推廣法:在網站的所有頁面上放置一個iframe頁面引用代碼,在所引用的頁面上放上其他網站的統計器,用程序代碼控制變換統計id,當其他站長查看統計,瀏覽訪問來路來源的時候,你的網站就出現了。一般的站長都會點擊查看的,這種宣傳方法效果很好,屬於密不外傳的絕招,很多人知道網路和google的威力就是從網站訪問來路知道的。

34、互換頻道推廣法:和其他網站互相交換頻道。就是把對方網站當作自己的一個頻道在網站上推廣。這樣互相捧場,互相幫襯,威力巨大。

35、免費資源推廣法:給其他網站提供免費的服務,比如免費統計,免費評測,免費天氣查詢代碼,免費博客,免費ip查詢代碼,免費股票查詢代碼,免費搜索代碼,免費在線客服系統,免費留言本,免費域名,免費空間,免費pr評價,免費電子書,免費查詢,免費掛qq,免費認證,免費素材等等。要讓自己提供的服務,成為其他網站的標准配置。時間久了,流量自然有了。

36、內容聯盟推廣法:這個方法適合有伺服器資源的站長。提供一個平台,可以綁定其他網站的域名,把網站的頭尾廣告位置送給其他站長,吸引其他網站加入。看似是為其他網站做嫁衣裳,實際上是在宣傳自己的網站,擴大了網站知名度和影響力。網路上流量最大的地方不是搜索網站,而是其他網站。搜索網站流量大,但是平均到每個站,也就幾個幾十個,對自己實際意義不大。拉到一個站長,勝過拉到幾千個網民。這種方法長期而持久。

37、威逼強迫推廣法:比如網站**miibeian、各地公共安全局,都可以強迫網站放鏈接。一般人用不了。不過可以變相使用,比如黑客加鏈接法。

38、做大做強推廣法:比如門戶站。讓小網站以加自己網站的鏈接為榮。盡管很少有站從門戶網站得到一星半點的好處,但是對強者天然的崇拜心理,仍然讓無數站長不由自主地獻身鏈接,並以此為光榮。至於人家是否留意和領情,則是另外一回事了。

39、客戶端軟體插件推廣法:有技術含量的站長可以採用此法。開發流行的網民常用的客戶端軟體,比如聊天工具類軟體qq,網路游戲類工具,下載工具類網站迅雷等等,都可以彈出窗口,可以直接彈網站首頁,也可以彈一些活動頁。效果奇好。

40、收費資源免費推廣法:比如長久提供軟體注冊碼,注冊號,序列號,免序列號版軟體,提高網站粘性。比如操作系統的ghost版本,養活了好幾個日訪問量幾十萬ip的網站。

41、群組推廣法:如今的web2.0等社交網站,都有這個功能。在群組里廣發消息,吸引注意力。

42、發布任務推廣法:在威客網站發布任務,不僅能夠吸引接受任務的人,而且能夠吸引一大批旁觀者。要充分利用這種一對多的傳播優勢。

43、印發宣傳單線下宣傳推廣法:既可以自己印發,也可以和其他傳統企業合作,使用它們的現有渠道。比如和超市合作,在購物小票上印製自己網站的網址。可以拿網站上的資源和超市交換。

44、流量交換聯盟推廣法:加入流量交換聯盟,運用專業的流量交換系統平台,直接和其他網站交換流量,互惠互利,共同發展。

45、鼓勵訪客宣傳推廣法:至於如何打動網民口碑宣傳,則要根據網站內容,靈活安排了。一般新奇有趣互動性的內容效果教好。比如測試類啊、評比類啊、節日祝福類啊、搞怪類啊等等內容的網頁容易被強烈傳播。可以考慮自己的網站如何發掘這方面的素材。

46、名片推廣法:在名片上,手冊上,一切自己能掌控的紙上,印上網址、寫上網址。

47、電子郵件簽名推廣法:在電子郵箱的設置里,設置一下。加上網站網址和網站介紹。以後寫信就會自動加上,自己就省事不少。

48、網上競賽推廣法:比如美女評比、網站評比等等各種資格賽的評比。

49、付費推廣法:如果一些方法免費行不通。只要性價比合適,出去一個,可以收回兩個,不妨付費推廣。捨得捨得,舍不去的還會跑回來的。

50、分工合作推廣法:社會效率的提高一個是工具自動化水平的提高,另一個是分工的價值。自己的能力有限,善於整合外部力量,僱用別人推廣,把專業的事情交給專業的人來做,可以達到事半功倍的效果。

51、按效果付費推廣法:如果你有可以出售的資源,不妨在網路上以按效果付費的方法推廣,可以免費得到大量的流量。

52、設為主頁和加入收藏推廣法:如果你站的內容足夠好,訪問者也許願意長期訪問你的網站。在這一點上,要多費點心思提醒網民哦。

53、廁所繪畫推廣法:這種方法慎用,已經有得不償失的先例。不推薦使用。

54、搞活動推廣法:各種線下活動,各種聚會等。

55、廣場效應推廣法:在身上衣服上畫上網址,去人多的地方引人矚目。最好是在記者出沒的地方,容易產生新聞效應。因為記者整天沒事干,最喜歡這類八卦事情。

56、賀卡推廣法:當別人送賀卡的時候,就順便推廣了你的網站。

57、事件連鎖反應推廣法:炒作。具體就是挑戰人們的心理承受底線,鍛煉人們的心理承受能力。

59、網路網站推廣法:去網上的網路全書添加內容。

60、RSS推廣法:有很多rss聚合類網站,可以製作自己網站的rss,提交到這些網站。

61、網吧推廣法:如果有一些網吧資源,可以讓網吧的老闆幫忙把網吧的機子主頁設為自己的網站。

62、站長交流推廣法:多和其他站長交流,探討推廣方法。說不定什麼時候就有意外驚喜。在和別人的經驗交流中也往往會有靈感的火花跳躍。不要吝嗇你自己的經驗,在告訴別人的時候,也是對自己經驗的一次系統化、條理化、理性化提純。

63、網頁病毒推廣法:利用其他網站的dns漏洞、伺服器漏洞,程序漏洞等,直接掛上自己的網站,迅速提高網站普及率。這是最強悍的另類推廣方法。屬於被清理的方法之列。

64、過路費推廣法:如果你有電信等方面的資源,掌握了網頁的傳輸通道,可以將每個網頁都進行完善,加進你想加入的內容。

65、域名推廣法:人是會犯錯的動物。研究高流量網站的域名,分析其錯誤拼寫的各種可能,注冊相應域名,也可以從中得到不少流量。如果應用在網站內容建設上,則可以以熱門內容的錯誤拼寫文字來建設和優化內容。

66、分類信息推廣法:去各類分類信息站發布網站信息。

67、免費域名推廣法:給其他站提供二極域名,或者去申請其他站的免費域名指到自己的站,都可以。

68、聊天室推廣法:其實和QQ群推廣差不多,就是在在各種聊天室去和大家聊天,搞好相互關系,適當的時候發一些網站的鏈接推廣。注意給出一個必須發鏈接的理由。

69、演講推廣法:舉辦各種講座,演講,不知不覺地給網站吸引來新訪客。

70、特殊資源推廣法:比如高考查詢,英語四六級查詢等資源,是利益相關者不得不訪問的。

71、模仿推廣法:處處留心皆學問。學習其他網站的推廣方法,看看其他網站的鏈接都出現在了什麼地方,想辦法依葫蘆畫瓢。模仿是創新的基礎,創新是模仿的升華。創新=模仿+經驗積累+批量化+自動化。

72、被動推廣法:提高網站質量,做一個對網民有獨特幫助的網站,讓網民喜歡你的網站,讓網民自發地傳播你的網站,是效果最好的推廣方法。

73、化整為零推廣法:在各大商務網站上,建立網站的副版本。借用其他網站的平台,推廣自己的東西。

74、預告推廣法:也叫系列法。不要將寶貴的內容一次性全部提供,每天提供一點點,連續幾個星期、幾個月,讓網民不斷重復地訪問網站。類似電視台播放電視劇和報紙的小說連載等等模式。比如赤壁,攔腰劈成兩半,就能賣兩倍價錢,賺雙倍票房。搞網站也要學會這種留一手的做法。

75、創建品牌推廣法:其實品牌建設並不難,非常簡單。網上信息浩如煙海,陳舊信息充斥在各個網站,價值極其微小。站長們可以持續搜集某個主題信息,根據最新條件和情況,不斷對原先的舊內容維護、補充和更新,按照日期順序有規律地發布到其他網站,提高網站影響力。當人們需要該方面信息的時候,唯一的去處就是此類信息發源地了,建立品牌就是這么容易。有了品牌知名度,網站自然而然有了流量,順便也能帶活整個網站。例如中關村在線的電腦配件報價,網路的搜索排行榜,雪緣園足球即時比分。

76、多語言版本推廣法:利用一些網站提供的免費翻譯功能,建設不同語言版本的網站,比如繁體版,英文版等等,擴大網站的適用人群。

77、免費建站程序推廣法:開發一套網站程序,免費提供給別人使用。網站程序里少不了帶上開發者的版權鏈接。目前流行非流行的博客程序、論壇程序等開發者網站,流量大的嚇人。有點能力的站長朋友何不學習一下呢。即使開發不了完整版,搞個二次開發,推出美化版、各類主題版,發布到各類源碼站。

78、網站模板推廣法:這個容易理解,用網頁建築師html、網頁美容師css、網頁魔術師javascript給流行的網站程序設計新界面,發布到對應網站,在發布的時候,可以留下網站的模板地址的,例如提供上述模板等等,這樣可以獲得很高的曝光率。模板其實很容易製作的,改下顏色,改下字體,變變頁面元素位置即可。只要用心,沒有做不到的。關鍵是學會思路,凡事心中有譜。

79、講故事出書推廣法:書籍可以被長久反復閱讀,對人們的影響是非常大的,網站也能給人留下不可磨滅的印象。

80、創造新概念推廣法:讓新概念成為網站的代名詞。當人們使用這個概念的時候,自然就宣傳了你的網站。給人們先入為主的信息,融入人們的生活之中,這樣的宣傳效果,具有不可動搖的地位。概念的名稱可以固定,概念的內容卻可以常變常新,滿足人們持久而不斷變化的需要。

81、改名推廣法:將城市名稱、公司名稱、道路、人名、昵稱、建築物名稱或者社區名稱等等實體的名字,修改設置為網站地址。這樣做的話,網址的曝光率和使用頻率會非常高,網站也會非常自然地出現在各種名單中,比如地圖上,新聞報道里,人們的日常交往中。總之,傳播效率和傳播有效性都會非常高。

82、月歷牆紙推廣法:製作各種精美獨特風格多樣的月歷圖片,提供給人們做電腦的桌面牆紙壁紙使用。只要網民一打開電腦,你的網址就躍然pc上。一年300多天,天天都在提醒網民,你的網站對其有用。

83、徵婚推廣法:在各類報刊雜志網路上以整版的方式徵婚,聯系方式就僅僅留下網址。不僅可以吸引應征者,也可以吸引無數喜歡獵奇的閑極無聊的大量人群。具體做法可以參考以往的「徵婚門」事件。

84、公交車站推廣法:在都市的熱門地段設置一個車站,乘車的人必然能夠留意到,繞都繞不過去。此方法最適合公交公司。

85、地圖推廣法:讓網站總部出現在地圖上。地圖傳播面廣,受眾大,使用頻率高。此法適合財大氣粗有特殊關系者。研究研究你所在地方的地圖,看看有什麼公司的名字出現在上面,想想人家是怎麼出現在上面的,模仿一下吧。如果做不到,那麼求人不如求己,讓自己的網站成為一張地圖,一個平台。

86、吹捧推廣法:要讓網站成為網民心中的唯一,只有抬高身價,自吹自擂,讓網民相信,你是最好的,你是最棒的,你就是名牌。讓網民訪問貴站,成為一種身份的象徵,成為顯耀自身價值的標志,極大地滿足人們的虛榮心。這個可以通過設置訪問限制來達到。人們天生對打破限制有一種狂熱的喜好。本來平淡無奇的東西,一旦設置了限制,身價就高了。人們始終不明白一個道理:世界上最有價值的東西是免費的。

87、出入口推廣法:在茫茫人海中,每個人都在各個入口和出口裡進進出出,徘徊奔波,尋找活著的樂趣和存在的意義。它們找到了嗎你也許可以為之做點什麼。

88、招聘推廣法:如今科技和社會發展,機器工具代替人們勞作的趨勢越來越明顯,沒事可干就成了一種普遍的社會現象,工作崗位成了一種稀缺資源,「為人民服務」的口號成為爭權奪利的代名詞,為人民服務不再光榮,主動放棄自己不能勝任的崗位才是光榮的,可是,有誰樂意放棄呢可以預見的是,在不久的將來,自動化工具完全代替人類的重復性勞動,所有人都將沒事可干,人人要靠社會保障生存,可是,如今普遍的社會生存保障在哪裡呢既然獲取為人民服務的資格如此艱苦,那麼以招聘的名義,去招聘會上宣傳網站,效果想來一定差不到什麼地方。

89、立碑推廣法:石頭是瘋狂的,瘋狂的石頭,是可以讓無數東西千古流芳的。石頭的壽命遠遠超過人的壽命和數字化存儲載體的生命周期。古往今來,能夠流傳下來的,都是以石頭為載體的。人腦太不可靠,只有石頭值得信賴。在繁華地帶或者名山大川立個碑,其宣傳的效果是非常久遠的。甚至可以被史後時期的人看到。但是,到那個時候,你的網站還能訪問嗎

90、故事推廣法:人是感性的動物。人們不喜歡理性的說教,但是這不代表人們不喜歡經過故事包裝或偽裝的說教。盡管明眼人一眼就知道怎麼回事,但是在100萬個人中,你能找到一個明眼人嗎這是比大海撈針的難度系數還高上千倍萬倍的極限任務。買櫝還珠的故事在人們的消費行為中時時刻刻上演,所以,請不要忽視包裝的效果。如果有可能,就把你的推廣行為用故事潤色一下,給人們口碑相傳貴站一個足夠分量的理由。只要一個理由,一切都可以風生水起,面朝大海,春暖花開。讓網站的名稱,成為整個故事的線索,成為故事走向完美結局的核心要素,成為不可磨滅的一部分。人們就算把整個故事情節都忘記了,也會依稀記得你的網站在其中的獨特作用。動人的故事,動人的網站,動人的宣傳推廣效果,動人的提醒暗示功能。

91、信仰推廣法:刺激人們有幾個手段、途徑和層次,「立,禮,理、利、力」,越往後越低級,越接近獸|性。「立」就是樹立信仰,創造理想和心願,從根本上變化人的思維模式和行為模式。「禮」就是讓事情充滿趣味性,人是喜歡測驗自己思維能力的傢伙,把簡單的事情人為地搞復雜是人經常玩的智力游戲,它們寧願柳暗花明地瞎折騰也不喜歡一路順風。「理」就是講事實擺道理,用美好的「活著、活好和活得長久」的對錯價值觀和消除破壞性增強建設性的邏輯達成共識。「利」就是用彼方面的利益來彌補此方面利益的缺失。這是一種虧處有補的讓步和交換行為模式。「力」就是以強制力為後盾的獸|性行為方式。把「力」關到籠子里,才是人性的做法。人性是以創造和分享為手段,以人人自由如意為目標的公益事物。而獸|性是以爭搶和獨占為手段,以無窮的慾望滿足為企圖的破壞性事物。值得注意的是,人是獸|性和人性並存的事物。判斷一個人成熟程度的標志,就是以其行為上的人性程度來衡量的。任何一個人,對任何刺激,都同時存在獸|性和人性兩種情緒和想法,沒有人可以例外,這是人為無法控制的。人可以控制的是自己的最終選擇。「聽話聽內容,看人看行動」,思想什麼都不是,重要的是看這個人(群體)在行動上的反應情況。行為的人性化程度,才體現了一個人(群體)的素質和價值。

92、贊助推廣法:對於有價值的公益事情,要積極地參與,這種在客觀上酷似AA制的打包推廣手段,可以節省不少開支。與其把廣告費交給私有群體,不如拿來改善人類的生存處境,既達到了原先的宣傳效果,又在客觀上做了好事,一舉兩得一石二鳥一箭雙雕一語雙關,既有利益又有意義,何樂而不為

93、公共元素推廣法:研究各類網站,觀察和思考一下這些網站有什麼公共的雷同的東西。開發工具和系統,給這些網站提供統一的服務,免除這些網站的重復性的勞動。比如統計服務、留言服務、客服系統、日歷系統、聚合服務、搜索服務、友情鏈接服務、圖片服務、帳戶服務、支付系統其實,沒有什麼是不可以分拆的,需要解決的問題是信任。

94、線下實物推廣法:贈送免費的紙質日歷給人們。舉一反三融會貫通敲山震虎打草驚蛇地推而廣之,贈送免費手機、免費午餐、免費住宿、免費資格、免費門票、免費春聯、免費殺毒軟體、免費代碼、免費服裝、免費書籍、免費玩具、免費電話等等等等。自己想去吧。一切收費的都可以免費提供,只要間接收獲的投入產出比性價比合算劃算。提醒一下,你要讓人們看到你自己的利益所在,否則人們會因害怕和難以置信而不敢接受。這是免費愛心東西在金錢時代遭遇的一個信任危機,也是金錢的負面效應的作用結果。

95、免費算命推廣法:命運是固定的,算不算都一個樣,正所謂「命運天註定,半點不由人」。「我是誰」這個問題的標准答案是,「我不是我,我是規律的傀儡」。既然人們有這個需要,給算一下也無妨。給人免費算命,建議人們把名字改為你的網站地址,如果成功,你就多了一個忠實的終身義務宣傳員。這樣的人走到哪裡,你的網站就亮到哪裡。實在沒人改,就改你自己的名字吧。

96、與朋友分享獨門秘籍推廣法:為了防止好方法失傳,強烈建議您公開出來。事物只使用才有價值。價值在使用的過程中才能激發出來。

97、賣站推廣法:就說我現在的網站有一萬個流量,現三百塊低價出售,貼出網址,這樣大家都過來看。

98、人工扛牌推廣法:穿個有公司獨特印記的T恤,找個美女,性感的

C. 瀏覽器請求語言(zh-cn、zh-tw等),與國家代碼對照表

瀏覽器請求語言欄位與國家代碼對照表揭示了訪問者語言設置與所屬國家之間的關系。關鍵欄位為req.headers["accept-language"],此欄位包含訪問者瀏覽器首選語言信息。

例如,'zh-cn'代表中文簡體,常用於中國大陸;而'tw'則與台灣地區關聯,可能與繁體中文相關。這一對照表是理解訪問者語言背景與國家屬性的重要工具。

通過對req.headers["accept-language"]的分析,開發者能夠精準地判斷訪客的首選語言,進而提供相應的本地化內容。這不僅優化了用戶體驗,更體現了個性化服務的價值。

理解這一欄位與國家代碼的對應關系,有助於網站和應用實現更精細的國際化策略。例如,網站可以自動切換到訪客的本地語言版本,提供更符合當地文化的用戶體驗。

此外,這一功能對於內容創作和翻譯服務尤其重要。基於訪問者來源的分析,內容提供者可以生成多語言版本,滿足不同國家訪客的需求。同時,翻譯服務也能更加精準地捕捉語言風格和文化背景,提升翻譯質量。

綜上所述,瀏覽器請求語言欄位與國家代碼對照表是實現跨文化溝通和本地化服務的關鍵工具。它不僅幫助開發者和內容創作者理解訪客背景,還能通過提供個性化體驗,提升用戶滿意度和忠誠度。

D. META是什麼意思

META是指元素可提供相關頁面的元信息,比如針對搜索引擎和更新頻度的描述和關鍵詞。

meta共有兩個屬性,它們分別是http-equiv屬性和name屬性:

1、http-equiv屬性:

HTTP協議是基於TCP的應用層協議,它不關心數據傳輸的細節,主要是用來規定客戶端和服務端的數據傳輸格式,最初是用來向客戶端傳輸HTML頁面的內容。

HTTP首部欄位是構成HTTP報文最重要的元素之一。在客戶端與服務端之前進行信息傳遞的時候請求和響應都會使用首部欄位,會傳遞一些重要的元信息。首部欄位是以鍵值對的形式存在的。包含報文的主體大小、語言、認證信息等。

2、name屬性:

name 屬性規定 input 元素的名稱。用於對提交到伺服器後的表單數據進行標識,或者在客戶端通過 JavaScript 引用表單數據。

但是,只有設置了 name 屬性的表單元素才能在提交表單時傳遞它們的值。主流的瀏覽器幾乎都支持 name 屬性。


(4)碼語訪問者擴展閱讀:

META屬性主要用於描述網頁,對應於content(網頁內容)

1、<meta name="Generator" contect="">用以說明生成工具(如Microsoft FrontPage 4.0)等;

2、<meta name="KEYWords" contect="">向搜索引擎說明你的網頁的關鍵詞;

3、<meta name="DEscription" contect="">告訴搜索引擎你的站點的主要內容;

4、<meta name="Author" contect="你的姓名">告訴搜索引擎你的站點的製作的作者;

5、<meta name="Robots" contect= "all|none|index|noindex|follow|nofollow">

其中的屬性說明如下:

1、設定為all:文件將被檢索,且頁面上的鏈接可以被查詢;

2、設定為none:文件將不被檢索,且頁面上的鏈接不可以被查詢;

3、設定為index:文件將被檢索;

4、設定為follow:頁面上的鏈接可以被查詢;

5、設定為noindex:文件將不被檢索,但頁面上的鏈接可以被查詢;

6、設定為nofollow:文件將不被檢索,頁面上的鏈接可以被查詢。

參考資料來源:網路——META標簽

E. 在組合模式中實現訪問者(Visitor)模式

本文從一個給定的實現了組合(Composite)模式的例子開始 說明怎麼在這個數據結構上實現業務邏輯代碼 依次介紹了非面向對象的方式 在組合結構中加入方法 使用訪問者(Visitor)模式以及用改進後的訪問者(Visitor)模式來實現相同的業務邏輯代碼 並且對於每種實現分別給出了優缺點

讀者定位於具有Java程序開發和設計模式經驗的開發人員

讀者通過本文可以學到如何在組合(Composite)模式中實現各種不同的業務方法及其優缺點

組合(Composite)模式

組合模式是結構型模式中的一種 GOF的《設計模式》一書中對使用組合模式的意圖描述如下 將對象組合成樹形結構以表示 部分 整體 的層次結構 Composite使得用戶對單個對象和組合對象的使用具有一致性

組合模式應用廣泛 根據GOF中對組合模式的定義 Composite模式一般由Component介面 Leaf類和Composite類組成 現在需要對一個軟體產品管理系統的實體建模 某公司開發了一系列軟體集(SofareSet) 包含了多橘正種品牌(Brand)的軟體產品 就象IBM提供了Lotus WebsPhere等品牌 每個品牌下面又有各種產品(Proct) 如IBM的Lotus下面有Domino Server/Client產品等 建模後的類圖如下(代碼可以參見隨本文帶的附件中 包 test entity下所有的源文件)

如圖所示

( )介面SofareComponent就是對應於組合模式中的Component介面 它定義了所有類共有介面的預設行為

( )AbsSofareComposite類對應於Composite類 並且是抽象類 所有可以包含子節點的類都擴展這個類 這個類的主要功能是用來存儲子部件 實現了介面中的方法 部分可以重用的代碼寫在此類中

( )SofareSet類繼承於AbsSofareComposite類 對應於軟體集 軟體集下直接可以包含品牌(Brand) 也可以直接包含不屬於任何品牌的產品(Proct)

( )Brand類繼承於AbsSofareComposite類 對應於品牌 包含了品牌名屬性 並且用來存儲Proct類的實例

( )Proct類就是對應的Leaf類 表示葉子節點 葉子節點沒有子節點

用不同的方法實現業務邏輯

數據結構建立好之後 需要在這個數據結構上添加方法實現圓氏悔業務邏輯 比如現在的這個例子中 有這樣的需求 給定一些用戶選擇好的產品 需要計算出這些選中後軟體的總價格 下面開始介紹如何使用各種不同的方法來實現這個業務邏輯

非面向對象的編程方式

這種方式下 編程思路最簡單 遍歷SofareSet實例中的所有節點 如果遍歷到的當前對象是Proct的話就累加 否則繼續遍歷下一層直到全部遍歷完畢 代碼片斷如下

    /** *取得某個SofareComponent對象下面所有Proct的價格 *@parambrand *@return */ public double getTotalPrice(){ SofareComponenttemp=sofareComponent; double totalPrice= ; //如果傳入的實例是SofareSet的類型 if (temp instanceof SofareSet){ Iteratorit=((SofareSet)sofareComponent) getChilds() &erator(); while (it hasNext())核山{ //遍歷 temp=(SofareComponent)it next(); //如果子對象是Proct類型的 直接累加 if (temp instanceof Proct){ Proctproct=(Proct)temp; totalPrice+=proct getPrice(); } else if (temp instanceof Brand){ //如果子對象是Brand類型的 則遍歷Brand下面所有的產品並累加 Brandbrand=(Brand)temp; totalPrice+=getBrandPrice(brand); } } } else if (temp instanceof Brand){ //如果傳入的實例是SofareSet的類型 則遍歷Brand下面所有的產品並累加 totalPrice+=getBrandPrice((Brand)temp); } else if (temp instanceof Proct){ //如果子對象是Proct類型的 直接返回價格 return ((Proct)temp) getPrice(); } return totalPrice; } /** *取得某個Brand對象下面所有Proct的價格 *@parambrand *@return */ private double getBrandPrice(Brandbrand){ IteratorbrandIt=brand getChilds(erator(); double totalPrice= ; while (brandIt hasNext()){ Proctproct=(Proct)brandIt next(); totalPrice+=proct getPrice(); } return totalPrice; }

這段代碼的好處是實現業務邏輯的時候無需對前面已經定好的數據結構做改動 並且效率比較高 缺點是代碼凌亂而且頻繁使用了instanceof判斷類型和強制類型轉換 代碼的可讀性不強 如果層次多了代碼就更加混亂

面向對象的編程方式(將計算價格的方法加入數據結構中)

下面我們採用面向對象的方式 可以這么做 在介面SoftWareComponent中加入一個方法 名叫getTotalPrice 方法的聲明如下

    /** *返回該節點中所有子節點對象的價格之和 *@return */ public double getTotalPrice();
由於類Brand和SofareSet都繼承了AbsSofareComposite 我們只需在類AbsSofareComposite中實現該方法getTotalPrice方法即可 如下
    public double getTotalPrice(){ Iteratorit=erator(); double price= ; while (it hasNext()){ =(SofareComponent)it next(); //自動遞歸調用各個對象的getTotalPrice方法並累加 price+=sofareComponent getTotalPrice(); } return price; }
在Proct類中實現如下
    public double getTotalPrice(){ return price; }
在外面需要取得某個對象的總價格的時候只需這樣寫(在本文的例子 test business SofareManager中可以找到這段代碼)
    //getMockData()方法返回數據 SofareComponentdata=getMockData(); //只需直接調用data對象的getTotalPrice方法就可以返回該對象下所有proct對象的價格 double price=data getTotalPrice(); //找到某個對象後直接調用其getTotalPrice方法也可以返回總價格 price=data findSofareComponentByID( id ) getTotalPrice();

現在把業務邏輯的實現都放在了數據結構中(組合模式的結構中) 好處很明顯 每個類只管理自己相關的業務代碼的實現 跟前面舉的面向過程方式的實現方式相比 沒有了instanceof和強制類型轉換 但是不好的地方是如果需要增加新的業務方法的話就很麻煩 必須在介面SoftWareComponent中首先聲明該方法 然後在各個子類中實現並且重新編譯

使用訪問者模式

使用訪問者模式就能解決上面提到的問題 如果要經常增加或者刪除業務功能方法的話 需要頻繁地對程序進行重新實現和編譯 根據面向對象設計原則之一的SRP(單一職責原則)原則 如果一個類承擔了多於一個的職責 那麼引起該類變化的原因就會有多個 就會導致脆弱的設計 在發生變化時 原有的設計可能會遭到意想不到的破壞 下面我們引入了一個叫做Visitor的介面 該介面中定義了針對各個子類的訪問方法 如下所示

    public interface Visitor{ public void visitBrand(Brandbrand); public void visitSofareSet(SofareSetsofareSet); public void visitProct(Proctproct); }
visitBrand方法是訪問Brand對象節點的時候用的 剩下的方法依次類推 並在介面SofareComponent中增加一個方法
    public void accept(Visitorvisitor);
在SofareSet中實現介面中的accept方法 首先直接調用Visitor介面中的visitSofareSet方法 傳入的參數是本身對象 然後遞歸調用子對象的accept方法
    public void accept(Visitorvisitor){ visitor visitSofareSet( this ); Iteratorit=erator(); while (it hasNext()){ SofareComponentponent=(SofareComponent)it next(); ponent accept(visitor); } }
在Brand中實現介面中的accept方法 首先直接調用Visitor介面中的visitBrand方法 傳入的參數是本身對象 然後遞歸調用子對象的accept方法
    public void accept(Visitorvisitor){ visitor visitBrand( this ); Iteratorit=erator(); while (it hasNext()){ SofareComponentponent=(SofareComponent)it next(); ponent accept(visitor); } }
其實在上面的兩個類的實現中可以將遍歷子節點並調用其accept方法的代碼寫到父類AbsSofareComposite中的某個方法中 然後直接調用父類中的這個方法即可 這里為了解釋方便分別寫在了兩個子類中 在Proct中實現介面中的accept方法 直接調用Visitor介面的visitProct方法即可
    public void accept(Visitorvisitor){ visitor visitProct( this ); }
下面需要實現Visitor介面 類名是CaculateTotalPriceVisitor 實現了計算總價格的業務邏輯 實現代碼如下所示
    public class CaculateTotalPriceVisitor implements Visitor{ private double totalPrice; public void visitBrand(Brandbrand){ } public void visitSofareSet(SofareSetsofareSet){ } public void visitProct(Proctproct){ //每次在組合的結構中碰到Proct對象節點的時候 就會調用此方法 totalPrice+=proct getPrice(); } public double getTotalPrice(){ return totalPrice; } }
上面那段代碼中 首先在類內定義一個總價格的屬性 由於Brand和SofareSet都沒有價格 因此在實現中 只需在visitProct方法中累加totalPrice即可 在外面如果需要計算總價格的話這樣寫(在本文的例子 test business SofareManager中可以找到這段代碼)
    //建立一個新的Visitor對象 = new CaculateTotalPriceVisitor(); //將該visitor對象傳到結構中 data accept(visitor); //調用visitor對象的getTotalPrice()方法就返回了總價格 double price=visitor getTotalPrice();

下面是它的時序圖 在類SofareManager中的main方法中 調用軟體集對象(data)的accept方法 並將生成的visitor對象傳給它 accept方法開始遞歸調用各個子對象的accept方法 如果當前的對象是SofareSet的實例 則調用visitor對象visitSofareSet方法 在visitor對象中對該節點的數據進行一些處理 然後返回 依次類推 遍歷到Brand對象和Proct對象也與此類似 當前的邏輯是計算軟體產品的總價格 因此當遍歷到Proct對象的時候 取出產品的價格並且累加 最後當結構遍歷完畢後 調用visitor對象的getTotalPrice方法返回給定軟體集對象的(data)的總的價格 如果需要加入一個新的計算邏輯 只實現Visitor介面 並且將該類的實例傳給data對象的accept方法就可以實現不同的邏輯方法了

點擊小圖看大圖

我們可以看到通過訪問者模式很好地解決了如何加入新的業務代碼而無需重新改動 編譯既有代碼 但是該模式也不是沒有缺點 如果在組合模式中結構加入新的子類的話會導致介面Visitor也跟著改動 導致所有Visitor的子類都需要實現新增的方法 因此這種訪問者模式適合於結構不經常變動的情況

改進訪問者模式

前面我們說到了如何使用Visitor模式及使用該模式後的優缺點 下面舉具體的例子說明 假設現在客戶提出了一個產品集(ProctSet)的概念 隨著公司軟體版本的增多 需要將同一個版本的產品(Proct)都放到產品集(ProctSet)中 而一個品牌包含有多個產品集 因為現在組合結構中增加了一個節點 所以在Visitor介面中也必須隨之增加一個叫做visitProctSet的方法 並且會導致原有系統中所有已經實現了Visitor介面的類都需要重新實現並編譯 用Java的反射機制可以解決這個問題

使用Java的Method Reflection機制實現訪問者模式

首先我們需要改變一下Visitor介面 介面名叫做ReflectionVisitor 如下所示

    public interface ReflectionVisitor{ /** *定義了一個訪問節點的方法 *@paramsofareComposite */ public void visitSofareComposite( Object sofareComposite); }

在現在的介面的方法里 能接受任意的對象(參數是Object)

下面實現介面ReflectionVisitor 名叫ReflectionVisitorImpl 代碼如下所示

    public class ReflectionVisitorImpl implements ReflectionVisitor{ public void visitSofareComposite( Object sofareComposite){ //判斷是否是null if (sofareComposite== null ){ throw new NullPointerException ( Thevisitnodeshouldnotbenull! ); } //組裝class數組 即調用動態方法的時候參數的類型 Class []classes= new Class []{sofareComposite getClass()}; //組裝與class數組相對應的值 Object []objects= new Object []{sofareComposite}; try { //查找visit方法 Methodm=getClass() getMethod( visit classes); //調用該方法 m invoke( this objects); } catch ( NoSuchMethodException e){ //沒有找到相應的方法 System out println( : +sofareComposite getClass()); } catch ( Exception e){ //發生了別的異常 System out println( ); e printStackTrace(); } } }

這段代碼首先判斷傳入的對象是否是空指針 然後創建class數組和object數組 然後用getMethod方法取得方法名是 visit 方法的參數是 對象sofareComposite對應的類 的方法 最後調用該方法 調用該方法的時候可能會發生NoSuchMethodException異常 發生這個異常就表明它的子類或者當前類中沒有與參數中傳入相對應的visit方法

下面再來寫新版本Visitor類 擴展剛寫好的那個ReflectionVisitorImpl類 名叫 如下所示

    public class extends ReflectionVisitorImpl{ private double totalPrice; public void visit(Proctproct){ totalPrice+=proct getPrice(); } public void visit(SofareSetsofareSet){ System out println( Nopriceforsofareset ); } public double getTotalPrice(){ return totalPrice; } }
代碼中聲明了兩個visit方法(因為在類ReflectionVisitorImpl中 查找名為visit 參數與傳進去的對象匹配的的方法) 一個是給Proct的 另外一個是給SofareSet的 在這里SofareSet中並沒有價格 只需當前的對象是類Proct的實例的時候將價格累加即可 如果在組合模式的結構中增加了新的類 只需要在ReflectionVisitorImpl的擴展類中聲明一個visit方法 該方法的參數是新增加的類 對於文中的例子 只需增加下面的一個方法
    public void visit(ProctSetproctSet){ //實現的代碼 }

在組合結構的介面SofareComponent中改一下accept方法 參數是修改後的Visitor介面 如下所示

public void accept(ReflectionVisitor visitor);

由於在類SofareSet Brand和ProctSet中實現上面accept方法的代碼都一樣 因此把代碼抽象到上層共有的抽象類AbsSofareComposite中 如下所示

    public void accept(ReflectionVisitorvisitor){ visitor visitSofareComposite( this ); Iteratorit=erator(); while (it hasNext()){ SofareComponentponent=(SofareComponent)it next(); //遞歸調用子對象的accept方法 ponent accept(visitor); } }
現在如果想在外面要調用的話 代碼如下所示(在本文的例子 test business SofareManager中可以找到這段代碼)
    //建立一個新的Visitor對象 reflectionVisitor = new (); //將該visitor對象傳到結構中 data accept(reflectionVisitor); //調用visitor對象的getTotalPrice()方法就返回了總價格 double price=reflectionVisitor getTotalPrice();

另外由於沒有實現Brand類的visit方法 在組合結構遍歷到Brand的節點的時候會拋出NoSuchMethodException異常 就是沒有關於該節點方法的實現 在當前的程序中會列印出一句話

You did not implement the visit method for class:class test entity Brand

如果運行程序時發生了別的異常 請參見相應的Java API文檔

在現在的改進後的訪問者模式中 如果在組合的結構中新增或刪除節點並不會對已經實現了的Visitor產生任何影響 如果新增了業務方法 只需擴展類ReflectionVisitorImpl就可以了 因此很好地解決了訪問者模式的問題

改進訪問者模式實現與既有代碼對接

到現在為止 改進後的訪問者模式好像已經很好地解決了所有出現的問題 但是考慮到有下面的這種情況 現在需要寫一個JSP的標簽庫(TagLib) 這個標簽庫還必須具有Visitor的功能(就是需要有遍歷節點的功能) 可以將節點的內容根據需要列印到HTML頁面中 由於標簽本身需要繼承相應的類(如TagSupport) 如果繼續使用上面提供的方法將無法實現 因為Java不允許多重繼承 不過我們可以將原有ReflectionVisitorImpl的代碼再改進一下以解決這種情況 新的Visitor的實現類叫NewReflectionVisitorImpl 代碼如下所示

    public class NewReflectionVisitorImpl implements ReflectionVisitor{ //實現visit方法的類 private Object targetObject; //構造方法 傳入實現了visit方法的類 public NewReflectionVisitorImpl( Object targetObject){ if (targetObject== null ) throw new NullPointerException ( ! ); this targetObject=targetObject; } public void visitSofareComposite( Object sofareComposite){ //……與上個例子相同 try { //從目標的對象中查找visit方法 Methodm=targetObject getClass() getMethod( visit classes); //調用該方法 m invoke(targetObject objects); } catch ( NoSuchMethodException e){ //……與上個例子相同 } catch ( Exception e){ //……與上個例子相同 } } }
該類的實現與上面的實現差不多 多了一個構造函數 在該構造函數的參數中傳入實現了visit方法的類 並且維護了指向該類的一個引用 另外最重要的地方是下面的兩行代碼
    //從目標的對象中查找visit方法 Methodm=targetObject getClass() getMethod( visit classes); //調用該方法 m invoke(targetObject objects);

本來的代碼中從本身的類及其子類中查找visit方法 而現在是從維護的目標類中查找visit方法

現在需要寫Tag類 這個類擴展了TagSupport類 如下所示(為說明的方便 隨本文的例子提供了一個模擬的TagSupport類)

    public class MyTag extends TagSupport{ = null ; private double totalPrice= ; public int doEngTag(){ //創建一個visitor對象 並且將本身傳入visitor對象中 ReflectionVisitorvisitor= new NewReflectionVisitorImpl( this ); //遍歷結構 sofareComponent accept(visitor); //列印出價格 out println(totalPrice); return ; } //實現了針對Proct的visit方法 public void visit(Proctproct){ totalPrice+=proct getPrice(); } public void visit(Brandbrand){ out println(brand getId()+brand getDescription()); } //別的代碼請參見隨本文帶的源程序 …… }
如果想測試上面寫的那段代碼 (在本文的例子 test business SofareManager中可以找到這段代碼))如下所示
    //getMockData()方法返回數據 SofareComponentdata=getMockData(); MyTagmyTag= new MyTag(); myTag setSofareComponent(data); //計算總價格 並列印出來 myTag doEngTag();

可以看到通過Java的反射機制很好地解決了多重繼承的問題 使該訪問者模式能夠更好地應用於你的應用中 另外可以看到 那些visit方法所在的類已經不是實現了介面ReflectionVisitor 可以說是訪問者模式在Java語言的支持下的一種特殊實現

如果擔心引入類反射機制後帶來的效率問題 你可以將Method對象通過某種方式緩沖起來 這樣不會每次從傳入的對象中找visit方法 可以部分地提高效率

結論

lishixin/Article/program/Java/gj/201311/11152

熱點內容
好貴的聖女ftp 發布:2025-06-15 10:57:10 瀏覽:569
安卓如何免費下載我的世界地球 發布:2025-06-15 10:55:36 瀏覽:123
如何自己diy一個nas伺服器 發布:2025-06-15 10:45:12 瀏覽:300
加密晶元廠商 發布:2025-06-15 10:37:36 瀏覽:174
泛微oa手機伺服器地址 發布:2025-06-15 10:37:24 瀏覽:789
phpsystem 發布:2025-06-15 10:34:25 瀏覽:612
分支嵌套編程 發布:2025-06-15 10:19:26 瀏覽:159
鹿晗的qq密碼是多少錢 發布:2025-06-15 10:09:05 瀏覽:430
磁碟和緩存一直爆滿 發布:2025-06-15 09:57:32 瀏覽:807
win7區域網沒有許可權訪問 發布:2025-06-15 09:52:30 瀏覽:980