基于J2EE Struts框架的課程設(shè)計(jì)實(shí)訓(xùn)項(xiàng)目——BBS論壇系統(tǒng)——構(gòu)建控制層中實(shí)現(xiàn)頁面跳轉(zhuǎn)的 Action程序類
《基于J2EE Struts框架的課程設(shè)計(jì)實(shí)訓(xùn)項(xiàng)目——BBS論壇系統(tǒng)——構(gòu)建控制層中實(shí)現(xiàn)頁面跳轉(zhuǎn)的 Action程序類》由會員分享,可在線閱讀,更多相關(guān)《基于J2EE Struts框架的課程設(shè)計(jì)實(shí)訓(xùn)項(xiàng)目——BBS論壇系統(tǒng)——構(gòu)建控制層中實(shí)現(xiàn)頁面跳轉(zhuǎn)的 Action程序類(29頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、楊教授大學(xué)堂 精心創(chuàng)作的優(yōu)秀程序員 職業(yè)提升必讀系列資料 基于J2EE Struts框架的課程設(shè)計(jì)實(shí)訓(xùn)項(xiàng)目——《BBS論壇系統(tǒng)》——構(gòu)建控制層中實(shí)現(xiàn)頁面跳轉(zhuǎn)的 Action程序類 1.1.1 頁面跳轉(zhuǎn)的 Action程序類PageForwordAction 1、添加一個實(shí)現(xiàn)頁面跳轉(zhuǎn)的 Action類PageForwordAction (1)新建一個Action類 1) Path為/pageForwordAction 2) 基類:org.apache.struts.actions.DispatchAction 3) 類型:com.px1987.webbbs.action.Pag
2、eForwordAction
4) /WebBBS/WebRoot/WEB-INF/struts-config_pageForward.xml
(2)并在parameter中輸入action
(3)并為它添加各個 Forward目標(biāo)
(4)也就是下面的狀態(tài)
4、name="showIndexContent" path="goWebBBSIndex" />
5、
8、va.util.ArrayList; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apa
9、che.struts.action.ActionMapping; import org.apache.struts.actions.DispatchAction; import org.apache.struts.validator.DynaValidatorForm; import com.px1987.webbbs.constant.WebBankAllConstants; import com.px1987.webbbs.exception.WebBBSException; import com.px1987.webbbs.model.BBSInfoManageInterfac
10、e; import com.px1987.webbbs.model.BBSInfoVO; import com.px1987.webbbs.model.BBSTitleVO; import com.px1987.webbbs.model.UserInfoManageInterface; import com.px1987.webbbs.model.UserInfoVO; public class PageForwordAction extends DispatchAction { BBSInfoManageInterface bbsInfoManagerBean=null;
11、UserInfoManageInterface userInfoManageBean=null; public void setBbsInfoManagerBean(BBSInfoManageInterface bbsInfoManagerBean) { this.bbsInfoManagerBean = bbsInfoManagerBean; } public void setUserInfoManageBean(UserInfoManageInterface userInfoManageBean) { this.userInfoManageBean = userIn
12、foManageBean; } public PageForwordAction() { //本構(gòu)造方法是在利用 Spring IOC獲得目標(biāo)對象時被應(yīng)用 super(); } /* String bbsInfoManageBeanClassName=null; String userInfoManageBeanClassName=null; public PageForwordAction() throws WebBBSException{ //本構(gòu)造方法是在利用 可配置化的工廠時被應(yīng)用 super(); newUserAndBBS
13、ManageBean(); } public void newUserAndBBSManageBean() throws WebBBSException{ bbsInfoManageBeanClassName=ClassNameConfig. getProperty("bbsInfoManageImple.className"); bbsInfoManagerBean=BBSInfoManageFactory.newBBSInfoManageBean( bbsInfoManageBeanClassName); userInfoManageBeanClassNam
14、e= ClassNameConfig.getProperty("userInfoManageImple.className"); userInfoManageBean=UserInfoManageFactory. newUserInfoManageBean(userInfoManageBeanClassName); } */ public ActionForward indexShowPattern_BarMethod(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServle
15、tResponse response){ return mapping.findForward("showIndexContent_BarMethod"); } public ActionForward indexShowPattern_PlainMethod(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response){ return mapping.findForward("showIndexContent_PlainMethod");
16、 } public ActionForward indexLeftMenuBar(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response){ return mapping.findForward("showIndexLeftMenuBar"); } public ActionForward indexSwitchMenu(ActionMapping mapping, ActionForm form, HttpServletR
17、equest request, HttpServletResponse response){ return mapping.findForward("showIndexSwitchMenu"); } public ActionForward indexDefaultContent(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response){ return mapping.findForward("showIndexDefaultCo
18、ntent"); } public ActionForward showIndexContent(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response){ ArrayList titleInfoVOArrayList_10 = null; ArrayList allHothitsBBSInfoVOArrayList = null; int totalCounterOfTitleInfo; int totalCount
19、erOfTodayBBSInfo; int titleCounte=10; //只返回前10個分類元素對象 try{ // newUserAndBBSManageBean(); //創(chuàng)建用戶和BBS信息管理業(yè)務(wù)類的對象實(shí)例 titleInfoVOArrayList_10 = bbsInfoManagerBean.doGetBBSTitleInfo(titleCounte); } catch (WebBBSException e) { request.setAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.getMess
20、age()); return mapping.findForward("showWebAppError"); } //獲得總的分類數(shù)目 try{ totalCounterOfTitleInfo = bbsInfoManagerBean.doGetTotalBBSTitleInfoCounter(); } catch (WebBBSException e){ request.setAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.getMessage()); return mapping.findFo
21、rward("showWebAppError"); } int hitBBSCounte=10; //只返回前10個熱門的BBS信息 try{ allHothitsBBSInfoVOArrayList = bbsInfoManagerBean.doGetBBSInfoByHits(hitBBSCounte); } catch (WebBBSException e){ request.setAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.getMessage()); return mapping.f
22、indForward("showWebAppError"); } /* 下面的代碼是獲得今日帖數(shù)目 */ ArrayList newBBSInfoList = null; String keyText = ""; java.util.Date rightNow = new java.util.Date(); keyText = (1900 + rightNow.getYear()) + "-" + (rightNow.getMonth() + 1) + "-" + rightNow.g
23、etDate(); /* try{ // 此時在ArrayList中將包含有今天的新貼(BBSInfoVO類型)的對象集合 newBBSInfoList = bbsInfoManageImple.doGetTodayAllBBSInfo(); } catch (WebBBSException e){ request.setAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.getMessage()); oneRequestDispatcher=request.getRequestDispatcher("/
24、errorDeal/showWebAppError.jsp"); oneRequestDispatcher.forward(request, response); return; } totalCounterOfTodayBBSInfo = newBBSInfoList.size(); */ try { totalCounterOfTodayBBSInfo =bbsInfoManagerBean.doGetTodayAllBBSInfoCount(); } catch (WebBBSExcepti
25、on e){ request.setAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.getMessage()); return mapping.findForward("showWebAppError"); } int totalBBSInfoCounter = 0; try{ totalBBSInfoCounter = bbsInfoManagerBean.doGetTotalBBSInfoCounter(); } catch (WebBBSException e){
26、 request.setAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.getMessage()); return mapping.findForward("showWebAppError"); } int totalUserCounter = 0; try { totalUserCounter = userInfoManageBean.doGetTotalRegisterUserCounter(); } catch (WebBBSException e){ request.s
27、etAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.getMessage()); return mapping.findForward("showWebAppError"); } UserInfoVO oneMaxIDUserInfoVO = null; try{ oneMaxIDUserInfoVO = userInfoManageBean.doGetMaxIDUserInfo(); } catch (WebBBSException e){ request.setAttrib
28、ute("errorText", "出現(xiàn)如下的錯誤:" +e.getMessage()); return mapping.findForward("showWebAppError"); } request.setAttribute("oneMaxIDUserInfoVO", oneMaxIDUserInfoVO); request.setAttribute("totalUserCounter", new Integer(totalUserCounter).toString(
29、)); request.setAttribute("totalBBSInfoCounter", new Integer(totalBBSInfoCounter).toString()); request.setAttribute("titleInfoVOArrayList_10", titleInfoVOArrayList_10); request.setAttribute("totalCounterOfTitleInfo", new In
30、teger(totalCounterOfTitleInfo). toString()); request.setAttribute("totalCounterOfTodayBBSInfo", new Integer(totalCounterOfTodayBBSInfo). toString()); request.setAttribute("allHothitsBBSInfoVOArrayList", allHothitsBBSInfoVOArrayList); return mapping.f
31、indForward("showIndexContent"); } public ActionForward showRegisterForm(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response){ this.saveToken(request); //(1) return mapping.findForward("showRegisterForm"); } public ActionForward show
32、UserLogoutForDWR(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response){ HttpSession session=request.getSession(); session.removeAttribute("oneUserInfoVO"); session.invalidate(); return null; } public ActionForward showUserLogout(ActionM
33、apping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
HttpSession session=request.getSession();
session.removeAttribute("oneUserInfoVO");
// session.invalidate();
request.setAttribute("errorText","您已經(jīng)從本系統(tǒng)中在線退出,因此您將失除所有的權(quán)限。
如果您還需要做其它的行為,請重新
34、登錄!"); return mapping.findForward("showWebAppError"); } public ActionForward showUpdateUserInfo(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { String targetPage=null; HttpSession session=request.getSession(); //下面為跳轉(zhuǎn)到修改用戶的信
35、息的頁面中 Object oneUserInfoVOObject=session.getAttribute("oneUserInfoVO"); UserInfoVO oneUserInfoVO=(UserInfoVO)oneUserInfoVOObject; Integer type_User_Admin=oneUserInfoVO.getType_User_Admin(); switch(type_User_Admin.intValue()) { case 1: //轉(zhuǎn)到前臺用戶 targetPage="showUpdateUse
36、rInfo"; break; case 2: //轉(zhuǎn)到后臺管理員用戶 targetPage="showUpdateAdminUserInfo"; break; } return mapping.findForward(targetPage); } public ActionForward doShowOnLineUserInfo(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse re
37、sponse) { return mapping.findForward("showOnLineUserInfo"); } public ActionForward doGetUserPassWord(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { return mapping.findForward("doGetUserPassWord"); } public ActionForward goSendOrP
38、reView(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { HttpSession session = request.getSession(); UserInfoVO oneUserInfoVO=(UserInfoVO)session.getAttribute("oneUserInfoVO"); String userName=oneUserInfoVO.getUserName(); String userI
39、D=oneUserInfoVO.getId(); DynaValidatorForm pageForwordActionForm = (DynaValidatorForm) form; String bbsTitleID=(String)pageForwordActionForm.get("bbsTitleID"); String bbsTitleText=(String)pageForwordActionForm.get("bbsTitleText"); try{ /** 由于bbsTitleText參數(shù)是通過get方法傳遞來的,因此ActionServl
40、et無法進(jìn)行正確遞編碼轉(zhuǎn)換,需要手動轉(zhuǎn)換 */ bbsTitleText=new String(bbsTitleText.getBytes("ISO-8859-1"),"gb2312"); } catch (UnsupportedEncodingException e){ request.setAttribute("errorText", "在PageForwordAction類中showDigestBBSInfo方法出現(xiàn)如下的錯誤:" +e.getMessage()); return mapping.findForward("showWebApp
41、Error"); } request.setAttribute("userName",userName); request.setAttribute("userID",userID); request.setAttribute("bbsTitleID",bbsTitleID); request.setAttribute("bbsTitleText",bbsTitleText); return mapping.findForward("doSendBBSInfo"); } public ActionForward goReplyOrPreView(Ac
42、tionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { HttpSession session = request.getSession(); UserInfoVO oneUserInfoVO=(UserInfoVO)session.getAttribute("oneUserInfoVO"); String userName=oneUserInfoVO.getUserName(); String userID=oneUser
43、InfoVO.getId(); DynaValidatorForm pageForwordActionForm = (DynaValidatorForm) form; String bbsTitleID=(String)pageForwordActionForm.get("bbsTitleID"); String bbsTitleText=(String)pageForwordActionForm.get("bbsTitleText"); String bbsID=(String)pageForwordActionForm.get("bbsID"); Str
44、ing bbsTitle=(String)pageForwordActionForm.get("bbsTitle"); try{ /** 由于bbsTitleText參數(shù)是通過get方法傳遞來的,因此ActionServlet無法進(jìn)行正確遞編碼轉(zhuǎn)換,需要手動轉(zhuǎn)換 */ bbsTitleText=new String(bbsTitleText.getBytes("ISO-8859-1"),"gb2312"); } catch (UnsupportedEncodingException e){ request.setAttribute("errorTex
45、t", "在PageForwordAction類中showDigestBBSInfo方法出現(xiàn)如下的錯誤:" +e.getMessage()); return mapping.findForward("showWebAppError"); } request.setAttribute("userName",userName); request.setAttribute("userID",userID); request.setAttribute("bbsTitle",bbsTitle); request.setAttribute("bbsID",bbs
46、ID); request.setAttribute("bbsTitleID",bbsTitleID); request.setAttribute("bbsTitleText",bbsTitleText); return mapping.findForward("doReplyBBSInfo"); } public ActionForward doSystemManage(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response
47、) { return mapping.findForward("doSystemManage"); } public ActionForward doReplyBBSInfo(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response){ return mapping.findForward("doReplyBBSInfo"); } public ActionForward showAllClassInfo(ActionMap
48、ping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // newUserAndBBSManageBean(); //創(chuàng)建用戶和BBS信息管理業(yè)務(wù)類的對象實(shí)例 ArrayList allBBSTitleVOArrayList=null; try{ allBBSTitleVOArrayList=bbsInfoManagerBean.doGetBBSTitleInfo(); } catch(WebBBSException e)
49、{ request.setAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.getMessage()); return mapping.findForward("showWebAppError"); } request.setAttribute("allBBSTitleVOArrayList",allBBSTitleVOArrayList); return mapping.findForward("showAllBBSClassInfo"); } public ActionForward showAllHotBB
50、SInfo(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { ArrayList allBBSInfoVOList = null; int totalBBSInfoCounter, totalBBSInfoPageCounter; // newUserAndBBSManageBean(); //創(chuàng)建用戶和BBS信息管理業(yè)務(wù)類的對象實(shí)例 try{ //獲得總數(shù) int hotCounter=1;
51、 totalBBSInfoCounter = bbsInfoManagerBean. doGetTotalHotBBSInfoCounter(hotCounter); } catch (WebBBSException e) { request.setAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.getMessage()); return mapping.findForward("showWebAppError"); } if(totalBBSInfoCounter==0){ request.setA
52、ttribute("errorText", "很對不起!目前系統(tǒng)中還沒有產(chǎn)生熱門信息帖,我們會繼續(xù)努力的!"); return mapping.findForward("showWebAppError"); } int currentPage = 1; //當(dāng)前正在顯示的頁數(shù)目 int firstResult = (currentPage - 1) * WebBankAllConstants.hotBBSCounterPerPageDigit; //根據(jù)當(dāng)前的頁數(shù)計(jì)算出的開始的行號(從0 計(jì)數(shù)) totalBBSInfoPageCount
53、er = (totalBBSInfoCounter + WebBankAllConstants.hotBBSCounterPerPageDigit - 1) /WebBankAllConstants.hotBBSCounterPerPageDigit; int actualHotBBSCounterPerPageDigit= WebBankAllConstants.hotBBSCounterPerPageDigit; if (totalBBSInfoCounter < WebBankAllConstants.hotBBS
54、CounterPerPageDigit){ actualHotBBSCounterPerPageDigit = totalBBSInfoCounter; } try{ allBBSInfoVOList = bbsInfoManagerBean. doGetBBSInfoByHits(firstResult,actualHotBBSCounterPerPageDigit); } catch (WebBBSException e){ request.setAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.ge
55、tMessage()); return mapping.findForward("showWebAppError"); } request.setAttribute("allBBSInfoVOList", allBBSInfoVOList); request.setAttribute("totalBBSInfoPageCounter", new Integer(totalBBSInfoPageCounter).toString()); request.setAttribute("currentPage", new Integer(
56、currentPage).toString()); return mapping.findForward("showAllHotBBSInfo"); } public ActionForward showAllBBSInClass(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response){ ArrayList allBBSInfoVOList = null; int totalBBSInfoCounter, totalBBS
57、InfoPageCounter; /* * 本功能是通過get提交的請求,因此不能通過DynaValidatorForm獲得請求的參數(shù),而只能通過request */ String bbsTitleID=request.getParameter("bbsTitleID"); String bbsTitleText=request.getParameter("bbsTitleText"); try{ /** 由于bbsTitleText參數(shù)是通過get方法傳遞來的,因此ActionServlet無法進(jìn)行正確遞編碼轉(zhuǎn)換,需要手動轉(zhuǎn)換 */ bbsT
58、itleText=new String(bbsTitleText.getBytes("ISO-8859-1"),"gb2312"); } catch (UnsupportedEncodingException e) { request.setAttribute("errorText", "在PageForwordAction類中showAllBBSInClass方法出現(xiàn)如下的錯誤:" +e.getMessage()); return mapping.findForward("showWebAppError"); } // newUserAndBBS
59、ManageBean(); //創(chuàng)建用戶和BBS信息管理業(yè)務(wù)類的對象實(shí)例 try { //獲得總數(shù) totalBBSInfoCounter = bbsInfoManagerBean. doGetPageTotalBBSInfoCounterByTitleID(Integer.parseInt(bbsTitleID)); } catch (WebBBSException e){ request.setAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.getMessage()); return mappin
60、g.findForward("showWebAppError"); } int currentPage = 1; //當(dāng)前正在顯示的頁數(shù)目 //根據(jù)當(dāng)前的頁數(shù)計(jì)算出的開始的行號(從0 計(jì)數(shù)) int firstResult = (currentPage - 1) * WebBankAllConstants.objectCounterPerPageDigit; totalBBSInfoPageCounter = (totalBBSInfoCounter + WebBankAllConstants.objectCounte
61、rPerPageDigit - 1) /WebBankAllConstants.objectCounterPerPageDigit; int actualHotBBSCounterPerPageDigit= WebBankAllConstants.hotBBSCounterPerPageDigit; if (totalBBSInfoCounter < WebBankAllConstants.hotBBSCounterPerPageDigit){ actualHotBBSCounterPerPageDigit = totalBBSInfoCounter
62、; } try { allBBSInfoVOList = bbsInfoManagerBean. doGetPageBBSInfoByTitleID(Integer.parseInt(bbsTitleID), firstResult,actualHotBBSCounterPerPageDigit); } catch (WebBBSException e) { request.setAttribute("errorText", "出現(xiàn)如下的錯誤:" +e.getMessage()); return mappin
63、g.findForward("showWebAppError"); } // 下面的代碼是獲得該分類的完整信息(也包括版主信息) BBSTitleVO oneBBSTitleVO = null; try{ oneBBSTitleVO = bbsInfoManagerBean. doGetBBSTitleInfoByTitleID(Integer.parseInt(bbsTitleID)); } catch (WebBBSException e) { request.setAttribute("errorText", "出現(xiàn)如下的錯
64、誤:" +e.getMessage()); return mapping.findForward("showWebAppError"); } request.setAttribute("allBBSInfoVOList", allBBSInfoVOList); request.setAttribute("bbsTitleID", bbsTitleID); request.setAttribute("bbsTitleText", bbsTitleText); request.setAttribute("oneBBSTitleVO", oneBBST
65、itleVO); request.setAttribute("totalBBSInfoPageCounter", new Integer(totalBBSInfoPageCounter).toString()); request.setAttribute("currentPage", new Integer(currentPage).toString()); return mapping.findForward("showAllBBSInClass"); } public ActionForward showOneBBSInfo(ActionMapp
66、ing mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { BBSInfoVO oneBBSInfoVO = null; ArrayList allBBSReplyInfoListByOneBBS = null; DynaValidatorForm pageForwordActionForm = (DynaValidatorForm) form; String bbsID=(String)pageForwordActionForm.get("bbsID"); //獲得該BBS的ID號 //獲得該BBS所在的分類的標(biāo)題文字 String bbsTitleText=(String)pageForwordActionForm.get("bbsTitleText"); //獲得該BBS所在的分類的ID String bbsTitleID=(String)pageForwordActionForm.
- 溫馨提示:
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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識競賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案