




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
BOS物流管理系統(tǒng)第9天權(quán)限系統(tǒng)設(shè)計(jì)今天內(nèi)容安排:1、權(quán)限控制幾種方式URL級別權(quán)限控制(粗粒度權(quán)限控制)方法級別權(quán)限控制(細(xì)粒度權(quán)限控制)頁面中顯示的權(quán)限控制,使用自定義標(biāo)簽2、權(quán)限系統(tǒng)的數(shù)據(jù)表設(shè)計(jì)3、ApacheShiro框架運(yùn)行原理4、shiro系統(tǒng)集成(采用Spring整合shiro方式集成)5、自定義ShiroRealm,實(shí)現(xiàn)認(rèn)證功能(基于數(shù)據(jù)庫完成)權(quán)限系統(tǒng)的數(shù)據(jù)表如何設(shè)計(jì)面試重點(diǎn)?。?!表設(shè)計(jì)主要幾個(gè)實(shí)體:用戶、角色、權(quán)限用戶user:訪問系統(tǒng)的人權(quán)限function:系統(tǒng)某個(gè)功能允許訪問,對應(yīng)的權(quán)限(例如:取派員查詢權(quán)限、區(qū)域?qū)霗?quán)限…)角色role:角色是權(quán)限的一個(gè)集合,方便用戶授權(quán)惰一個(gè)用戶職對應(yīng)多個(gè)如角色,一腔種角色可懲以授予多個(gè)別用戶==裹=多對角多愈一個(gè)角色制包含多個(gè)歸權(quán)限,一霜個(gè)權(quán)限可搶以屬于多沫個(gè)角色=紛==多對慎多米設(shè)計(jì)角色表轎、權(quán)限表央都具有i央d(編號旋生成)、竄name出(名稱下中文)、棚code(封關(guān)鍵字編押程使用英屈文)、脈descr賄iptio測n(描述居)械喘權(quán)限表為什榆么要這么設(shè)既計(jì)?姑目的為了實(shí)癥現(xiàn)系統(tǒng)動流態(tài)菜單,沿添加催菜單的路徑威、艱是否需要生持成菜單偷、么菜單優(yōu)先級壁基(保證菜單感顯示順序)越、哈父權(quán)限編側(cè)號爪(生成菜亡單父節(jié)點(diǎn)割)傅任務(wù)二:背創(chuàng)建權(quán)限數(shù)秒據(jù)表、生成題實(shí)體類櫻根據(jù)PDM咐導(dǎo)出SQ鏟L語句投auth_做funct儲ion權(quán)窯限表況auth_老role談角色表杜role_卸funct瀉ion角風(fēng)色權(quán)限關(guān)系陷表惕user_南role悄用戶角色關(guān)廳系表侍生成實(shí)體類媽,使用hi登berna春te3-m摘aven-剃plugi汗n插件階修改sr徐c/mai驅(qū)n/res券ource飾s/rev覆eng.x賭ml兇替換之前亡domai濁n.use之r下的Us范er實(shí)體類收綿實(shí)體類和表薄設(shè)計(jì)完成!波任務(wù)三:隨Apach傷eShi桌ro權(quán)限碼控制需Shir界o簡介儉權(quán)限控制企喜業(yè)都是采用乘什么技術(shù)開刷發(fā)的?盼自定義權(quán)限練控制實(shí)現(xiàn)據(jù)(URL蛋級別Fi蘿lter實(shí)澆現(xiàn)、方法倍級別自定權(quán)義注解S旁pring鎮(zhèn)AOP抽反射實(shí)現(xiàn),猾頁面顯示襪自定義標(biāo)添簽實(shí)現(xiàn))竿Sprin抓gSec傳urity壞安全框架理偏拒缺點(diǎn):使用孩復(fù)雜、S堅(jiān)pring喇官方項(xiàng)目燒使用Ap片ache落Shiro泊進(jìn)行權(quán)限羞控制戶Apach么eShi侄ro比較晚新,很多欄企業(yè)了解到輪shiro被因?yàn)閟張pring讓side返項(xiàng)目挎什么是Ap限ache籌Shiro遙?對巡Apach琴eShi徹ro可以毫不依賴任何燦技術(shù)使用,餡通常在企撇業(yè)中和Sp根ring左結(jié)合使用德在項(xiàng)目導(dǎo)儀入shir揚(yáng)o滔歌Authe儀ntica償tion:美認(rèn)證壯用艙戶登錄嘴廣Autho電rizat王ion:枯授權(quán)-桐役權(quán)限管理懶項(xiàng)目導(dǎo)入s緒hiro賄,使用ma價(jià)ven坐標(biāo)早方式導(dǎo)入割俊<shir標(biāo)o.ver咽sion>余獅</shi鼠ro.ve書rsion慰>喪便兵宮<depe汗ndenc濱y>再缸各前<grou潛pId>o跑rg.ap杰ache.卸shiro收</gro電upId>永購獅介<arti倡factI妹d>shi頸ro-al猶l</ar燭tifac愈tId>掉綠指玻<vers猴ion>$進(jìn){shir疾o.ver皮sion}浸</ver艦sion>腿亮猴</dep品enden肝cy>腔Shir漲o原理簡站介蒜學(xué)習(xí)shi愁ro,只區(qū)需要看規(guī)范假就ok了顫“楚Apach嚷e_Shi膏ro_re品feren似ce(中文藥版).pd賞f短”核心;史限四大核心內(nèi)鄙容:認(rèn)證因、授權(quán)、會沖話管理、預(yù)加密號S灑hiro蹄是如何進(jìn)行臣權(quán)限控制的魂?柔耍應(yīng)用代碼拳絹調(diào)用Sub阿ject轎(shir饞o的Sub罩ject宜就代表當(dāng)前笛登陸用戶)道控制權(quán)限轟涼Sub閉ject色在shir柿o框架內(nèi)部潤調(diào)用S捆hiro常Secur坊ityMa僻nager逼安全管理霧器敢--安全猾管理器調(diào)用注Real禁m(程序鋒和安全數(shù)據(jù)波連接器)營通過以上分鋤析,結(jié)論:顆吳程序員使用塌shiro來只需要午1、應(yīng)用栗程序代碼術(shù)調(diào)用Sub陶ject禍2、定版義編寫Re低alm連接渡安全數(shù)據(jù)嗚Shir怕o整合B種OS項(xiàng)目唉,進(jìn)行UR蹄L權(quán)限控制高穴S希hiro雖懶然可以單獨(dú)濁使用,但是袍企業(yè)現(xiàn)在使傅用最多還是劣spri棵ng+運(yùn)shiro粱方式!冶紛參考零“炸shiro乓安全框架芳--最好的炕中文配置文尼檔.pdf吃”鎮(zhèn)第一步:各URL級榆別權(quán)限控制破,配置F綱ilter文(出web.x俊ml眼)并<!--雪權(quán)限控制倍Filte講r-->擠萄<!--撇shiro柴secu漲rity走filte材r-->萄殼<filt躍er>守置艘<!--泄這里的f兼ilter紫-name都要和s適pring瞞的ap除plica冒tionC乓ontex雅t-shi情ro.xm唱l里的技o(jì)rg.a災(zāi)pache它.shir寫o.spr斑ing.w義eb.Sh巷iroFi樸lterF腥actor咬yBean鑄咱逝礙沖的bea俱nnam駱e相同捉-->餐淚餅<filt央er-na迅me>sh延iroSe性curit厘yFilt該er</f趕ilter驅(qū)-name筐>鮮鑰觀<filt趙er-cl伶ass>o吹rg.sp管ringf占ramew乒ork.w溜eb.fi煙lter.貢Deleg種ating劃Filte珍rProx項(xiàng)y</fi碰lter-輕class閣>哈漆芬<init癥-para姓m>晚盤國覆<para蠢m(xù)-nam厭e>tar距getFi爬lterL范ifecy覺cle</仗param火-name速>科香豈誓<para濕m-val忠ue>tr使ue</p見aram-問value老>桌翻悠</ini肉t-par拒am>析辨</fil校ter>采攝<filt念er-ma潔pping社>目竟恰<filt意er-na精me>sh帥iroSe藝curit訪yFilt肚er</f愁ilter霉-name風(fēng)>用苗藝<url-夜patte況rn>/*計(jì)</url痰-patt妖ern>司腫</fil透ter-m服appin遣g>繪絞畏這個(gè)Fil誕ter是穗spri喝ng提供龜,Dele拆gatio農(nóng)nFilt以erPro浸xy是代鄉(xiāng)理Filt誘er摔(會自動找壁和<fi秘lter-揀name>結(jié)同名的學(xué)<bean耳>對象悠)珠第二步:旨在appl臘icati彈onCon文text.敘xml配溜置shir引o的Fi蜘lter菠<bean宏>灣應(yīng)配置shi引roFil蝦ter后,由可以應(yīng)用籌10種過濾岔規(guī)則雞濕配置shi賭roFil脊ter其障實(shí)是一個(gè)過劍濾器鏈,含毯有10個(gè)F憐ilter妻域常用規(guī)則馳:啞皺anon斯匿名訪問結(jié)(不需要登虧錄)延緊authc冊認(rèn)證訪問攜需要登錄懲答磨perms彎權(quán)限控制肝訪問需要掘權(quán)限煩衰roles球角色控制巡訪問需要搬角色栽user坐用戶控制訪炭問需要特應(yīng)定用戶才能暢訪問汽<!--硬shiro惑權(quán)限控制頭-->總啟<bean早id="害shiro娘Secur排ityFi箱lter"徐clas皂s="or沸g(shù).apa癥che.s輩hiro.透sprin番g.web卡.Shir絮oFilt收erFac功toryB亂ean">勢壘陷<!--舌shiro桌的核心安椅全接口-仔->傳持屆<prop看erty仔name=礦"secu稅rityM扒anage少r"re和f="se末curit膽yMana滅ger"銜/>府云佳<!--谷要求登錄時(shí)載的鏈接-示-如>懷姜聚<prop害erty律name=梳"logi估nUrl"稍valu弦e="/l缺ogin.稍jsp"黨/>片捆悶<!--舉登陸成功后鳥要跳轉(zhuǎn)的連宿接-->太偶醬<prop侍erty塘name=銜"succ眾essUr桂l"va喪lue="帆/inde勇x.jsp蘇"/>近圾膜<!--活權(quán)限不足,忌跳轉(zhuǎn)路徑傻-->躁葵宵<prop尺erty控name=百"unau摩thori齊zedUr教l"va雞lue="使/unau散thori繞zed.j涼sp"/源>項(xiàng)芬但<!--噸shiro皆連接約束至配置--芹>支狼惑<!--賠URL控制催規(guī)則路瞎徑=規(guī)則堂-->燈南嘩<prop遮erty膚name=迎"filt籃erCha猴inDef屠initi護(hù)ons">栗級炕浪<valu裙e>巧份宵牙演/logi村n.jsp環(huán)=an眾on施振遙賊漏/vali欄datec午ode.j感sp=掉anon肢叮想欣淹/css/年**=文anon罷炎閑控淡/js/*末*=a夜non晃嫂鹽捐惠/imag皮es/**更=an猴on路警管辰出/user塵_logi萌n.act以ion=制anon伯床棍趴暮/page糊_base竊_staf絮f.act村ion=雞perm撫s["st歪aff"]嗚表示恩訪問該資源拖必須要有s債taff權(quán)班限可覽吸薯您/page基_base堆_regi廚on.ac蕩tion通=rol灌es["b規(guī)ase"]艇表示猴訪問該資源把必須要有b找ase角色臥虹謹(jǐn)揉都/**=士auth由c祥//必扣須要登陸可督以訪問資源格荒槳阻</val鴿ue>雀云肆</pro酬perty嫁>員計(jì)</bea兆n>耐歲<!--料安全管理器傾-->煎布<bean爽id="住secur逗ityMa閥nager落"林街委class迎="org籃.apac礦he.sh嗽iro.w繭eb.mg離t.Def何aultW盡ebSec矛urity果Manag介er">鄙筒慎<!--堤在安全管理掃器,應(yīng)該注動入Rea搞lm連接森安全數(shù)據(jù)犯-->填型</bea勿n>命url級別顫認(rèn)證管理完記成!完成登陸克油編寫率Realm桿實(shí)現(xiàn)用戶木身份帥認(rèn)證(登錄腰)談傳統(tǒng)登錄邏雅輯:淚隆用戶輸入用扒戶名和密碼咬杠傳遞數(shù)據(jù)警庫查詢-妖返哲回user劣麻判斷如果剪user不捷為null臣,登錄成蘋功,將u飲ser加入礦sessi刪on--梨如困果use嗚r為nul膚l,調(diào)回套登錄頁面榮采用shi舉ro完成棟認(rèn)證代碼實(shí)剃現(xiàn)!邁S員hiro實(shí)漠現(xiàn)登錄邏輯買用戶輸入用吹戶名和密碼奪乎應(yīng)用程序佩調(diào)用Sub作ject的蛇login最方法--搖--Su州bject誓調(diào)用Se船curit滲yMana壯ger的方淘法籮-Se茶curit歉yMana乓ger調(diào)涼用Real奉m的認(rèn)證方辯法音-認(rèn)證方華法根據(jù)登錄啄用戶名查詢曉密碼,返饑回用戶的密流碼--跡--Se粘curit逆yMana江ger比蹦較用戶輸入雷的密碼和真魄實(shí)密碼是否申一致確第一步:渡修改Us筍erAct祝ion的悼login答方法跌第二步:躺需要為Se識curit濫yMana劣ger提眉供舅Realm致詠根據(jù)令愁牌對象數(shù)據(jù)再方法數(shù)據(jù)枕庫...鴿通常自定義簽Realm雨繼承A飯uthor岔izing扛Realm慣(提供析認(rèn)證、授權(quán)走功能)抽BOSRe敵alm實(shí)解現(xiàn)認(rèn)證方法俗惹BOSRe龜alme支xtend秩sAut塊horiz窩ingRe播alm成實(shí)現(xiàn)業(yè)務(wù)方值法:怖appli膝catio鵝nCont澇ext.x阻ml注冊層bosr現(xiàn)ealm巖將re賴alm給父安全管理河器蜻如果用戶名識不存在完org.a飾pache示.shir槽o.aut卵hc.Un免known雖Accou夢ntExc荒eptio暮n情如果密碼錯家誤晚org.a疑pache北.shir決o.aut旅hc.In掠corre山ctCre閱denti期alsEx笑cepti趕on稻國際化信息纏配置相關(guān)秀的錯誤信息晉用戶退出仍功能漢1:in抹dex.j筐sp跟頁面添死加退出連接右垃2:act暢ion認(rèn)證完成!畫自定義R治eam實(shí)鎖現(xiàn)用戶授權(quán)課授權(quán)流程說今明義準(zhǔn)備測試布數(shù)據(jù)巾appli爛catio掏nCont深ext.x秘ml級添加角色和逮權(quán)限配置亂在t_us覆er、au和th_ro杠le、au紡th_fu捉nctio掛n、rol淡e_fun霜ction強(qiáng)、user圣_role插無張表療插入一些測喉試數(shù)據(jù)組t_use緩r插入憐兩個(gè)用戶體tom耍rose斃auth_慨funct巷ion表餃auth_監(jiān)role態(tài)表橡role_榜funct才ion表證user_勾role監(jiān)1號用戶析tom打具有基礎(chǔ)勻設(shè)置ba典secr批ud角色窩2號用戶物rose恭具有使業(yè)務(wù)受理作取派模塊c戲rud角仇色頸導(dǎo)出sq號lta詞bles.傲sql犬下發(fā)!!!闖實(shí)現(xiàn)Rea昌lm授權(quán)刺代碼降Realm辛代碼壽超級管理員企realm旦實(shí)現(xiàn)旬非超級管理端員!褲Servi蚊ce代碼肢RoleS晶ervic甘e暖Funct處ionSe庫rvice管DAO代擔(dān)碼鍋?zhàn)?堡已經(jīng)完成愿!謎shir省o睬注解催實(shí)現(xiàn)方法級紀(jì)別的權(quán)限控勞制赤方法級別權(quán)森限控制原攏理乒自定義注解顆尼Sprin梯gAOP特代理遮反射獲取注遮解信息視第一步:晃配置app督licat朗ionCo過ntext煤.xml融絕<!--開避啟注解的權(quán)棍限控制陸-->晝姜<!--竄sprin傳gbea辯n對象后熊處理器疑-->膚狐<bean值id="茶lifec聾ycleB進(jìn)eanPo舉stPro卡cesso題r"硬胳漂class朱="org雄.apac友he.sh轟iro.s蜜pring舟.Life合cycle萌BeanP汗ostPr摘ocess嗽or"/>設(shè)鉤<!--失切面自動代株理-->竄肥<bean災(zāi)黨class狐="org順.spri壩ngfra思mewor分k.aop繼.fram階ework斑.auto飾proxy塘.Defa乒ultAd團(tuán)visor叼AutoP抹roxyC款reato勵r"踩懷垃depen秧ds-on供="lif丹ecycl亞eBean留PostP虧roces綠sor"/京>蘆何<!--壇切面--扛>吊眉<bean慨般蛛class盡="org矩.apac設(shè)he.sh快iro.s憐pring柳.secu討rity.出inter港cepto桐r.Aut退horiz紛ation及Attri客buteS主ource致Advis傳or">扔膜儲<pro誕perty繁name閱="sec珍urity盞Manag濕er"r派ef="s梨ecuri返tyMan病ager"賊/>惕修</bea晶n>事寨第二步:識在需要控制氏權(quán)限目標(biāo)方榮法上,使用茫shiro采的注解琴@Req霸uires摧Roles舌徹需要角色突@Requ銀iresP罷ermis樹sions已需要權(quán)限臟寨例一:A奶ction混對象方法級齊別的個(gè)控制股例如添加分苦區(qū)/取派員疫操作錯誤:肺java.旬lang.房NoSuc墊hMeth鷹odExc凈eptio橫n歐:$Pr潔oxy11沈7.pag萍eQuer屬y()扯原因:S黎pring顛代理優(yōu)先義對接口代理陷Acti匪on接口蠟只有ex彼ecute挪方法,沒有招page棗Query盈方法累解決:配纖置app斷l(xiāng)icat永ionCo牽ntext番.xml迷對目標(biāo)類代貢理測試錯誤2:暖Cause籮dby:項(xiàng)冰java.私lang.膠Class賽CastE才xcept慶ion瞧:jav披a.lan駛g.Cla僅ssca捎nnot癥beca圖stto風(fēng)java珠.lang艙.refl膨ect.P郵arame荒teriz永edTyp刺e武原因:平參數(shù)泛型序癢列化問題度解決:明修改Bas逮eActi嘗on構(gòu)造目器腥挖對代理類的爪父類型面(拒Staff懸Actio稠n腐<T>)朽獲取參數(shù)御化泛型厘問題閱3室:愈actio椅n注入的歌業(yè)務(wù)層接口鄭實(shí)例質(zhì)null指雞針莫java.米lang.灘NullP濁ointe撤rExce司ption傘駁Servi慎ce無法餃注入碎解決方案1謀:駝配置s蠟truts液2文件德strut掛s.obj輕ectFa籌ctory造這個(gè)屬性用戚于說明St禮ruts2座的對象池創(chuàng)搜建工廠,S愚truts公2也有自己束的對象池,雀就像Spr恨ing那樣國,在配置文士件中你可以賊引用對象池傲中的對象,叨你可以借助染于Spri徐ng中的對暗象池,當(dāng)想致要得到Sp租ring中墊的對象池時(shí)振,申明st素ruts.縱objec住tFact塵ory為S腐pring役的對象池構(gòu)較建工廠。當(dāng)甜指定str省uts.o峽bject療Facto降ry為sp窮ring時(shí)堡,stru眨ts2框架墾就會把be壓an轉(zhuǎn)發(fā)給寬sprin滔g來創(chuàng)建,跳裝配,注入點(diǎn)。但是be賺an創(chuàng)建完沒成之后,還惱是由str間uts容器潛來管理其生曾命周期。漫在stru穩(wěn)ts.xm兵l中的代碼示如下:<c沒onsta練ntna溪me="s昂truts雕.obje凍ctFac此tory"中valu珠e="sp免ring"片/>截strut休s.obj嚇ectFa給ctory靠.spri零ng.au買toWir爹e是用sp使ring插以件通過覆蓋搶(over咐ride)夕Strut敲s2的O樸bject畝Facto艇ry來增強(qiáng)界核心框架對餡象的創(chuàng)建。毯當(dāng)創(chuàng)建一個(gè)績對象的時(shí)候鏈,它會用S幅truts妄2配置文件征中的cla彩ss屬性去耐和Spri葵ng配置文帝件中的id身屬性進(jìn)行關(guān)桐聯(lián),尤如果能找到互則由Spr納ing創(chuàng)建宅,否則由S刊truts有2框架自身潛創(chuàng)建,然后爺由Spri圈ng來裝配急。嫌解決尖2督:采用譜sette看r斯方法注入,浙對喜業(yè)務(wù)層默對象設(shè)置名轟稱境不推薦!昌Actio救n添加違shiro娛注解完成雨!妻\蓬補(bǔ)充對于吼方法級別權(quán)柱限控制如嬌果登陸用戶運(yùn)沒有角色懼或者權(quán)限驚報(bào)500險(xiǎn)錯誤!止一般提供友模好頁面踩1:st順ruts2裝異常處理滾機(jī)制鋤strut名s.xml虎配置異姨常處理類罪型以及結(jié)果緩集滅2:配置檢全局結(jié)果集慎3:倚編寫錯誤頁歉面獲取異獻(xiàn)常信息萍唉源碼:倆獲取異常信和息標(biāo)簽如行下閑4:ap絨plica癥tionC略ontex珍t.xml婚盜2:we摧b.xml斜配置50愈0錯誤明配置具體異御常類型..版問題4:圣業(yè)務(wù)層添加翅權(quán)限注解剪注解無效!尺不行的!同但是沒有虹異常用賓戶沒有權(quán)限腿角色也可中以執(zhí)行該拆方法!殖也就是背shiro引注解無效江!塵appli津catio神nCont菠ext.x到ml配置遍事務(wù)管理器候面向?qū)崿F(xiàn)到類做代理顫S庸hiro柴URL級別憂控制和注解坦控制,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 贈房合同范本
- 工程資料合同范本
- 青島購房合同范本照片
- 裝修墻面合同范本
- 字畫代理銷售合同范本
- 合股車合同范本
- 二零二五年度飯店餐飲服務(wù)員短期勞務(wù)合同-服務(wù)員職業(yè)素養(yǎng)提升協(xié)議
- 2025年度新能源充電樁委托經(jīng)營合同
- 二零二五年度房產(chǎn)買賣定金合同樣本(含合同生效條件)
- 二零二五年度出租房屋裝修后租賃管理合同范本
- 鋼筋工程隱蔽檢查驗(yàn)收記錄表
- 區(qū)塊鏈技術(shù)應(yīng)用開發(fā)項(xiàng)目可行性分析報(bào)告
- 2022版10kV架空配電線路無人機(jī)自主巡檢作業(yè)導(dǎo)則
- 加強(qiáng)師德師風(fēng)建設(shè)學(xué)校師德師風(fēng)警示教育講座培訓(xùn)課件
- 豬飼料購銷合同書
- 約克中央空調(diào)冷水機(jī)組年度維保方案
- 新聞采訪與寫作課件第十九章融合報(bào)道
- 常用小學(xué)生詞語成語積累歸類大全
- 七種不同樣式的標(biāo)書密封條
- 全國水利工程監(jiān)理工程師培訓(xùn)教材質(zhì)量控制
- 中國傳統(tǒng)成語故事(英文版)
評論
0/150
提交評論