




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、軟 件 學(xué) 院課程設(shè)計(jì)報(bào)告書課程名稱 JavaEE課程設(shè)計(jì) 設(shè)計(jì)題目 試卷分析報(bào)告產(chǎn)生系統(tǒng) 專業(yè)班級(jí) 學(xué) 號(hào) 姓 名 指導(dǎo)教師 2011 年 12 月目錄1設(shè)計(jì)時(shí)間12設(shè)計(jì)目的23設(shè)計(jì)任務(wù)2224需求分析3335概要設(shè)計(jì)4446詳細(xì)設(shè)計(jì)5567編碼與實(shí)現(xiàn)9數(shù)據(jù)庫實(shí)現(xiàn)91011127.5 DAO類的實(shí)現(xiàn)137.6 Servlet類的實(shí)現(xiàn)1822“”文件268運(yùn)行與測(cè)試289總結(jié)與展望31參考文獻(xiàn)32成績(jī)?cè)u(píng)定321 設(shè)計(jì)時(shí)間2011年12月16日-2011年12月25日2 設(shè)計(jì)目的JavaEE課程設(shè)計(jì)是對(duì)所學(xué)JavaEE與中間件課程的小結(jié),提高對(duì)所學(xué)知識(shí)綜合應(yīng)用能力,是集中實(shí)踐性環(huán)節(jié)之一。要求同學(xué)
2、們對(duì)課程中所學(xué)習(xí)到的知識(shí)綜合運(yùn)用,開發(fā)有一定規(guī)模的Java Web程序。3 設(shè)計(jì)任務(wù)3.1 必備功能說明:(1)功能描述:用戶以合法身份登錄系統(tǒng)后,才能進(jìn)行所有操作;用戶可以添加、查看和刪除學(xué)生成績(jī);用戶添加完所有學(xué)生的成績(jī)后,統(tǒng)計(jì)出<60分、60<=成績(jī)<75、75<=成績(jī)<90、90<=成績(jī)<=100這四個(gè)分?jǐn)?shù)段的學(xué)生人數(shù)。(2)添加學(xué)生成績(jī):學(xué)生添加成績(jī)信息(包括學(xué)號(hào)、姓名、成績(jī))(3)查看學(xué)生成績(jī)(4)刪除學(xué)生成績(jī)(5)統(tǒng)計(jì)各分?jǐn)?shù)段人數(shù):統(tǒng)計(jì)出每個(gè)分?jǐn)?shù)段的學(xué)生人數(shù)3.2 開發(fā)語言與開發(fā)環(huán)境:Windows 7,MyEclipse、SQL Ser
3、ver 2005 Express4 需求分析功能要求為:用戶可以添加、刪除、查看學(xué)生成績(jī),學(xué)生成績(jī)中包括學(xué)號(hào)、姓名、成績(jī)?nèi)?xiàng)信息。圖4-1為系統(tǒng)的數(shù)據(jù)流圖,4-2為進(jìn)一步分解后的數(shù)據(jù)流圖。圖 4-1 數(shù)據(jù)流圖圖 4-2 詳細(xì)數(shù)據(jù)流圖5 概要設(shè)計(jì)5.1 數(shù)據(jù)庫設(shè)計(jì)圖5-1為成績(jī)的E-R圖。成績(jī)表學(xué)號(hào)姓名成績(jī)圖5-1 E-R圖本程序使用的數(shù)據(jù)庫系統(tǒng)為SQL Server 2005,數(shù)據(jù)庫名稱為“mydb”,數(shù)據(jù)表名稱為“scores”,表結(jié)構(gòu)如表5-1所示。成績(jī)表(學(xué)號(hào),姓名,成績(jī)),主碼為學(xué)號(hào)。列名數(shù)據(jù)類型允許空主鍵備注idint否是學(xué)號(hào)namevarchar(50)否否姓名scoreint否否
4、成績(jī)表4-1 成績(jī)表詳細(xì)設(shè)計(jì)5.2 層次結(jié)構(gòu)圖圖 5-2 層次結(jié)構(gòu)圖6 詳細(xì)設(shè)計(jì)6.1 程序流程圖圖6-1為整個(gè)系統(tǒng)的程序流程圖。開始輸入用戶名和密碼判斷正誤顯示所有成績(jī)添加成績(jī)刪除成績(jī)成績(jī)分類顯示所有成績(jī)成績(jī)分類添加成績(jī)刪除成績(jī)結(jié)束YYYYYNNNNN圖 6-1 程序流程圖 模塊程序流程圖(1)圖6-2為登陸流程圖。圖 6-2 登陸程序流程圖開始輸入用戶名和密碼LoginServletUserService判斷正誤I結(jié)束YN開始ListAllScoresServletScoreDAO.getAllScores()訪問數(shù)據(jù)庫ResuleSet結(jié)束ResuleSet(2)圖6-3為查看所有成績(jī)流
5、程圖。圖 6-3 查看所有成績(jī)流程圖(3)圖6-4為查看添加成績(jī)流程圖。圖 6-4 添加成績(jī)流程圖開始AddScoreServletScoreDAO.addScore()訪問數(shù)據(jù)庫結(jié)束(4)圖6-5為查看刪除成績(jī)流程圖。圖 6-5 刪除成績(jī)流程圖(5)圖6-6為查看成績(jī)分類流程圖。圖 6-6 查看成績(jī)分類流程圖7 編碼與實(shí)現(xiàn) 數(shù)據(jù)庫的實(shí)現(xiàn)圖7-1為數(shù)據(jù)庫創(chuàng)建截圖,其中scores表為所創(chuàng)建的成績(jī)表。圖7-1 數(shù)據(jù)庫創(chuàng)建圖7-2為成績(jī)表的設(shè)計(jì)。圖7-2 成績(jī)表實(shí)現(xiàn)圖7-3為在成績(jī)表中插入數(shù)據(jù)的截圖。圖7-3 插入數(shù)據(jù)7.2 創(chuàng)建Java Web工程圖7-4 Java Web工程目錄結(jié)構(gòu)圖圖7-4
6、為Java Web工程student_score的截圖?!啊睘楹蛿?shù)據(jù)庫交互,進(jìn)行增、刪、改、查操作?!啊贝沓煽?jī)信息的實(shí)體類?!啊贝沓煽?jī)段信息的實(shí)體類?!啊贝碛脩粜畔⒌膶?shí)體類?!啊迸袛嘤脩舻顷懶畔⑹欠裾_的業(yè)務(wù)層?!癆”為接收頁面表單數(shù)據(jù)并增加成績(jī)信息的Servlet類,繼承“HttpServlet”?!啊睘閷?shù)據(jù)庫中成績(jī)信息分類的Servlet類,繼承“HttpServlet”?!啊睘榻邮枕撁姹韱螖?shù)據(jù)并刪除相應(yīng)成績(jī)信息的Servlet類,繼承“HttpServlet”。“”為列出數(shù)據(jù)庫中所有成績(jī)信息的Servlet類,繼承“HttpServlet”?!啊睘榻邮枕撁姹韱蔚顷懶畔⒉Ⅱ?yàn)證用戶信
7、息的Servlet類,繼承“HttpServlet”?!啊睘楂@得數(shù)據(jù)庫連接的工具類?!癝QL Server JDBC Driver”為與數(shù)據(jù)庫SQL Server 2005連接的驅(qū)動(dòng)包?!癢”為配置Servlet中<servlet>元素和<servlet-mapping>元素的XML文件。“”為增加學(xué)生成績(jī)的JSP頁面。“”為分類學(xué)生成績(jī)的JSP頁面。“”為刪除學(xué)生成績(jī)的JSP頁面。“”為主頁面?!啊睘榈顷戫撁妗!啊睘榈顷懯№撁?。“”為顯示所有學(xué)生成績(jī)的JSP頁面。7.3 工具類的實(shí)現(xiàn)工具類名為“DBConnection”,該類用于獲得數(shù)據(jù)庫的連接,它的實(shí)現(xiàn)代碼如下:
8、public class DBConnection public static Connection getConnection()final String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"final String url="jdbc:sqlserver:/localhost:1433;databasename=mydb"tryClass.forName(driverName);catch(ClassNotFoundException e)e.printStackTrace
9、();tryConnection con=DriverManager.getConnection(url, "sa", "sa");con.setAutoCommit(false);return con;catch(SQLException e)e.printStackTrace();return null;7.4 實(shí)體類的實(shí)現(xiàn)實(shí)體類有三類。(1)第一類的類名為“Score”,該類擁有代表成績(jī)信息的私有屬性以及各個(gè)屬性的set、get方法,它的實(shí)現(xiàn)代碼如下:public class Score private int id;private String
10、name;private int score;public int getId() return id;public void setId(int id) this.id = id;/省略其他的get、set方法(2)第二類的類名為“Segment”, 該類擁有代表成績(jī)分類信息的私有屬性以及各個(gè)屬性的set、get方法,它的實(shí)現(xiàn)代碼如下:public class Segment private String segment;private int num;public String getSegment() return segment;public void setSegment(Strin
11、g segment) this.segment = segment;/省略其他的get、set方法(3)第三類的類名為“User”,該類擁有代表用戶信息的私有屬性以及各個(gè)屬性的set、get方法,它的實(shí)現(xiàn)代碼如下:public class User private String username;private String userpsw;public String getUsername() return username;public void setUsername(String username) this.username = username;/省略其他的get、set方法7.5
12、 DAO類的實(shí)現(xiàn)DAO類的類名為“ScoreDao”,該類使用JDBC技術(shù)實(shí)現(xiàn),用于和數(shù)據(jù)庫交互,進(jìn)行相關(guān)的增、刪、查、統(tǒng)計(jì)操作,它的實(shí)現(xiàn)代碼如下:public class ScoreDAO /查詢所有成績(jī)信息public List getAllScores() Connection con = DBConnection.getConnection();String listSQL = "select * from scores"List list = new ArrayList();try PreparedStatement psmt = con.prepareState
13、ment(listSQL);ResultSet rs = psmt.executeQuery();while (rs.next() Score score = new Score();score.setId(rs.getInt("id");score.setName(rs.getString("name");score.setScore(rs.getInt("score");list.add(score);con mit();return list; catch (SQLException e) e.printStackTrace()
14、; finally if (con != null) try con.close(); catch (SQLException e) e.printStackTrace();return null; /添加成績(jī)信息public boolean addScore(Score score) throws Exception Connection con = DBConnection.getConnection();String listSQL = "insert into scores values(?,?,?)"PreparedStatement pstmt = con.pr
15、epareStatement(listSQL);try pstmt.setInt(1, score.getId();pstmt.setString(2, score.getName();pstmt.setInt(3, score.getScore();pstmt.executeUpdate();con mit();return true; catch (SQLException e) con.rollback();e.printStackTrace(); finally con.close();return false; /刪除成績(jī)信息public boolean deleteScore(Sc
16、ore score) throws Exception Connection con = DBConnection.getConnection();String listSQL = "delete from scores where id=?"PreparedStatement pstmt = con.prepareStatement(listSQL);try pstmt.setInt(1, score.getId();pstmt.executeUpdate();con mit();return true; catch (SQLException e) con.rollba
17、ck();e.printStackTrace(); finally con.close();return false; /成績(jī)分類查詢public List classifyAllScores()Connection con = DBConnection.getConnection();List list = new ArrayList();tryPreparedStatement psmt1 = con.prepareStatement("select * from scores where 0<=score and score<60");PreparedSt
18、atement psmt2 = con.prepareStatement("select * from scores where 60<=score and score<75");PreparedStatement psmt3 = con.prepareStatement("select * from scores where 75<=score and score<90");PreparedStatement psmt4 = con.prepareStatement("select * from scores wher
19、e 90<=score and score<=100");Segment segment1=new Segment();Segment segment2=new Segment();Segment segment3=new Segment();Segment segment4=new Segment();/第一段計(jì)數(shù)ResultSet rs = psmt1.executeQuery();int count=0;while(rs.next()count+;segment1.setSegment("0<=score<60");segment1.
20、setNum(count);/第二段計(jì)數(shù)rs = psmt2.executeQuery();count=0;while(rs.next()count+;segment2.setSegment("60<=score<75");segment2.setNum(count);/第三段計(jì)數(shù)rs = psmt3.executeQuery();count=0;while(rs.next()count+;segment3.setSegment("75<=score<90");segment3.setNum(count);/第四段計(jì)數(shù)rs = p
21、smt4.executeQuery();count=0;while(rs.next()count+;segment4.setSegment("90<=score<=100");segment4.setNum(count);list.add(segment1);list.add(segment2);list.add(segment3);list.add(segment4);con mit();return list;catch(SQLException e)e.printStackTrace();finally if (con != null) try con.c
22、lose(); catch (SQLException e) e.printStackTrace();return null;7.6 Servlet類的實(shí)現(xiàn)Servlet類共有5個(gè)類。(1)第一個(gè)Servlet類的類名為“AddScoreServlet”,該類繼承了“HttpServlet”,該類用于接收頁面表單中的數(shù)據(jù)并將數(shù)據(jù)傳遞到DAO類進(jìn)行添加成績(jī)操作,它的實(shí)現(xiàn)代碼如下:public class AddScoreServlet extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResp
23、onse response)throws ServletException, IOException doPost(request,response);public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException request.setCharacterEncoding("GBK");int id=0;if(!request.getParameter("id").equals("&q
24、uot;)&&request.getParameter("id")!=null)id=Integer.parseInt(request.getParameter("id");String name=(String)request.getParameter("name");int score=0;if(!request.getParameter("score").equals("")&&request.getParameter("score")!
25、=null)score=Integer.parseInt(request.getParameter("score");Score score1=new Score();score1.setId(id);score1.setName(name);score1.setScore(score);ScoreDAO scoreDAO=new ScoreDAO();tryscoreDAO.addScore(score1);catch(Exception e)e.printStackTrace();List list=scoreDAO.getAllScores();request.set
26、Attribute("allScores", list);request.getRequestDispatcher("/showAllScores.jsp").forward(request, response);(2)第二個(gè)Servlet類的類名為“ClassifyAllScoresServlet”,該類繼承了“HttpServlet”,用于DAO將成績(jī)分類信息傳遞給“”頁面。實(shí)現(xiàn)代碼如下:public class ClassifyAllScoresServlet extends HttpServlet public void doGet(HttpSe
27、rvletRequest request, HttpServletResponse response)throws ServletException, IOException ScoreDAO scoreDAO=new ScoreDAO();List list=scoreDAO.classifyAllScores();request.setAttribute("classifyAllScores", list);request.getRequestDispatcher("/classifyAllScores.jsp").forward(request,
28、response);public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException this.doGet(request, response);(3)第三個(gè)Servlet類的類名為“DeleteScoreServlet”,該類繼承了“HttpServlet”,用于將JSP頁面所要?jiǎng)h除的成績(jī)信息傳遞給DAO進(jìn)行刪除操作。實(shí)現(xiàn)代碼如下:public class DeleteScoreServlet extends HttpServlet
29、public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException doPost(request,response);public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException request.setCharacterEncoding("GBK");int
30、id = 0;if(!request.getParameter("id").equals("")&&request.getParameter("id")!=null)id=Integer.parseInt(request.getParameter("id");Score score=new Score();score.setId(id);ScoreDAO scoreDAO=new ScoreDAO();tryscoreDAO.deleteScore(score);catch(Exception e)
31、();List list=scoreDAO.getAllScores();request.setAttribute("allScores", list);request.getRequestDispatcher("/showAllScores.jsp").forward(request, response);(4)第四個(gè)Servlet類的類名為“ListAllScoresServlet”,該類繼承了“HttpServlet”,用于將DAO中所查詢出的所有成績(jī)信息傳遞給“showAllScores.jsp”頁面。該類實(shí)現(xiàn)代碼如下:public class
32、ListAllScoresServlet extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException ScoreDAO scoreDAO=new ScoreDAO();List list=scoreDAO.getAllScores();request.setAttribute("allScores", list);request.getRequestDispatcher(&
33、quot;/showAllScores.jsp").forward(request, response);public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException this.doGet(request, response);(5)第五個(gè)Servlet類的類名為“LoginServelt”,該類繼承了“HttpServlet”,用于將“”頁面內(nèi)的表單信息傳遞給“UserService”進(jìn)行判定。如果正確驗(yàn)證則將轉(zhuǎn)到“”頁
34、面,否則將轉(zhuǎn)到“”頁面。該類實(shí)現(xiàn)代碼如下:public class LoginServlet extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException String username=request.getParameter("username");String userpsw=request.getParameter("userpsw");User
35、user =new User();user.setUsername(username);user.setUserpsw(userpsw);UserService userService=new UserService();if(userService.CheckLogin(user)HttpSession session =request.getSession();session.setAttribute("name", username);request.getRequestDispatcher("/index.jsp").forward(reques
36、t, response);elserequest.getRequestDispatcher("/loginError.jsp").forward(request, response);public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException this.doGet(request,response);7.7 頁面的實(shí)現(xiàn)本程序有6個(gè)主要的頁面。(1)“”頁面包含一個(gè)由用戶名文本框、密碼框、提交按鈕和重置按鈕組成的
37、表單。它的實(shí)現(xiàn)代碼如下:<% page language="java" import="java.util.*" pageEncoding="GBK"%><html> <body> <form action="servlet/LoginServlet" method="get"> 用戶名稱:<input type="text" name="username" value="" /&g
38、t;<br/> 用戶密碼:<input type="password" name="userpsw" value="" /><br/> <input type="submit" name="submit" value="登錄" /> <input type="reset" name="reset" value="重寫" /> </form> &l
39、t;/body></html>(2)“”頁面包含“顯示所有成績(jī)”、“統(tǒng)計(jì)所有成績(jī)”超鏈接,用于控制頁面跳轉(zhuǎn)。它的實(shí)現(xiàn)代碼如下:<% page language="java" import="java.util.*" pageEncoding="GBK"%><html> <body> <a href="servlet/ListAllScoresServlet">顯示所有成績(jī)</a><br> <a href="se
40、rvlet/ClassifyAllScoresServlet">統(tǒng)計(jì)所有成績(jī)</a><br> </body></html>(3)“”頁面包含成績(jī)信息列表和添加、刪除、返回三個(gè)超鏈接,用于實(shí)現(xiàn)“添加成績(jī)”、“刪除成績(jī)”、“返回”三個(gè)功能。它的實(shí)現(xiàn)代碼如下:<% page language="java" import="java.util.*,domain.Score" pageEncoding="GBK"%><html> <body> &
41、lt;table border="1"> <tr> <th>學(xué)號(hào)</th> <th>姓名</th> <th>成績(jī)</th> </tr> <% List list=(List)request.getAttribute("allScores"); for(Iterator it=list.iterator();it.hasNext();) Score score=(Score)it.next(); %> <tr> <td>
42、<%=score.getId() %></td> <td><%=score.getName() %></td> <td><%=score.getScore() %></td> </tr> <% %> </table> <a href="addScore.jsp">添加</a> <a href="deleteScore.jsp">刪除</a> <a href="/
43、student_score/index.jsp">返回</a> </body></html>(4)“”頁面包含學(xué)號(hào)文本框、姓名文本框、成績(jī)文本框、提交按鈕、返回超鏈接,用于數(shù)據(jù)添加到數(shù)據(jù)庫。它的實(shí)現(xiàn)代碼如下:<% page language="java" import="java.util.*" pageEncoding="GBK"%><html> <body> <form action="servlet/AddScoreServl
44、et" method="post"> <table> <tr><td>學(xué)號(hào):</td><td><input type="text" name="id" /></td></tr> <tr><td>姓名:</td><td><input type="text" name="name" /></td></tr>
45、 <tr><td>成績(jī):</td><td><input type="text" name="score" /></td></tr> <tr><td><input type="submit" name="submit" value="提交" /><a href="/student_score/index.jsp">返回</a></
46、td></tr> </table> </form> </body></html>(5)“”頁面包含一個(gè)學(xué)號(hào)文本框、一個(gè)刪除按鈕、一個(gè)返回超鏈接。用于對(duì)所填學(xué)號(hào)的刪除。它的實(shí)現(xiàn)代碼如下:<% page language="java" import="java.util.*" pageEncoding="GBK"%><html> <body> <form action="servlet/DeleteScoreServlet
47、" method="post"> <table> <tr><th>請(qǐng)輸入要?jiǎng)h除成績(jī)的學(xué)號(hào):</th></tr> <tr><td><input type="text" name="id" /></td></tr> <tr><td><input type="submit" name="submit" value="刪除&quo
48、t; /><a href="/student_score/index.jsp">返回</a></td></tr> </table> </form> </body></html>(6)“”頁面用于顯示成績(jī)分?jǐn)?shù)段的人數(shù)信息。它的實(shí)現(xiàn)代碼如下:<% page language="java" import="java.util.*,domain.Segment"pageEncoding="GBK"%><h
49、tml><body><table border="1"><tr><th>分?jǐn)?shù)段</th><th>人數(shù)</th></tr><%List list = (List) request.getAttribute("classifyAllScores");for (Iterator it = list.iterator(); it.hasNext();) Segment segment = (Segment) it.next();%><tr>
50、;<td><%=segment.getSegment()%></td><td><%=segment.getNum()%></td></tr><%></table><a href="/student_score/index.jsp">返回</a></body></html> 配置“”文件<servlet><servlet-name>LoginServlet</servlet-name>&
51、lt;servlet-class></servlet-class></servlet><servlet><servlet-name>ListAllScoresServlet</servlet-name><servlet-class></servlet-class></servlet><servlet><servlet-name>AddScoreServlet</servlet-name><servlet-class></servlet-cl
52、ass></servlet><servlet><servlet-name>DeleteScoreServlet</servlet-name><servlet-class></servlet-class></servlet><servlet><servlet-name>ClassifyAllScoresServlet</servlet-name><servlet-class></servlet-class></servlet><servlet-mapping><servlet-name>LoginServlet</servlet-n
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 國外犯罪記錄管理制度
- 公司廢物日常管理制度
- 小學(xué)作文社團(tuán)管理制度
- 學(xué)校地震演練管理制度
- 小型超市帳目管理制度
- 農(nóng)業(yè)項(xiàng)目基本管理制度
- 學(xué)校隔離宿舍管理制度
- 化工班組隱患管理制度
- 公寓出租消防管理制度
- 醫(yī)療器械使用管理制度
- 生產(chǎn)良率系統(tǒng)統(tǒng)計(jì)表
- 用TOC理論提高生產(chǎn)制造的競(jìng)爭(zhēng)力課件
- SketchUp (草圖大師) 基礎(chǔ)培訓(xùn)PPT課件
- 生命線安裝方案
- 代理機(jī)構(gòu)服務(wù)質(zhì)量考核評(píng)價(jià)表
- 淺談打擊樂器在小學(xué)低段音樂課堂中的運(yùn)用
- 電廠保安人員管理制度
- 2018年瀘州市生物中考試題含答案
- ge核磁共振機(jī)房專用精密空調(diào)機(jī)技術(shù)要求
- 新干縣人民醫(yī)院血液透析治療患者告知書
- 消防電氣檢驗(yàn)批質(zhì)量驗(yàn)收記錄表
評(píng)論
0/150
提交評(píng)論