我家門前_網頁設計公司

網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

當全世界的人們隨著網路時代而改變向上時您還停留在『網站美醜不重要』的舊有思維嗎?機會是留給努力改變現況的人們,別再浪費一分一秒可以接觸商機的寶貴時間!

我家住村東頭。

村裡人出村進村,都要從我家門前過。我小的時候,父親在家門前的土台上栽了一棵洋槐。只有杴把那般粗細。父親栽那棵樹的時候,還很年輕,一頭黑髮。

天擦亮時,躺在炕上,我總能聽見人的腳步聲,沾着濃重的霧水,悶悶地走過去。這是人們下地去了,他們的犁頭上,一定挑着露珠。

中午的時候,人們扛着農具,渾身泥土,回來了。這時候,父親會隔着門喊:來喝一罐茶——

門外回道:不了,回去早點歇。

麥茬地翻幾遍了?

第二遍。

話音傳來,人已走遠。

黃昏,我端着碗,蹲在門口的土台上,等夥伴們來捉迷藏。月光從蟋蟀的琴弦上升起,夜空清亮,大人們站在院子里,盤算着明天的活。我們把自己藏進葵花稈,藏進麥草垛,藏進背簍,藏進雲端,甚至把自己藏進大人的閑聊里。

小時候,村裡的路,全是土路,我家門前也不例外。

下雨天,屋檐上的水,匯聚在一起,淌過門前。過往的人,深一腳,淺一腳,踩着泥水,褲腿上,甩起的泥點,糊了一層。布鞋底子上,粘着一層又一層的泥巴,厚厚的。

這種時候,村裡人很少出村。下地,是泥;去趕集,也是一路泥。我家門前,是寂靜的。只有雨水兀自淌。洋槐樹長高了半截,樹恭弘=叶 恭弘上掛着雨點,吧嗒,落下一滴,吧嗒,又落下一滴。

天晴了,雲散開,出彩虹。陽光把路面晒乾,曬得發燙。不用多久,路上便是一層虛土。人拖拉着鞋走過,便是一路塵土飛揚。

洋槐樹,這時候泛着蒼翠的光芒,似乎再一使勁,它就要飛起來了。

有一年,村裡來了工程隊,拉來成堆的水泥和砂子。聽說,要硬化巷道了。在這之前,從山下通往村裡的路,已經硬化了,五米寬,修了護坡,挖了水渠。下雨天,終於可以不用踩泥踏水,去趕班車、趕集了。

很快,路面硬化到了我家門前。

我們把硬化路面叫打路。剛打過的水泥路,不能踩踏。撒一層麥稈,或鋪一層塑料布,用磚頭壓住。人們欠着身子,從牆根下顫巍巍走過去,生怕一腳落下去,踩進水泥里。雞啊鴨啊,是不怕的,趁人不注意,已經開始大搖大擺走了過來,還不時用嘴啄一下粘在水泥上的蠅子。水泥路上,留下了幾串竹恭弘=叶 恭弘,又落下了幾串楓恭弘=叶 恭弘。

路幹了,可以行走了。風再吹,雨再下,路上拓着的竹恭弘=叶 恭弘和楓恭弘=叶 恭弘,似乎永遠長在了上面。

通村的水泥路,和村裡硬化過的巷道接上頭了。

又是下雨天。

厚厚的雲,鉛灰色,從南邊移來,罩在我家門前的洋槐上。洋槐長大了,也長粗了。只是雨落在洋槐上,還是舊年的樣子。吧嗒,落下一滴,吧嗒,又落下一滴。

網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

透過資料庫的網站架設建置,建立公司的形象或購物系統,並提供最人性化的使用介面,讓使用者能即時接收到相關的資訊

人們再不用擔心下雨天了。該進城進城,該趕集趕集。雨水順着水泥路面流走了,踩上去,不會甩起泥點子,不會粘兩腳泥,也不會腳下一打滑,跌倒在路上滾一身泥。

後來,路面變得乾淨,人們依然秉承着黎明即起、洒掃庭除的好習慣。掃了院落,還會把門口也打掃一遍,有時灑點水,清清爽爽。

經過我家門前的,最先是三輪車,後來是摩托車,現在變成了小轎車。人們蹲在我家門前的土台上,掰着指頭算,從東頭到西頭,從上庄到下庄。海明家一輛大眾,永恆家一輛面蛋蛋,大瓜家一輛五菱宏光,翠球家好像也有一輛,石頭還有一輛出租車……一圈算下來,八九十戶人家的村裡,竟然有二三十輛車,不少了。這車大多都在城裡,周末有時會回來一趟。上山,進村,都是平坦的水泥路,一路順風,大多能開到家門口。

車過我家門前,開車的人會停一下,把頭從玻璃窗伸出來,跟蹲在土台上的老人們打招呼。這是祖輩留下的禮儀,所有人都遵守。

回來了?

回來了!

您身體好着沒?

好着哩,屋裡喝水去。

不去了,熱得很。

那趕緊回吧,你媽給你包的扁食都煮爛了。

一句玩笑,眾人嘩啦而笑。

車開走了,人們順着話題,七七八八又扯一陣子。陽光在洋槐樹蔭里飄蕩,有一些細碎的,飄到人們臉上。那深刻的皺紋,落滿黃土的皺紋,能種出五穀雜糧的皺紋,此刻,泛起了光澤。

再後來,兩三年前的事。村裡要安路燈。太陽能電板,半個炕桌大小,頂在杆子上頭,路燈彎着腦袋,到了晚上,天抹黑,齊刷刷便把眼睛睜開。我家門口也有一盞。熾白的燈光,一半落在路上,一半落進院子,亮晃晃的,像池塘里的水。

幾百年了,村子里都用月光照明,在昏黃的光線里,過河一般,深一腳,淺一腳,歪歪斜斜,走過一輩又一輩。沒有月光的夜晚,伸手不見五指,人們只能憑感覺,一步步走向更深的夜裡。到我小時候,條件好些了,用起了充電式的手電筒。四四方方的身子,紅塑料殼,小碗口般的燈頭,屁股後面掛着電池。關鍵是可以充電,充電就省事多了,把拳頭大的充電器別進插座,一晚上,就充滿了。提着手電走夜路,是驕傲的。濃烈的光,那麼亮堂。

現在更好了。現在不需要手電筒了。白天,電池板吸足太陽能,晚上,自動亮起來。黎明時分,自動又滅了。清潔、環保、智能。父輩們一定沒想到有一天,曾經稀罕的燈光,會在村裡家常便飯般亮起來。

我曾在某個夜晚,踏着山鳥的鳴叫,在村莊的對面,看到幾十盞路燈把村莊罩着,毛茸茸的,像一塊白毛毯。那光亮,讓村莊變得溫暖,變得慈祥。她不再是大山的一部分,她就是她自己,一個養活着八九十戶人家的村莊,她有名有姓,有出處,也有前程。

我甚至藉著光亮,遠遠地,看到我家的門前。那條水泥路,那牆角的竹子,那路口的洋槐,帶着風,帶着陰涼,帶着光陰的私語。

有了路燈,沒過多久,又有了網絡。高高的杆子栽在我家門前,上面架着通信電線。於是,父親的手機接上了移動無線網絡。一根線,一個路由器,父親的世界從此不同了。父母有了微信,拍點照片,發個朋友圈,百度搜個秦腔,做個家庭相冊……用得比我們還順溜。打電話,也換成了視頻通話。

一段路,一盞燈,一根網線,變化看似細小,卻悄悄改變着村莊的內涵和走向。

我家門前那段土坯牆,也要換成磚頭的了。村裡提供磚頭、水泥,還免費給砌起來。我回家的時候,磚頭來了,碼在門口,水泥也來了,砌牆的地基也挖開了。下次回村,那多年的土牆,便再也見不到了。

只有門口的那棵洋槐,長成了一棵大樹該有的樣子。挺拔、蔥蘢、安詳,樹蔭依舊籠罩着土台上的人們。其實,它比我更知道這個村子發生了什麼。

下次回家,我要帶上露珠和月光,向它詳細請教。

本站聲明:網站內容來http://www.societynews.cn/html/wh/fq/,如有侵權,請聯繫我們,我們將及時處理

※想知道最厲害的網頁設計公司嚨底家"!

RWD(響應式網頁設計)是透過瀏覽器的解析度來判斷要給使用者看到的樣貌

一條魚的故事_網頁設計

網頁設計最專業,超強功能平台可客製化

窩窩以「數位行銷」「品牌經營」「網站與應用程式」「印刷品設計」等四大主軸,為每一位客戶客製建立行銷脈絡及洞燭市場先機。

母親喜魚,尤其是愛吃魚。

我小的時候,當鄉村教師的父母用他們每月總數共九十七元錢的工資養活我們全家六口:姐、我、兩個弟弟和父親母親自己。讓人揪心的是,母親長期患有胃病。母親胃疼的時候,愁眉苦臉,雙手捂腹在床上“唉唉”一躺半天,令全家人坐立不安。父親心疼,用小鋁鍋為母親熬稀粥,還擠出錢每周去墟上為母親買回三五兩豬肉,加水及佐料燉爛,供母親一人慢慢享用。如此奢侈的菜肴,令我們姐弟幾個直淌口水。母親吃着,卻微皺着眉,還時常趁父親不在時把肉分給我們,令我們姐弟四人既興奮又納悶。後來我們才發現,母親最想吃、最喜吃的東西,其實是魚!

在南方鄉村,魚比豬肉便宜。父親於是每周摳出錢來為母親買魚。只要有魚,母親便總是吃得津津有味,全家人於是樂,禁不住逗她:“媽,您怎麼天生就那麼愛吃魚呀?”此時,母親就訕訕地笑:“我是屬貓的,哪能不喜魚?”

那年盛夏,有一天我和二弟跟鄉村小夥伴在池塘里游泳戲水。忽然一條大魚受驚,在我跟前“呼”地高高躍出水面,蹦到岸上。我一喜,不由分說上岸奮力將魚捉住。這是條鱅魚(北方人稱胖頭魚),足有兩斤重。二弟和別的小夥伴紛紛圍過來,個個眉飛色舞,羡慕至極。我好不得意!拎獎品般連蹦帶跳直奔家裡,沖母親報功。母親見狀,臉煞白煞白,沖我和二弟嚷:“……你倆不懂事哇,怎能去偷公家的魚?”我和二弟使勁爭辯:“這魚不是偷的,是它自個兒跳上岸的呀!”母親大怒:“那也是公家的!”並強令我們將魚送回池塘放生。我不敢繼續爭辯,不情願地拎着魚往池塘走,二弟也怏怏地在我身後跟着。

台北網頁設計公司這麼多該如何選擇?

網動是一群專業、熱情、向前行的工作團隊,我們擁有靈活的組織與溝通的能力,能傾聽客戶聲音,激發創意的火花,呈現完美的作品

剛出家門,一位同齡的夥伴就堵住我,壓低聲音道:“喂,幹嗎把魚放生,多傻呀!拿到我家去,今夜玩耍完了,在我家煮魚粥,如何?”他眼神熱切,我和二弟怦然心動。我眉一揚,大聲嚷:“就這麼辦!”說著,慷慨地將碩大的鱅魚遞給他。我的心也過節般充滿興奮。我想,自己和二弟一個月都難得打次牙祭,把送到嘴邊的魚放回池塘,未免太虧了!

這天晚上,我和二弟晚飯後便溜出家門,在月色溶溶的鄉村之夜嬉戲玩耍。雖是耍着,內心卻總記着那條魚。於是,玩了個把小時,便直奔那位小夥伴家。他的父親和大哥已經煮好了魚粥,於是,我、二弟和另幾個小夥伴美滋滋地飽餐了一頓魚粥。吃罷,卻不由得提心吊膽。幸好事後一切都相安無事,母親也一直蒙在鼓裡。

直至我讀完大學分配到北京工作,有次回家探親,全家人在一塊說笑時我又想起當年那條魚,我和二弟都公開了那條魚的真正去向。母親聽罷,皺着眉瞪着我和二弟,嗔怪道:“好哇——你們兄弟倆原來合夥糊弄我吶?!”

我和二弟直樂。一會兒,二弟嘻嘻地問母親:“媽,要是再有魚跳上岸,又讓我們逮着拎回家來,您還讓不讓我們送回去放生?”不料母親瞪一眼二弟:“那還用說?不是你勞動或花錢換回來的東西,啥時候都不能要!”

這次,我和二弟沒再笑,望着生養我們的老母親,久久說不出話來……

本站聲明:網站內容來http://www.societynews.cn/html/wh/fq/,如有侵權,請聯繫我們,我們將及時處理

※推薦評價好的iphone維修中心

擁有專業的維修技術團隊,同時聘請資深iphone手機維修專家,現場說明手機問題,快速修理,沒修好不收錢

澳洲學生遇上重慶_貨運

※評比南投搬家公司費用收費行情懶人包大公開

搬家價格與搬家費用透明合理,不亂收費。本公司提供下列三種搬家計費方案,由資深專業組長到府估價,替客戶量身規劃選擇最經濟節省的計費方式

兩年前我帶了一批澳洲墨爾本的大學生,到重慶大學參加中澳大學生論壇,同時學生們還進修短期的中文課程。論壇主題是兩國青年如何詮釋彼此的文化。幾個人都喜歡上了重慶。

一次路經一個廣場,音樂喧鬧,原來是大媽們在跳廣場舞。我向澳洲學生解釋,此乃體育鍛煉的一種方式。學生回應說:不僅僅是鍛煉,也是熱愛生活。這裏的人都爭取身心快樂。為什麼不呢?

重慶號稱霧都,當地只有三分之一的日子天氣晴好,一般都霧蒙蒙,所以柳宗元說,狗會吠日,因為總也見不到太陽,不認識。“蜀犬吠日”出自柳宗元的《答韋中立論師道書》。

一年三分之二的時間見天不見日,可是人民仍然安居樂業。外人不解甚至納悶:不見天日多鬱悶。重慶的朋友聞言大笑。天府之國,人們都懷着淡淡的喜悅。不僅重慶本地人熱愛家鄉,外鄉人,甚至外國人也喜歡這裏。

學生們都認真準備論壇發言。

重慶大學外語系的學生認為只有掌握了中國古典文化精華,古為今用,方能在國際交流中真正認識到自己的長項,同時了解自己的不足,培養自我反省和獨立思考的精神。這個觀點在論壇上得到澳洲學生的共鳴。他們認為中國悠久的歷史和哲學很有意思!

對此我深有體會。平時講課時就可以看出一些端倪:越來越多的澳洲學生選修中文,他們渴求了解中國文化,最初的好奇已經躍升為迫切的求知欲。由於中國持續增強的影響力,不僅中文成為墨爾本機場等公共場所的標示語言之一,而且澳洲也開始慶祝中國的農曆新年。

一位男生臉色蒼白來上課。聽我講情緒和健康的關係。講到思傷脾。有人問,脾是什麼?在哪裡?然後低頭查電腦或手機。我解釋說,脾是中醫的後天之本,和胃一起主消化收納運行。如果你思念太甚,思慮過多,脾就疲憊,慢慢處於懶惰狀態,不好好工作了。那男生眼睛一亮,說,怪不得!我最近沒有什麼食慾,可能太想念自己的女朋友了。教室里爆發出一陣鬨笑。

他還專門給我看買來的書法配圖片的書,显示出對漢字的濃厚興趣。他尤其喜歡漢字中隱藏的抽象圖形之美。

講到悲傷肺,祖籍伊朗的馬克略有所悟,說,澳洲很多哮喘病人,肺不好,他們中一些人看起來就抑鬱不樂。也許讓他們高興起來,病情就可以緩解。大家對他的大膽假設抱支持態度。馬克的專業是經濟,由於會說一些中文,畢業后他順利得到澳洲第一大銀行的工作,可以接待來自中國的客戶。

※回頭車貨運收費標準

宇安交通關係企業,自成立迄今,即秉持著「以誠待人」、「以實處事」的企業信念

還有幾個學生最喜歡漢字中蘊藏的歷史。讓他們畫車,我說,如果是古代華麗的馬車,就要有華蓋。然後我把“車”字的演變寫出來。學生明白了“車”乃截取了最有代表性的部分——輪子和連接輪子的橫輻。

我講解“明天”:為什麼從字面上看,“明天”是光明的一天?我的理解是:因為今天我們還要經歷夜晚,之後天亮起來,就是明天。中文奇妙,比起一個技術上的時間,它充滿了光與暗對比的哲學,充滿了形象,充滿了生命要素,充滿感恩和希望。

講到道家,問學生小草和大樹誰更剛強。當然是大樹,眾人說。那麼風暴來了呢?一位女生略加思索后回答,風暴中大樹可能被連根拔起,小草卻安然無恙。立即有男生反駁:那如果大樹倒下時砸爛了小草呢?說完后又覺得只是小概率,自己先笑了。

給我留下深刻印象的是兩國大學生都對文化交流抱持開放的態度,認為需要更新對彼此的認識,打破常規。

湯姆是一位工程專業的學生。他的中國之行包括訪問許多重要工程項目,比如世界上最大的水壩三峽。這位未來的工程師也是頗感性的人,他很喜歡在樹木上掛滿紅布條的許願林,對那些同心鎖也情有獨鍾,因為他相信每一枚同心鎖背後都藏着一個感人的故事。他還攜帶了一些母親的骨灰,把它撒在張家界天門山的最高峰。根據傳說,天門山是生界和靈界的門關。他在自己的微信中介紹了天門山。

坐上重慶火鍋的宴席,幾個學生面對桌子中央的鮮花和滿桌豐富的食材興高采烈,感慨這裏的宴席很有意思,兼有娛樂和與朋友交流的功能。有學生對微信支付相當喜歡,打聽怎樣才能把錢放入微信錢包。

坐高鐵也是神奇的體驗。時速達到300公里以上的火車目前澳洲還沒有,當然感覺不一樣,好像貼着地面飛。我的學生說,關鍵是很穩,簡直感覺不到火車在高速運行。我回憶起20多年前的綠皮普快列車,時速不過120公里左右,由於車次少,站票多,上車時擁擠不堪,還有小朋友被從窗口塞進去。現在的高鐵提速接近3倍,大大方便了出行。“春風得意馬蹄疾,一日看盡長安花”不在話下。

秩序來自於資源的合理配置。我記得十幾年前公共汽車車少人擠,保證準時上班是件讓人頭疼的事。現在車次增多,準點率也大大提升。退休人士可以免費乘坐公交車,這是值得稱讚的一大福利,即使在澳洲這樣人均資源配置很高的國家,退休人士也僅僅是享受半價票而已。

每次回國探親,我都對祖國的活力和建設速度感到驚訝。當然,對老城區的保護也相當重要,因為那裡承載了我們兒時的記憶。我的家鄉有泉城之美譽,每次回去我都要到泉水旁、到大明湖畔徜徉,療愈自己在海外的思鄉之苦。

連續兩周陰雨天氣,周末放晴,天藍得深邃通透。重慶人紛紛外出曬太陽。我注意了一下,沒有看到蜀犬吠日的情況。看來古人也是喜歡誇張的。

對於中國哲學中的天人合一境界,幾個學生開始慢慢領悟。比如課堂上講到“留得殘荷聽雨聲”,一位女生髮出讚歎:哇,這不是很美嗎?

本站聲明:網站內容來http://www.societynews.cn/html/wh/fq/,如有侵權,請聯繫我們,我們將及時處理

※智慧手機時代的來臨,RWD網頁設計為架站首選

網動結合了許多網際網路業界的菁英共同研發簡單易操作的架站工具,及時性的更新,為客戶創造出更多的網路商機。

老鷹谷_網頁設計公司

網頁設計公司推薦不同的風格,搶佔消費者視覺第一線

透過選單樣式的調整、圖片的縮放比例、文字的放大及段落的排版對應來給使用者最佳的瀏覽體驗,所以不用擔心有手機版網站兩個後台的問題,而視覺效果也是透過我們前端設計師優秀的空間比例設計,不會因為畫面變大變小而影響到整體視覺的美感。

李青松供圖

之前,我從未見過上萬隻鷹聚群的壯觀場面。

那座山谷里的鷹多為蒼鷹,黑褐色,白羽尖,胸部密布灰褐與黑白相間橫紋。飛行時,雙翅寬闊,翼展蓬勃。細觀之,翅下灰白色,並間雜黑褐色橫帶。好威武的鷹啊!

那座山谷,在大西北天山腳下。早先,這座山谷沒有名字,當地人說起它時就叫“那塊地”。我去后認為不妥,這麼有故事的山谷怎麼可以沒有名字呢?應該有個名字呀,便曰之:老鷹谷。

當地村民都很贊同這個名字。於是,“老鷹谷”取代了“那塊地”,就被叫開了。

老鷹谷走向自西向東,兩邊是起伏的懸崖峭壁,裸岩猙獰。山谷是陡然沉下來的,沉到最底處,便是一條河了,蜿蜒曲折,河水靜靜地流着,滋潤着兩岸的萬物。胡楊,一副忍辱負重樣子,倔強地生長着。數不清的鷹棲在樹枝上,遠看如同樹上掛滿了黑褐色布條。紅柳,雖然個體纖細柔弱,但組成群落卻密密實實,以絕對多的數量,佔據着山谷里最惹眼的位置。它們在河水反襯下,泛着幽幽的暗紅色的光。紅柳叢中,跳躍着生命。野兔、野雞、沙斑雞、田鼠、刺蝟、旱獺、草蛇出沒其間。鷹,在高處盤旋,時而靜止不動,時而滑翔翻轉,一圈,一圈,又一圈,尋找抓捕時機。

老鷹谷的鷹可不好惹。性格暴烈,彪悍。

鷹的嘴和爪子如鐵一般,強勁有力,抓取獵物時,犹如疾風掃落恭弘=叶 恭弘般兇猛。鷹的身軀壯健而厚實,肌肉緊實,羽毛堅硬。它的姿態是軒昂而英挺的。在浩茫的天宇間,動作疾驟,快如閃電。在所有鳥類中,鷹是飛得最高的。

清晨,當第一縷陽光照亮老鷹谷的時候,也照亮了這片斧削般的峭壁。黑褐色的羽毛微微動了動,鷹便睜開了眼睛。

“丟——溜——溜——!”

“丟——溜——溜——!”

長長的唳嘯,喚醒了沉睡的山谷——新的一天開始了。

鷹巢築在懸崖峭壁上,這已經不是什麼秘密。牧羊人陳老爹知道,村民也知道。但是,沒有人把這當回事。

鷹巢像是一個平底筐,用橫七豎八的枯枝樹條,就那麼毫無規則毫無邏輯搭建而成。——不是凹下去的,而是雜亂無章胡亂堆起來的。“平底筐”往往建在兩塊岩石之間(那裡乾燥安靜,少有干擾),簡陋,粗鄙。看起來似乎並無多少道理,也沒有什麼美感。但是,錯了,如果我們都那麼認為,說明我們是多麼的愚蠢。其實,“平底筐”恰恰透着鷹的大智慧:穩固、牢靠、避風、避險、耐用。

從生存學的角度來看,也許,“平底筐”的實用價值遠大於美學價值。不過,“平底筐”的縫隙里也間或夾雜着一些羽毛,是為了裝飾?還是為了舒服?大概只有鷹自己知道吧。

老鷹谷的鷹,雖說不是作惡多端的壞東西,但有時它們也會惹是生非,令人討厭。

這天,陳老爹趕巴扎回來,手裡拿着一個鍋蓋大的饢,邊走邊吃,不覺間就進了老鷹谷。一不留神,陳老爹手裡的饢卻丟了。他回頭尋找,路上沒有,旁邊灌木叢沒有。饢哪裡去了呢?難道長了翅膀嗎?對了,饢真的長了翅膀。陳老爹抬頭向上看,原來,空中一隻老鷹叼着他的饢,正忽閃忽閃抖動翅膀嘲笑他呢。陳老爹很是生氣,撿起一塊石頭拋向空中,老鷹一驚,嘴巴一松,饢從空中滴溜溜落下來。陳老爹奮力去接,可沒接住,饢落在了一個沙坑裡。騰地一下,沙坑裡躥出一個黃色的影子,慌慌然逃進紅柳叢中。是野兔吧?也可能不是。

陳老爹拾起饢,用嘴吹吹了沙,接着,狠狠咬了一口,往下咽,卻噎住了,噎得直翻白眼。他挺了挺脖子,罵了一句:“狗日的老鷹!”

“丟——溜——溜——!”空中的鷹,排出幾粒屎,陳老爹躲閃不及,屎落在脖頸上。臭!

鷹是在故意羞辱陳老爹。這還沒完呢。

次日,陳老爹家雞窩裡的雞蛋被什麼賊偷吃了,光剩下空蛋殼殼。次日的次日,正在下蛋的蘆花老母雞又不見了。陳老爹忍着,沒言語,照舊在老鷹谷牧羊。可是,於崖壁的底端,陳老爹卻發現了一堆蘆花雞的羽毛。一片狼藉。

南投搬家公司費用,距離,噸數怎麼算?達人教你簡易估價知識!

搬家費用:依消費者運送距離、搬運樓層、有無電梯、步行距離、特殊地形、超重物品等計價因素後,評估每車次單

陳老爹怒火滿腔了。陳老爹打算給老鷹點顏色看看。某日,在老鷹谷里牧羊的陳老爹一眼瞥見了崖壁上的老鷹巢,便舉起牧羊的杆子要把它毀了,卻聽到“溜溜溜!”一聲喚。細觀之,崖壁上趴着一隻老鷹,掙扎着動了幾下,就又安靜了。

原來,那隻鷹的翅膀斷了。

鷹的眼神里沒了戾氣,卻滿是恐懼、無奈和哀傷。

陳老爹心軟了。

陳老爹爬上崖壁,把衣服脫下來罩住了受傷鷹的頭,抱回家。找出接骨木恭弘=叶 恭弘子,搗成糊糊,塗在鷹翅傷口處,再用繃帶小心翼翼地纏上。多日之後,在陳老爹細心照料下,老鷹翅膀上的傷口,漸漸癒合了。然而,在陳老爹看來,那隻鷹還相當虛弱,元氣和體力恢復尚需時日。陳老爹三天兩日,從鎮上屠宰場弄回一隻雞架子喂鷹。後來,雞架子漲價了,陳老爹的開銷有些吃緊,就去田裡下夾子夾老鼠給老鷹吃。傷筋動骨一百天,老鷹的傷終於養好,元氣和體力也恢復了,翅膀一抖動呼呼生風。陳老爹知道,老鷹又可以把雲和風踩在腳下,重返藍天了。

選了個晴朗的日子,陳老爹便把它放飛了。陳老爹徜徉於老鷹谷,心裏空落落的,悵然若失。

——這是多年以前的事情了。

因為鷹,老鷹谷里的草木,從沒有遭受過鼠害蟲害。老鷹谷麥田裡的麥穗粒粒飽滿,年年豐收。

頭一場春雨過後,老鷹谷沉浸在超乎想象的寧靜里。頭頂晴空水洗過一般,瓦藍瓦藍。那些胡楊,那些紅柳,又長出新恭弘=叶 恭弘,欣欣向榮。風彷彿是甜的,微微拂動着樹梢。

然而,想不到的事情發生了。嘭!陳老爹在追趕一隻走散的羊羔羔時不慎墜崖。從此,老鷹谷里不見了陳老爹的身影。

“丟——溜——溜——!”

“丟——溜——溜——!”

老鷹谷,不時傳來一聲聲凄涼的唳嘯。陳老爹並沒有摔死,而是摔斷了脊椎,再也不能健步如飛地行走,再也不能揮動着杆子牧羊了。在陳老爹養傷的日子里,家人清早開門時發現,門口總是有人隔三差五地丟下一隻野兔。

會是誰呢?

抬頭望天,一隻鷹在陳老爹家房子的上空,盤旋着。一圈,一圈,又一圈。久久不肯離去。

後來,每年四月間,老鷹谷就會出現上萬隻鷹聚群現象。

“丟——溜——溜——!”

“丟——溜——溜——!”

老鷹谷充滿喧囂。鷹鷹鷹鷹鷹。空中是鷹,胡楊枝頭是鷹,紅柳叢中是鷹,地上是鷹,河邊是鷹,麥田裡是鷹。鷹鷹鷹鷹鷹。如此多的鷹聚在一起,出現在這裏,到底是什麼原因呢?連鳥類專家也無法解釋。

我出差來老鷹谷看退耕還林,恰巧看到聚群的鷹。——唉,不禁吃驚地瞪大了眼睛。

生態需要空間的分佈,也需要時間的積累。修復了自然,也就治癒了自然。我隱隱感覺到,隨着生態系統的逐漸恢復和穩定,老鷹谷里,所有的美好,都會如期而至。

本站聲明:網站內容來http://www.societynews.cn/html/wh/fq/,如有侵權,請聯繫我們,我們將及時處理

※想知道購買電動車哪裡補助最多?台中電動車補助資訊懶人包彙整

節能減碳愛地球是景泰電動車的理念,是創立景泰電動車行的初衷,滿意態度更是服務客戶的最高品質,我們的成長來自於你的推薦。

女生適合學編程嗎?_網頁設計公司

※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

台中景泰電動車行只是一個單純的理由,將來台灣的環境,出門可以自由放心的深呼吸,讓空氣回歸自然的乾淨,減少污染,留給我們下一代有好品質無空污的優質環境

二哥,你好,我 Java 是自學的,現在很迷茫,頭髮越掉越多,還是單身狗,真怕再學下去就嫁不出去了。

以上是一個妹子私信我的內容,看完后覺得蠻感慨的。就來談談這個話題吧:女生到底適不適合學編程?

按照我目前的理解來看,編程屬於腦力活動,女生在這方面好像沒有什麼劣勢。假如非要把編程定義為體力勞動的話,我想巾幗不會讓鬚眉的,畢竟你看男足有多差,女足就有多優秀。

最近一段時間,找我說自己迷茫的小夥伴非常多,有女生,當然也有男生。也就是說,迷茫對性別沒有歧視。

小夥伴們之所以迷茫,除了自身能力之外,和大環境不無關係,畢竟社會是一個整體,哪一個環節出了問題,其他環節肯定會受到不同程度的影響,這是必然的。

你比如說,我就發現,朋友圈的微商多了起來。有些人生意做得不錯,紅紅火火,有些就比較慘淡了。

如果說本職工作蒸蒸日上的話,恐怕分到別處的精力就不會很多。拿我來說吧,之所以能夠保持高頻(母豬似的)的創作,很大一部分原因就是因為公司的業務停滯不前,頻臨倒閉——這是一件挺讓我不爽的事,沒辦法,為了生活,只能把更多的經歷投入到寫作上面。不過這沒什麼,我也不需要遮遮掩掩的,編程相關的寫作前程挺好的。

我這麼說,就是告訴小夥伴們一個事實,無論是男性還是女性,大家都不容易,迷茫是現階段最正常不過的狀態了。迷茫並不一定是壞事,對吧?它意味着你對自身感到不滿,對現狀感到不滿,直白點說,就是你想進步了。那麼一旦你提前做好了心理建設,從迷茫的困境中走出來,你可能就脫穎而出了。

就我的程序生涯來說,女性程序員確實沒有男性多,但這並不意味着女生就不適合學編程。有些女生心思細膩,寫出來的代碼就會更簡潔,bug 更少。

另外,我可以肯定一點的是,掉不掉頭髮真的與編程無關,我就覺得自己發量挺充足的——之前朋友圈爆過照,很多小夥伴都調侃我不是程序員,因為髮型不太配,超出了他們的預期。我上高中那會還有不少白頭髮,這些年完全沒有了——有點返老回童的感覺。

如果真的是掉頭髮,我想編程不是嫌疑犯,過大的壓力、糟糕的精神狀態才是。無論從事什麼職業,總要樂觀一點,心態放輕鬆一點。

我就認識這樣一個女程序員,看她曬的電腦桌,我的口水就要流出來了,非常優雅和高貴,真真自愧不如啊。她平常還會在朋友圈曬一些自製的咖啡(帶拉花的那種),總之,給人的感覺就是挺會生活的,偶爾寒暄幾句,也可以感受到她愜意的生活品質。

女生嘛,不能說把時間全部花費在容貌的搭理上,但至少應該花一些心思,一個美美的自己,一個美美的心情,學編程也許就會變得更輕鬆自如了。

至於對象嘛,女生完全不用發愁,愁的應該是男生才對啊。真需要的話,我在公眾號喊一聲,我怕踴躍報名的男生能把妹子的微信加爆,搞不好微信都要封號處理。

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!

以設計的實用美學觀點,規劃出舒適、美觀的視覺畫面,有效提昇使用者的心理期待,營造出輕鬆、愉悅的網站瀏覽體驗。

我在想,以後有機會,遇到特殊的日子,比如說 520,小夥伴們就可以提前私信我,“二哥,明天我要報名相親,這是我的工資單,這是我的照騙,你看能不能匹配一下。”沒準我就幫大家脫單了,也算是網絡一線牽了。

至於編程難不難,反正我覺得不容易,這恐怕是程序員高薪最重要的一個原因了。至於編程累不累,我想和學生做作業是一個道理,不會的學生永遠都累。

再來說說工作,女性在職場上,因為生理方面的因素,會受到一些歧視。但我總覺得這是社會的偏見,女性要學會自尊自愛,男性要學會尊重客觀,性別上的差異不應該成為職場上的阻礙。

在人類漫長的發展進程中,有一位女性值得所有人銘記,那就是居里夫人,首位獲得諾貝爾獎(物理和化學,兩次)的女性。在我看來,她最偉大的貢獻不是這些,而是她改變了世界對女性的看法:誰說女性就不適合搞化學、搞物理?

下面是我對女生學編程的一些建議,有些也適合男生了。

誠實點說吧,我對編程算不上感興趣。但當我確信編程能夠養家糊口后,我就願意為編程傾其所有。這麼多年過去了,我深刻地認識到,我只能幹好編程這一件事,如果說還有一件的話,就是寫編程相關的文章。

所以,如果編程是你的第一興趣,那太完美了!但如果不是,也可以像我一樣,漸漸地愛上它,盡自己最大的努力做好它。

既然選擇了遠方,便只顧風雨兼程。真的,別怕。至於這個過程辛不辛苦,有所謂嗎?談戀愛辛苦嗎?我有時候想想,談戀愛真的比編程還要辛苦,但也有甜蜜和幸福啊。

至於生理期,實在是說不下去了,我能說的就是盡量早睡早起,該鍛煉鍛煉。

至於聰不聰明,喜不喜歡編程,有沒有意志力,心能不能靜下來,環境糟不糟糕,和性別完全沒有關係,不管是女生還是男生,如果把借口放在最前面,恐怕編程學不好,其他任何一個行業都學不好。

我是有這麼一個打算,假如今年高考結束后,我妹妹找不到她的興趣愛好,我就建議她學編程去,最次最次,還有我這個哥哥可以教教她,對吧?

反正如果有女生遇到編程問題諮詢我的話,我肯定第一時間衝過去。(逃逃逃

如果覺得文章對你有點幫助,請微信搜索「 沉默王二 」第一時間閱讀。回復關鍵字「簡歷」更有一份技術大佬整理的優質簡歷模板,助你一臂之力。

本文已收錄 GitHub,傳送門~ ,裏面更有大廠面試完整考點,歡迎 Star。

我是沉默王二,一枚有顏值卻靠才華苟且的程序員。關注即可提升學習效率,別忘了三連啊,點贊、收藏、留言,我不挑,嘻嘻

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

網站的第一印象網頁設計,決定了客戶是否繼續瀏覽的意願。台北網動廣告製作的RWD網頁設計,採用精簡與質感的CSS語法,提升企業的專業形象與簡約舒適的瀏覽體驗,讓瀏覽者第一眼就愛上它。

自定義值類型一定不要忘了重寫Equals,否則性能和空間雙雙堪憂_台中搬家公司

※推薦台中搬家公司優質服務,可到府估價

台中搬鋼琴,台中金庫搬運,中部廢棄物處理,南投縣搬家公司,好幫手搬家,西屯區搬家

一:背景

1. 講故事

曾今在項目中發現有同事自定義結構體的時候,居然沒有重寫Equals方法,比如下面這段代碼:


    static void Main(string[] args)
    {
        var list = Enumerable.Range(0, 1000).Select(m => new Point(m, m)).ToList();
        var item = list.FirstOrDefault(m => m.Equals(new Point(int.MaxValue, int.MaxValue)));
        Console.ReadLine();
    }

    public struct Point
    {
        public int x;
        public int y;

        public Point(int x, int y)
        {
            this.x = x;
            this.y = y;
        }
    }

這代碼貌似也沒啥什麼問題,好像大家平時也是這麼寫,沒關係,有沒有問題,跑一下再用windbg看一下。


0:000> !dumpheap -stat
Statistics:
              MT    Count    TotalSize Class Name
00007ff8826fba20       10        16592 ConsoleApp6.Point[]
00007ff8e0055e70        6        35448 System.Object[]
00007ff8826f5b50     2000        48000 ConsoleApp6.Point

0:000> !dumpheap  -mt 00007ff8826f5b50
         Address               MT     Size
0000020d00006fe0 00007ff8826f5b50       24     

0:000> !do 0000020d00006fe0
Name:        ConsoleApp6.Point
Fields:
              MT    Field   Offset                 Type VT     Attr            Value Name
00007ff8e00585a0  4000001        8         System.Int32  1 instance                0 x
00007ff8e00585a0  4000002        c         System.Int32  1 instance                0 y

從上面的輸出不知道你看出問題了沒有? 託管堆上居然有2000個Point,而且還可以用 !do 打出來,說明這些都是引用類型。。。這些引用類型哪裡來的? 看代碼應該是 equals 比較時產生的,一次比較就有2個point被裝箱放到託管堆上,這下慘了,,,而且大家應該知道引用對象本身還有(8+8) byte 自帶開銷,這在時間和空間上都是巨大的浪費呀。。。

二: 探究默認的Equals實現

1. 尋找ValueType的Equals實現

為什麼會這樣呢? 我們知道equals是繼承自ValueType的,所以把 ValueType 翻出來看看便知:


    public abstract class ValueType
    {
        public override bool Equals(object obj)
        {
            if (CanCompareBits(this)) {return FastEqualsCheck(this, obj);}
            FieldInfo[] fields = runtimeType.GetFields(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
            for (int i = 0; i < fields.Length; i++)
            {
                object obj2 = ((RtFieldInfo)fields[i]).UnsafeGetValue(this);
                object obj3 = ((RtFieldInfo)fields[i]).UnsafeGetValue(obj);
                ...
            }
            return true;
        }
    }

從上面代碼中可以看出有如下三點信息:

<1> 通用的 equals 方法接收object類型,參數裝箱一次。

<2> CanCompareBits,FastEqualsCheck 都是採用object類型,this也需要裝箱一次。

<3> 有兩種比較方式,要麼採用 FastEqualsCheck 比較,要麼採用反射比較,我去…. 反射就玩大了。

綜合來看確實沒毛病, equals 會把比較的兩個對象都進行裝箱。

2. 改進方案

問題找到了,解決起來就簡單了,不走這個通用的 equals 不就行啦,我自定義一個equals方法,然後跑一下代碼。

        public bool Equals(Point other)
        {
            return this.x == other.x && this.y == other.y;
        }

可以看到走了我的自定義的Equals,。 貌似問題就這樣簡單粗暴的解決了,真開心,打臉時刻開始。。。

三:真的解決問題了嗎?

1. 遇到問題

很多時候我們會定義各種泛型類,在泛型操作中通常會涉及到T之間的 equals, 比如下面我設計的一段代碼,為了方便,我把Point的默認Equals也重寫一下。


    class Program
    {
        static void Main(string[] args)
        {

            var p1 = new Point(1, 1);
            var p2 = new Point(1, 1);

            TProxy<Point> proxy = new TProxy<Point>() { Instance = p1 };

            Console.WriteLine($"p1==p2 {proxy.IsEquals(p2)}");
            Console.ReadLine();
        }
    }

    public struct Point
    {
        public int x;
        public int y;

        public Point(int x, int y)
        {
            this.x = x;
            this.y = y;
        }

        public override bool Equals(object obj)
        {
            Console.WriteLine("我是通用的Equals");
            return base.Equals(obj);
        }

        public bool Equals(Point other)
        {
            Console.WriteLine("我是自定義的Equals");
            return this.x == other.x && this.y == other.y;
        }
    }

    public class TProxy<T>
    {
        public T Instance { get; set; }

        public bool IsEquals(T obj)
        {
            var b = Instance.Equals(obj);

            return b;
        }
    }

從輸出結果看,還是走了通用的equals方法,這就尷尬了,為什麼會這樣呢?

2. 從FCL的值類型實現上尋找問題

有時候苦思冥想找不出問題,突然靈光一現,FCL中不也有一些自定義值類型嗎? 比如 int,long,decimal,何不看它們是怎麼實現的,尋找尋找靈感, 對吧。。。說干就干,把 int32 源碼翻出來。

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

擁有後台管理系統的網站,將擁有強大的資料管理與更新功能,幫助您隨時新增網站的內容並節省網站開發的成本。


public struct Int32 : IComparable, IFormattable, IConvertible, IComparable<int>, IEquatable<int>
{
 	public override bool Equals(object obj)
	{
		if (!(obj is int))
		{
			return false;
		}
		return this == (int)obj;
	}

    public bool Equals(int obj)
	{
		return this == obj;
	}
}

我去,還是int,貌似我的Point就比int少了接口實現,問題應該就出在這裏,而且最後一個泛型接口IEquatable<int>特別顯眼,看下定義:


public interface IEquatable<T>
{
	bool Equals(T other);
}

這個泛型接口也僅僅只有一個equals方法,不過靈感告訴我,貌似。。。也許。。。應該。。。就是這個泛型的equals是用來解決泛型情況下的equals比較。

3. 補上 IEquatable 接口

有了這個思路,我也跟FCL學,讓Point實現 IEquatable<T>接口,然後在TProxy<T>代理類中約束下必須實現IEquatable<T>,修改代碼如下:


    public struct Point : IEquatable<Point> { ...  }
    public class TProxy<T> where T: IEquatable<T> { ... }

然後將程序跑起來,如下圖:

,雖然是成功了,但有一個地方讓我不是很舒服,就是上面的第二行代碼,在 TProxy<T> 處約束了T,因為我翻看List的實現也沒做這樣的泛型約束呀,可能有點強迫症吧,貼一下代碼給大家看看。


public class List<T> : IList<T>, ICollection<T>, IEnumerable<T>, IEnumerable, IList, ICollection, IReadOnlyList<T>, IReadOnlyCollection<T>
{}

然後我繼續模仿List,把 TProxy<T> 上的T約束去掉,結果就出問題了,又回到了 通用Equals

4. 從List的Contains源碼中尋找答案

好奇心再次驅使我尋找List中是如何做到的,為了能看到List中原生方法,修改代碼如下,從Contains方法入手。


    var list = Enumerable.Range(0, 1000).Select(m => new Point(m, m)).ToList();
    var item = list.Contains(new Point(int.MaxValue, int.MaxValue));

---------- outout ---------------
我是自定義的Equals
我是自定義的Equals
我是自定義的Equals
...

我也是太好奇了,翻看下 Contains 的源碼,簡化后實現如下。


public bool Contains(T item)
{
    ...
	EqualityComparer<T> @default = EqualityComparer<T>.Default;
	for (int j = 0; j < _size; j++)
	{
		if (@default.Equals(_items[j], item)) {return true;}
	}
	return false;
}

原來List是在進行 equals比較之前,自己構建了一個泛型比較器EqualityComparer<T>,,然後繼續追一下代碼。

因為這裏的runtimeType實現了IEquatable<T>接口,所以代碼返回了一個泛型比較器:GenericEqualityComparer<T>,然後我們繼續查看這個泛型比較器是咋樣的。

從圖中可以看到最終還是對T進行了IEquatable<T>約束,不過這裏給提取出來了,還是挺厲害的,然後我也學的模仿一下:

可以看到也走了我的自定義實現,兩種方式大家都可以用哈。

最後要注意一點的是,當你重寫了Equals之後,編譯器會告知你最好也把 GetHashCode重寫一下,只是建議,如果看不慣這個提示,盡可能自定義GetHashCode方法讓hashcode分佈的均勻一點。

四:總結

一定要實現自定義值類型的 Equals方法,人家的 Equals方法是用來兜底的,一次比較兩次裝箱,對你的程序可是雙殺哦。

如您有更多問題與我互動,掃描下方進來吧~

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

台中搬家公司教你幾個打包小技巧,輕鬆整理裝箱!

還在煩惱搬家費用要多少哪?台中大展搬家線上試算搬家費用,從此不再擔心「物品怎麼計費」、「多少車才能裝完」

SpringBoot獲取配置文件,就這麼簡單。_網頁設計公司

網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

透過資料庫的網站架設建置,建立公司的形象或購物系統,並提供最人性化的使用介面,讓使用者能即時接收到相關的資訊

在講SpringBoot 獲取配置文件之前我們需要對SpringBoot 的項目有一個整體的了解,如何創建SpringBoot 項目,項目結構等等知識點,我在這裏就不一一講述了,沒有學過的小夥伴可以自己在網上找一些資料進行學習,很簡單的。

下面讓我們開始今天的內容講解吧。

一、SpringBoot 全局配置文件的加載順序

在SpringBoot 當中,全局配置文件有兩種不同的格式,一個是我們常見的properties, 一種是yml.
這兩種格式的文件其實也沒什麼太大的區別,使用的時候按照個人的習慣來就行,下面我們用的是yml文件。
首先,當我們創建SpringBoot 的項目時,默認在resources目錄下創建一個application.properties文件,這時我們可以在這個文件當中對項目進行配置即可。但是在SpringBoot 中application.properties可以存放在以下幾個位置:

file:./config/ 項目根目錄下的config文件夾下

file:./ 項目根目錄下

classpath:/config/ 類路徑下的config文件夾下

classpath:/ 類路徑下

文件的加載順序:即根目錄下的config目錄下,然後是 根目錄下,然後是classpath路徑下的config目錄下,最後是classpath路徑下。

優先級由高到低,高優先級的配置會覆蓋低優先級的配置。

假如:根目錄下的config目錄下定義端口為8084, 根目錄下定義端口為8083 ,classpath路徑下的config目錄定義端口為8082,classpath路徑下定義端口為8081,最後啟動,啟動的端口為8084 ,高優先級會覆蓋低優先級。

注意: 並不是高優先級的被加載了,低優先級的就不會再加載,實際上是SpringBoot會從這四個位置全部加載主配置文件,並且還能產生互相配置的效果。

除此外,我們還可以通過spring.config.location來改變默認的配置文件位置。

項目打包好以後,我們可以使用命令行參數的形式,啟動項目的時候來指定配置文件的新位置;指定默認加載的這些配置文件共同起作用形成互補配置。

在 G盤目錄下,創建一個application.yml文件,定義端口為8085

打包項目,啟動命令行:java -jar spring-boot-config-0.0.1-SNAPSHOT.jar --spring.config.location=G:/application.yml 回車運行。

外部配置加載順序

  1. 命令行參數

    eg: java -jar spring-boot-config-0.0.1-SNAPSHOT.jar --server.port=8087

—- 由jar包外向jar包內進行尋找:

​ 2、 優先加載帶profile

jar包外部的 application-{profile}.properties或application.yml(帶spring.profile)配置文件

將打好的jar包放在一個目錄下,然後再該文件夾下新建一個名為application.yml的文件,其中指定

port為8082 ,訪問路徑為/boot ,然後命令行直接啟動項目。java -jar spring-boot-config-0.0.1-SNAPSHOT.jar --application.yml

在講配置文件之前,我先說一說yml文件配置信息書寫格式

基本數據類型(8種基本數據類型)以k: v 形式書寫即可

比如我在一個實體類(Person)中定義一個 屬性(age),類型是 int ,在yml文件中的書寫格式如下

person:
  age: 20

實體類對象(Person),Map ,k:v 在下一行來寫對象的屬性和值的關係,注意縮進

person:
  userName: zhans
  age: 20
#另一種行內寫法  
person: {userName: zhans.age: 20}  

List ,數組的書寫,注意 – 後有空格

pets:
 - cat
 - dog
 - pig
#另一種行內寫法  
pets:{cat,dog,pi}

二、SpringBoot 獲取配置文件的方式

**@Value **

創建配置類,由於篇幅問題這裏省略了 setter、getter 方法,但是實際開發中這個是必須的,否則無法成功注入,@Component表示把當前配置類注入到Spring容器當中。

@Component
public class PersonConfig {

    @Value("${person.userName}")
    private String userName;
    @Value("${person.age}")
    private int age;
    
}

在主配置文件中添加如下配置(application.yml)

server:
  port: 8081
person:
  userName: hello
  age: 20

測試類:

@RestController
public class PersonController {
    @Autowired
    private Person person;

    @RequestMapping(value = "/get",method = RequestMethod.GET)
    public String findPerson(){
        return "姓名:"+person.getUserName()+"年齡:"+person.getAge();
    }
}

啟動項目,訪問地址http://localhost:8080/get運行結果:

姓名:hello年齡:20

所以,我們就可以通過 @Value(${key})的方式獲取全局配置文件中的指定配置項。

@ConfigurationProperties

如果我們需要取 許多個配置項,通過 @Value 的方式去配置項需要一個一個去取,顯然有點麻煩。所以我們可以使用 @ConfigurationProperties

標有 @ConfigurationProperties的類的所有屬性和配置文件中相關的配置項進行綁定,綁定之後我們就可以通過這個類去訪問全局配置文件中的屬性值。

代碼實例如下:

  1. 在主配置文件中添加如下配置
user:
  username: admin
  password: 123456
  map: {k1: v1,k2: v2}
  list:
    - cat
    - dog
  person:
    userName: hello
    age: 20
  objects:
    - aaa
    - bbb
    - ccc
  1. 創建配置類,由於篇幅問題這裏省略了 setter、getter ,toString 方法,但是實際開發中這個是必須的,否則無法成功注入。
@Component
@ConfigurationProperties(prefix = "user")
public class User {
    private String  username;
    private String password;
    private Map<String,String> map;
    private Person person;
    private List<String> list;
    private Object[] objects;

}

這裏 @ConfigurationProperties 有一個 prefix參數,主要是用來指定該配置項在配置文件中的前綴,即user。

※想知道最厲害的網頁設計公司嚨底家"!

RWD(響應式網頁設計)是透過瀏覽器的解析度來判斷要給使用者看到的樣貌

測試類

@RestController
public class PersonController {
    @Autowired
    private Person person;
    @RequestMapping(value = "/findUser",method = RequestMethod.GET)
    public String findUser(){
        return user.toString();
    }
}

我們在頁面訪問 http://localhost:8081/findUser,頁面就显示我們在yml文件中配置的信息了。

User{username='admin', password='123456', map={k1=v1, k2=v2}, person=com.zfcoding.config.Person@93471e6, list=[cat, dog], objects=[aaa, bbb, ccc]}

以上的兩種方式有什麼區別呢?

@ConfigurationProperties @Value
功能 批量注入配置文件的屬性 一個一個指定
鬆散綁定 支持 不支持
JSR303數據校驗 支持 不支持
複雜數據封裝 支持 不支持(Map)

鬆散綁定,username 可以用user-name 表示,來獲取值

JSR303數據校驗,如果用@Value獲取全局配置文件的屬性,使用@Validated文件格式校驗是不起作用的。

@PropertySource 註解加載指定的配置文件。

​ @PropertySource (value = “ ”) 指明加載類路徑下的哪個配置文件來注入值

創建配置類,由於篇幅問題這裏省略了 setter、getter ,toString 方法,但是實際開發中這個是必須的,否則無法成功注入。

@Component
@PropertySource( "classpath:student.properties")
@ConfigurationProperties(prefix = "student")
public class Student {

    private String sname;
}

在student.properties文件中添加如下配置

student.sname=admin

測試類

@SpringBootTest
class SpringbootExampleApplicationTests {
    @Autowired
    private DogConfig dogConfig;
    @Test
    void contextLoads() {
       System.out.println("注入的對象:"+dogConfig.getName());
    }

}

運行結果:

Student{sname='admin'}

@ImportResource 導入Spring 配置文件

@ImportResource 註解用來導入 Spring 的配置文件,如果Spring配置文件 “bean.xml”,從而讓配置文件裏面的內容生效,通常可以把@ImportResource標註在@SpringBootApplication的啟動類上即可。

舉例說明:比如我們把PersonService注入到Spring容器當中,通過Spring配置文件的方式操作,代碼示例如下:

public class PersonService {
}
@ImportResource("classpath:bean.xml")
@SpringBootApplication
public class SpringBootConfigApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringBootConfigApplication.class, args);
    }

}

Spring的配置文件:bean.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
 <bean id="personService" class="com.zfcoding.service.PersonService"></bean>
</beans>

測試的案例:

@SpringBootTest
class SpringBootConfigApplicationTests {
    @Autowired
    private PersonService personSerivcer;
    @Test
    void contextLoads() {
        System.out.println("注入的對象:"+personSerivcer);
    }
}

運行的結果:

注入的對象:com.zfcoding.service.PersonService@5b84f14

這Spring 中bean的配置實現,但是SpringBoot 推薦我們使用註解開發,那Springboot 中註解是如何實現bean 的注入呢?

@Configuration:指明當前類是配置類,就是代替上面說到的spring的配置文件.

@Bean 將方法返回值添加到容器當中,容器中這個組件默認的id 是方法名

@Configuration
public class MyConfig {
    @Bean
    public PersonSerivcer personSerivcer(){
        return new PersonSerivcer();
    }
}

這樣就可以就可以通過註解實現代替Spring 中的配置文件了。

三、SpringBoot 的Profile

我們這裏就以yml文件為例

第一種是我在 主配置文件編寫的時候,文件名可以是 application-{profile}.yml(application-dev.yml, application-prod.yml) ,默認使用 文件application.yml 的配置

1、如果我們想要使用的application-dev.yml 全局配置文件,在application.yml 指定即可。

配置實例:

在application.yml 配置文件中添加如下配置

spring:
  profiles:
    active: dev

在application-dev.ym 配置文件中添加如下配置l

server:
  port: 8080
#應用訪問的項目路徑
  servlet:
    context-path: /boot
person:
   username: 佔山

2、yml支持多文檔快方式

那麼,在application-dev.ym 配置文件中添加如下配置l

spring:
  profiles:
    active: prod
---
server:
  port: 8080
  servlet:
    context-path: /zf
spring:
  profiles: dev
---
person:
  userName: 啊哈
server:
  port: 8081
  servlet:
    context-path: /boot
spring:
  profiles: prod

3、Program arguments

   在Program arguments中配置參數

–spring.profiles.active=dev

4、虛擬機的方式

在VM options下使用命令:-Dspring.profiles.active=prod

四、小結

實際開發中我們如果如果我們需要取 許多個配置項,就使用@ConfigurationProperties註解,如果只是注入一個屬性就使用@Value,

@PropertySource 註解加載指定的配置文件,@ImportResource 導入Spring 配置文件(這裏可以使用註解來替代)。

後記

由於本人能力有限,若文章有錯誤的地方,請大家指出,一起交流學習。今天就和大家講到這裏,喜歡我的小夥伴們,動動你的小手點個關注唄。

歡迎大家關注我的公眾號:阿福聊編程,長期更新Java各種技術文章。

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

當全世界的人們隨著網路時代而改變向上時您還停留在『網站美醜不重要』的舊有思維嗎?機會是留給努力改變現況的人們,別再浪費一分一秒可以接觸商機的寶貴時間!

關於電動車安全,騰勢工程師是如何做的_潭子電動車

※Google地圖已可更新顯示潭子電動車充電站設置地點!!

日本、大陸,發現這些先進的國家已經早就讓電動車優先上路,而且先進國家空氣品質相當好,電動車節能減碳可以減少空污

騰勢德方高級工程師Eric Hartmann進行主題分享電磁兼容安全針對普通民眾對於電動汽車電磁輻射的疑慮,兩位技術專家也詳細地作出了回應。黃偉表示,電磁輻射的概念非常廣泛,從無線電到核輻射,甚至是可見光也屬於輻射的範圍。

2016年10月12日,廣州 —— 今日,第二節“知勢·DENZA騰勢技術公開課”在騰勢廣州南方騰悅經銷商店內順利開講,DENZA騰勢研發部高壓电子電器部門經理黃偉、高級工程師Eric Hartmann與到場的媒體朋友就新能源汽車電池與電磁安全的話題進行了深入交流與探討。

騰勢是中國第一款正向開發的純電動汽車,也是戴姆勒在德國本土之外第一輛從零開始進行研發的產品。在本節公開課上,DENZA騰勢研發部高壓电子電器部門經理黃偉與德方高級工程師Eric Hartmann共同講解了騰勢純電動汽車在電池安全、高壓系統以及電磁安全等方面的內容,並且現場展示了相關的試驗。

第二節“知勢·DENZA騰勢技術公開課”活動現場

動力電池安全

電力是電動汽車的主要動力,電池是也是其最核心的部件之一,電池安全性牽涉到電動汽車的整體安全。新上市的騰勢400更是通過升級生產工藝,提升電池能量密度,容量由47.5kWh升級至62kWh,同時保持了電池體積不變。隨着電池技術的不斷進步,電動汽車也越來越獲得更多人的認可,同時電池安全的問題也引起了消費者的重視。

據騰勢研發部高壓电子電器部門經理黃偉介紹,騰勢純電動汽車的電池安全分為電池單體安全、電池模組安全以及電池系統安全三個部分,均採用最高的安全標準進行設計和製造,保證電池的化學安全和結構安全。與部分電動汽車不同,騰勢的電池單體專門為電動汽車研發。為最大程度保證安全性,騰勢每一個電池單體要進行單獨測試,然後再進行整個系統的測試,並且是不帶保護框架進行的“裸測”。在測試過程中,騰勢電池還要通過多種電池針刺、擠壓甚至火燒等測試項目,保證在事故引發的短路等情況下電池包的安全性。另外,騰勢研發團隊為電池提供保護的鋁合金框架結構經過了幾輪優化,包括碰撞、仿真、結構設計等。在戴姆勒仿真、碰撞安全尖端技術的支持下,騰勢按照C-NCAp的碰撞標準,得到了五星成績。

在滿足安全需求的同時,來自比亞迪的領先電池技術可以讓電池為騰勢提供長達400公里的超長續航里程,完全滿足車主日常使用的需求。騰勢電池的設計壽命與整車壽命相同,可以進行至少2000個滿充滿放的電循環仍剩餘超過80%的電池容量。按照一次充滿電可以跑400公里算,騰勢電池的正常壽命至少可完成長達80萬公里的駕駛。“直至跑到車子報廢了,騰勢的電池壽命都無需擔心,”黃偉表示。

騰勢研發部高壓电子電器部門經理黃偉進行主題分享

高壓系統安全

騰勢德方高級工程師Eric Hartmann認為,除電池安全設計外,電動汽車採用的高壓部件如電池、電機、電控、電動壓縮機等零部件的安全設計也是電動汽車安全設計的重要組成部分,其安全設計也是影響電動車使用安全的重要因素。因此,騰勢純電動汽車高壓設計完全採用戴姆勒高壓安全設計要求,戴姆勒高壓安全設計要求在梅賽德斯-奔馳、保時捷、寶馬、奧迪、大眾5家汽車企業認可一致的基礎上設立。騰勢純電動汽車在設計之初就通過結構布局避免使用者觸碰到高壓系統。同時,在極端情況下騰勢高壓系統具有被動及主動的安全措施,

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

有別於一般網頁架設公司,除了模組化的架站軟體,我們的營業主軸還包含:資料庫程式開發、網站建置、網頁設計、電子商務專案開發、系統整合、APP設計建置、專業網路行銷。

通過監測、隔離和快速放電等功能確保使用者的安全。

騰勢德方高級工程師Eric Hartmann進行主題分享

電磁兼容安全

針對普通民眾對於電動汽車電磁輻射的疑慮,兩位技術專家也詳細地作出了回應。黃偉表示,電磁輻射的概念非常廣泛,從無線電到核輻射,甚至是可見光也屬於輻射的範圍。電磁環境曝露對生物體的影響,決定於電磁源的波長(頻率)及其能量的大小,只有超過人體補償機制的生物作用才會對健康造成有害影響。騰勢在早期開發設計時便利用自身中德雙方資源優勢,參考了中國、歐洲、美國以及戴姆勒集團關於電磁安全的相關標準,用心打造安全可靠的騰勢純電動汽車。

黃工介紹,我國在電磁標準方面要求較為嚴格,甚至部分要求高於國際標註。而作為致力於打造中國最好的電動汽車的品牌,騰勢也多次與權威組織機構及行業媒體進行測試,共同推動電動汽車電磁兼容安全領域的發展。根據數據显示,包括手機、充電器、電腦等电子產品均帶有磁場,約在4μT左右。而根據此前專業測試結果,騰勢車內磁場水平最高處僅為0.39μT,不足大部分家電及电子產品的十分之一,僅為安全上限的4%。騰勢純電動汽車內電磁水平遠低於常見電器,並低於歐盟標準及中國國家標準限值。

騰勢工程師進行現場交流

騰勢兩位資深的工程師關於電池、高壓系統以及電磁輻射的分享引起了媒體的極高關注與興趣,並就騰勢電主被動安全、涉水安全、電池安全的行業現狀等現場觀眾感興趣的問題進行了交流。騰勢從零開始正向研發的背景以及強大的安全技術可以從設計之初就杜絕了大多數情況下的安全威脅。

與騰勢工程師交流后一位媒體表示,“以前看車的時候,從來都沒有發現原來高壓系統這麼重要”,並對騰勢融合了戴姆勒及比亞迪的至臻安全品質表示稱讚。騰勢德方高級工程師Eric Hartmann也對國內媒體的專業性印象深刻,“許多人的問題非常專業,的確有許多消費者目前並不注意電動汽車關於電安全的性能,我們也希望通過這一系列的公開課讓更多人注意到這個問題,也讓整個產業更加規範、健康發展,盡量避免任何悲劇的發生。”作為完美結合了戴姆勒的百年造車底蘊、尖端安全技術和比亞迪在電池技術方面的領先優勢的純電動汽車,騰勢純電動汽車致力於打造中國最好的電動汽車。DENZA騰勢還將繼續舉行一系列的技術公開課活動,加強品牌與媒體之間的品牌與技術交流,攜手共同推動新能源汽車的發展和進步。

深圳比亞迪戴姆勒新技術有限公司簡介

深圳比亞迪戴姆勒新技術有限公司(以下簡稱合資公司)是由中國新能源汽車領軍企業比亞迪與世界豪華車和商用車製造巨頭德國戴姆勒共同設立的合資企業,於2010年正式成立,總部設在深圳。合資公司於2012年,推出了中國首個專註於新能源汽車的品牌DENZA騰勢,專註於電動汽車技術的研發,發展環保節能、安全舒適、品質卓越的新能源汽車,致力於成為中國最成功的新能源汽車製造商,推動新能源汽車的發展和進步。2014年4月北京車展期間,DENZA騰勢首款純電動汽車全球首發,並於9月在上海率先上市,隨後分別在北京、深圳、杭州、天津等城市上市。2016年8月,騰勢全車系進行了按照行業最高標準的三電系統(電池、電機、電控)全面升級,並正式推出性能及配置大幅提升的榮耀版,正式開啟騰勢純電動汽車400公里時代。欲了解更多信息,敬請登陸:www.denza.com本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

※超省錢租車方案

商務出差、學生出遊、旅遊渡假、臨時用車!GO 神州租賃有限公司!合法經營、合法連鎖、合法租賃小客車!

車上一顆螺絲的精密製作過程_包裝設計

南投搬家公司費用需注意的眉眉角角,別等搬了再說!

上新台中搬家公司提供您一套專業有效率且人性化的辦公室搬遷、公司行號搬家及工廠遷廠的搬家服務

看紅牛這個非常贊的視頻,記錄一顆螺絲從設計、到生產、最終投入使用的全部過程一一記錄下來。製造一個F1螺絲需要3名工程師工作12小時。這顆代號為RB12-FS-00663-02的螺絲,用於RB12賽車的前懸挂部分。之所以要拍這個視頻,就是想要告訴大家,F1賽車到底要做到多精密。

首先讓我們先介紹一下這顆螺絲的使用者,世界一級方程式賽車。

世界一級方程式錦標賽,簡稱F1。可能很多朋友對這項全球最昂貴的賽事並沒有十分了解,那先簡單介紹一下F1賽車。

以視頻中的紅牛車隊來說,一年的賽事預算2億英鎊,一台紅牛RB賽車造價就高達3000萬英鎊左右(包含研發等費用),換算成人民幣約等於2.4億,隨隨便便就秒掉十台八檯布加迪。搭載的1.6T V6超級發動機,馬力可以達到1000匹。全車重量大約600KG。目前賽道最快速度是舒馬赫在法拉利時期創下的375km/h。

F1賽車代表着汽車工業的最高科技,空氣動力學、ERS動能回收、超級發動機等等,且不說F1有多燒錢。除去錢以外,就是最頂尖的技術還有最嚴謹的態度,

※產品缺大量曝光嗎?你需要的是一流包裝設計!

窩窩觸角包含自媒體、自有平台及其他國家營銷業務等,多角化經營並具有國際觀的永續理念。

F1賽車的每一個零件都是車隊親自製造,就連一顆螺絲釘也不例外。往往這些最細微的部分就是勝負的關鍵,就連一顆螺絲釘也可以決定全年的錢有沒有白花。

看紅牛這個非常贊的視頻,記錄一顆螺絲從設計、到生產、最終投入使用的全部過程一一記錄下來。

製造一個F1螺絲需要3名工程師工作12小時。這顆代號為RB12-FS-00663-02的螺絲,用於RB12賽車的前懸挂部分。之所以要拍這個視頻,就是想要告訴大家,F1賽車到底要做到多精密。平時只看到賽車在比賽,完全沒有機會發現幕後是如何工作的。

連一個小小的零件都要如此複雜,每過一道程序就要反覆檢驗,精確到每一個螺紋齒。先別說能不能統計一台F1賽車有多少個零件組成,光一個引擎就有大約5000個零件。從設計、建模到生產製造。需要多少心思在上面。

不知道比賽中車手不爭氣撞壞了賽車的時候,幕後的工作人員想不想讓他好好爽爽。漢密爾頓在一次嚴重的撞車事故中,衝出賽道的那一刻,他自己說了當時的想法:“oh no,要修車了”。不擔心自己受傷,反而擔心要修車,這也是醉了。

本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

網動廣告出品的網頁設計,採用精簡與質感的CSS語法,提升企業的專業形象與簡約舒適的瀏覽體驗,讓瀏覽者第一眼就愛上她。

途觀終結者再現!這款歐系潮流SUV空間大還動力猛?_台中搬家

台中搬家遵守搬運三大原則,讓您的家具不再被破壞!

台中搬家公司推薦超過30年經驗,首選台中大展搬家

8英寸的中控屏也是全系標配,支持Carplay、MirrorLink等主流配置,一些導航多媒體設置也可以在上面進行,很方便實用,發動機啟停、定速巡航、方向盤換擋都是標配,另外還提供多種選裝包,180°可視泊車輔助、正、副駕駛員座椅加熱、Nappa真皮座椅+自主緊急制動系統等非常豐富。

外觀設計方面延續了海外全新3008的造型,長寬高為4510*1850*1662(帶行李架),前臉採用了家族式最新設計,點陣式的進氣格柵造型很另類,橫向的銀色兩條和縱向的黑色線條相互交錯,立體感十足,獠牙狀的大燈不管是造型還是科技感都非常吸引人的眼球。

側面中間斷開的腰線非常獨特,看起來很和諧,後方犹如七巧板拼接而成的隱藏式C柱設計給人非常時尚的感覺,非常帶感,有點溜背的感覺,從後門開始上揚的腰線配合犀利的獅爪尾燈,回頭率甚高。

內飾給人很科幻、未來的感覺,各種大膽誇張的線條和按鍵使駕駛員有種在開飛船的感覺,平底式的運動方向盤,造型獨特的蛇形电子換擋桿,

台中搬家公司費用怎麼算?

擁有20年純熟搬遷經驗,提供免費估價且流程透明更是5星評價的搬家公司

除了最低配車型外,其他車型都裝備了12.3英寸的全液晶儀錶盤,可以自定義設置模式,非常炫酷。

8英寸的中控屏也是全系標配,支持Carplay、MirrorLink等主流配置,一些導航多媒體設置也可以在上面進行,很方便實用,發動機啟停、定速巡航、方向盤換擋都是標配,另外還提供多種選裝包,180°可視泊車輔助、正、副駕駛員座椅加熱、Nappa真皮座椅+自主緊急制動系統等非常豐富。

2730mm的軸距帶來令人滿意的空間,沒什麼明顯短板,後排出風口為全系標配,而全景天窗除了最低配外都有配備,儲物空間也較為豐富,461升的後備箱容積也不容小覷,此外,標緻4008還支持手機無線充電,細節上考慮很周到。

動力系統方面,將提供1.6T(最大功率167馬力)和1.8T(最大功率204馬力)兩種動力選擇,搭配6擋手自一體變速器,懸挂方面採用前麥弗遜式獨立懸架,后可變形橫樑式懸挂,豪華版上還配備Grip Control多路況適應系統,多種駕駛模式可供選擇。本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

台中搬家遵守搬運三大原則,讓您的家具不再被破壞!

台中搬家公司推薦超過30年經驗,首選台中大展搬家