版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计报告课程设计题目:Linux系统资源管理器学院:计算机学院专业班级:计算机科学与技术01、02班课程设计指导教师评定成绩表项目分值优秀(100>x≥90)良好(90>x≥80)中等(80>x≥70)及格(70>x≥60)不及格(x<60)评分参考标准参考标准参考标准参考标准参考标准学习态度15学习态度认真,科学作风严谨,严格保证设计时间并按任务书中规定的进度开展各项工作学习态度比较认真,科学作风良好,能按期圆满完成任务书规定的任务学习态度尚好,遵守组织纪律,基本保证设计时间,按期完成各项工作学习态度尚可,能遵守组织纪律,能按期完成任务学习马虎,纪律涣散,工作作风不严谨,不能保证设计时间和进度技术水平与实际能力25设计合理、理论分析与计算正确,实验数据准确,有很强的实际动手能力、经济分析能力和计算机应用能力,文献查阅能力强、引用合理、调查调研非常合理、可信设计合理、理论分析与计算正确,实验数据比较准确,有较强的实际动手能力、经济分析能力和计算机应用能力,文献引用、调查调研比较合理、可信设计合理,理论分析与计算基本正确,实验数据比较准确,有一定的实际动手能力,主要文献引用、调查调研比较可信设计基本合理,理论分析与计算无大错,实验数据无大错设计不合理,理论分析与计算有原则错误,实验数据不可靠,实际动手能力差,文献引用、调查调研有较大的问题创新10有重大改进或独特见解,有一定实用价值有较大改进或新颖的见解,实用性尚可有一定改进或新的见解有一定见解观念陈旧论文(计算书、图纸)撰写质量50结构严谨,逻辑性强,层次清晰,语言准确,文字流畅,完全符合规范化要求,书写工整或用计算机打印成文;图纸非常工整、清晰结构合理,符合逻辑,文章层次分明,语言准确,文字流畅,符合规范化要求,书写工整或用计算机打印成文;图纸工整、清晰结构合理,层次较为分明,文理通顺,基本达到规范化要求,书写比较工整;图纸比较工整、清晰结构基本合理,逻辑基本清楚,文字尚通顺,勉强达到规范化要求;图纸比较工整内容空泛,结构混乱,文字表达不清,错别字较多,达不到规范化要求;图纸不工整或不清晰课程设计指导教师评定成绩表学号: 20124978姓名:王元斗 班级:2012级计算机科学与技术02班项目分值优秀(100>x≥90)良好(90>x≥80)中等(80>x≥70)及格(70>x≥60)不及格(x<60)评分参考标准参考标准参考标准参考标准参考标准学习态度15学习态度认真,科学作风严谨,严格保证设计时间并按任务书中规定的进度开展各项工作学习态度比较认真,科学作风良好,能按期圆满完成任务书规定的任务学习态度尚好,遵守组织纪律,基本保证设计时间,按期完成各项工作学习态度尚可,能遵守组织纪律,能按期完成任务学习马虎,纪律涣散,工作作风不严谨,不能保证设计时间和进度技术水平与实际能力25设计合理、理论分析与计算正确,实验数据准确,有很强的实际动手能力、经济分析能力和计算机应用能力,文献查阅能力强、引用合理、调查调研非常合理、可信设计合理、理论分析与计算正确,实验数据比较准确,有较强的实际动手能力、经济分析能力和计算机应用能力,文献引用、调查调研比较合理、可信设计合理,理论分析与计算基本正确,实验数据比较准确,有一定的实际动手能力,主要文献引用、调查调研比较可信设计基本合理,理论分析与计算无大错,实验数据无大错设计不合理,理论分析与计算有原则错误,实验数据不可靠,实际动手能力差,文献引用、调查调研有较大的问题创新10有重大改进或独特见解,有一定实用价值有较大改进或新颖的见解,实用性尚可有一定改进或新的见解有一定见解观念陈旧论文(计算书、图纸)撰写质量50结构严谨,逻辑性强,层次清晰,语言准确,文字流畅,完全符合规范化要求,书写工整或用计算机打印成文;图纸非常工整、清晰结构合理,符合逻辑,文章层次分明,语言准确,文字流畅,符合规范化要求,书写工整或用计算机打印成文;图纸工整、清晰结构合理,层次较为分明,文理通顺,基本达到规范化要求,书写比较工整;图纸比较工整、清晰结构基本合理,逻辑基本清楚,文字尚通顺,勉强达到规范化要求;图纸比较工整内容空泛,结构混乱,文字表达不清,错别字较多,达不到规范化要求;图纸不工整或不清晰课程设计指导教师评定成绩表学号: 20124924 姓名:徐军 班级:2012级计算机科学与技术01班项目分值优秀(100>x≥90)良好(90>x≥80)中等(80>x≥70)及格(70>x≥60)不及格(x<60)评分参考标准参考标准参考标准参考标准参考标准学习态度15学习态度认真,科学作风严谨,严格保证设计时间并按任务书中规定的进度开展各项工作学习态度比较认真,科学作风良好,能按期圆满完成任务书规定的任务学习态度尚好,遵守组织纪律,基本保证设计时间,按期完成各项工作学习态度尚可,能遵守组织纪律,能按期完成任务学习马虎,纪律涣散,工作作风不严谨,不能保证设计时间和进度技术水平与实际能力25设计合理、理论分析与计算正确,实验数据准确,有很强的实际动手能力、经济分析能力和计算机应用能力,文献查阅能力强、引用合理、调查调研非常合理、可信设计合理、理论分析与计算正确,实验数据比较准确,有较强的实际动手能力、经济分析能力和计算机应用能力,文献引用、调查调研比较合理、可信设计合理,理论分析与计算基本正确,实验数据比较准确,有一定的实际动手能力,主要文献引用、调查调研比较可信设计基本合理,理论分析与计算无大错,实验数据无大错设计不合理,理论分析与计算有原则错误,实验数据不可靠,实际动手能力差,文献引用、调查调研有较大的问题创新10有重大改进或独特见解,有一定实用价值有较大改进或新颖的见解,实用性尚可有一定改进或新的见解有一定见解观念陈旧论文(计算书、图纸)撰写质量50结构严谨,逻辑性强,层次清晰,语言准确,文字流畅,完全符合规范化要求,书写工整或用计算机打印成文;图纸非常工整、清晰结构合理,符合逻辑,文章层次分明,语言准确,文字流畅,符合规范化要求,书写工整或用计算机打印成文;图纸工整、清晰结构合理,层次较为分明,文理通顺,基本达到规范化要求,书写比较工整;图纸比较工整、清晰结构基本合理,逻辑基本清楚,文字尚通顺,勉强达到规范化要求;图纸比较工整内容空泛,结构混乱,文字表达不清,错别字较多,达不到规范化要求;图纸不工整或不清晰指导教师评定成绩:指导教师签名:年月日重庆大学本科学生课程设计任务书课程设计题目 Linux资源管理器学院 计算机学院专业计算机科学与技术年级2012级已知参数和设计要求:开发环境:Linux操作系统课程设计不限制使用工具,推荐用java。附件是课程设计所使用的eclipse版本及其安装配置步骤,可以作为参考。 设计实现Linux操作系统资源管理器的功能:菜单显示、图标显示、右键菜单,实现软件资源和数据资源的管理。学生应完成的工作: 1.资源管理器树形结构的显示。 2.菜单的显示和操作。 3.文件夹的操作,新建、删除、拷贝、移动等。 4.文件的操作,新建、删除、拷贝、移动等。 5.参考Linux下的资源管理器。目前资料收集情况(含指定参考资料): 界面代码设计参考资料:SwingHacks.课程设计的工作计划: 3人自由组队,小组分工完成项目任务下达日期2014年12月22日完成日期2014年12月25日说明:学院、专业、年级均填全称,如:计算机学院、计算机科学与技术、2010。目录TOC\o"2-3"\f\h\z\t"标题,1"目录 6引言 61需求分析 71.1功能需求分析 71.1.1平台要求 71.1.2系统用例图 71.1.3应用程序层次图 82代码设计与实现 92.1应用程序设计概要 102.1.1接口设计 102.1.2后台代码设计及其实现 112.1.3数据字典 213代码测试与调试 233.1用例测试 233.1.1后台代码测试及其解决 243.1.2界面代码测试及调试结果 243.2应用程序整体效果截图 253.2.1应用程序在Linux操作系统(ubuntu)下的运行效果 253.2.2 应用程序在win操作系统(windows7专业版)下的运行效果 264课程设计总结 264.1小组成员分工及实际实现情况 264.2课程设计过程控制 274.3说明 274.4小组总结 27 引言Linux是一种自由和开放源代码的类UNIX操作系统。该操作系统的内核由LinusTorvalds在1991年10月5日首次发布。Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。本次课程设计我们是基于eclipseIDE在Linux环境下实现一个形如“Linux资源管理器”的可视化应用程序。本文参照软件开发过程中的“瀑布模型”——线形顺序模型,按工序将问题化简,将功能的实现与设计分开,采取分工协作,即结构化的分析与设计的方法将逻辑实现与物理实现分开。对于本次课程设计,我们小组主要分两阶段完成,包括定义阶段、开发阶段。为便于组织和管理,我们建立了甘特图明确记录小组成员的任务分配及各成员执行任务的进度情况。1需求分析参照2012级操作系统课程设计任务书的要求,我们小组选择“Linux操作系统资源管理器”作为本次课程设计的任务。课程设计的最终结果包括“Linux操作系统资源管理器”应用程序及操作课程设计报告。1.1功能需求分析在课程设计实验正式开始之前,我们小组在详细阅读课程设计任务书之后,经过小组成员地讨论,最终确定了应用程序的功能及实现目标。以下是我们小组的设计概要及规格说明。1.1.1平台要求尽管基于Java语言开发的应用程序是跨平台的,但是应课程设计实验要求,我们的应用程序的开发环境还是首选的Linux系统(ubuntu)。 开发环境:Linux系统开发平台、Windows系统开发平台。 适用范围:WindowsAll、Linux(ubuntu)操作系统。1.1.2系统用例图下图形象化地描述了系统(应用程序)需要实现的功能,及各功能之间的联系。1.1.3应用程序层次图我们对“Linux资源管理器”的目标是完成上述所有的系统用例。为使提升应用程序的完成效率,我们将应用程序的实现划分了层次:用户界面层主要由做界面的人员负责,主要完成“树形结构的显示”、“右键菜单显示”和“菜单功能”的实现;应用逻辑层和访问操作系统主要交由做后台的人员完成;界面和后台之间的参数传递主要由“公共接口”的调用实现,如下图所示。 2代码设计与实现在完成详尽的需求分析之后,我们开始代码的设计工作。首先,我们小组成员共同讨论了应用程序需要的接口;其次,负责写后台的成员完成接口的实现;负责界面的成员查找资料并负责将其实现。其中,小组中负责撰写文档的成员应时刻与程序员保持良好的沟通,使正确完成UML设计图。2.1应用程序设计概要在本阶段,编写代码的成员将实现接口的设计和各用例的逻辑实现。2.1.1接口设计下图形象化的给出了接口的设计概况,明确了相关参量和返回值。说明:“@para”表示接口的传入参数,包括参数名和参数类型;“@return”表示接口的返回值类型。2.1.2后台代码设计及其实现通过公共接口实现前端(界面)与后台(应用逻辑层)的交互 publicclassBackgroundRunnerimplementsCommInterface{ @Override publicbooleancreateFile(StringfileName){ Filefile=newFile(fileName); try{ returnfile.createNewFile(); }catch(IOExceptione){ e.printStackTrace(); } returnfalse; } @Override publicbooleandeleteFile(StringfileName){ Filefile=newFile(fileName); returnfile.delete(); } @Override publicbooleanrenameFile(StringfileName,StringnewName){ Filefile=newFile(fileName); returnfile.renameTo(newFile(newName)); } @Override publicbooleancopyFile(StringsrcName,StringdesName){ InputStreamin; OutputStreamout; //echo("copyfile:"+src+"->"+des+"."); try{ in=newFileInputStream(srcName); out=newFileOutputStream(desName); }catch(FileNotFoundExceptione1){ e1.printStackTrace(); returnfalse; } byteb[]=newbyte[1024*1024*5]; intlen; try{ len=in.read(b); while(len!=-1){ out.write(b,0,len); len=in.read(b); } }catch(IOExceptione){ e.printStackTrace(); returnfalse; } try{ in.close(); out.close(); }catch(IOExceptione){ e.printStackTrace(); returnfalse; } returntrue; } @Override publicbooleanmoveFile(StringsrcName,StringdesName){ Filefile=newFile(srcName); returnfile.renameTo(newFile(desName)); } @Override publicList<String>listFiles(StringdirName){ Filedir=newFile(dirName); Stringfiles[]=dir.list(); List<String>result=newArrayList<String>(); for(inti=0;i<files.length;i++){ Filefile=newFile(dir,files[i]); if(file.isFile()) result.add(files[i]); } returnresult; } @Override publicbooleancreateDir(StringdirName){ Filedir=newFile(dirName); returndir.mkdir(); } privateboolean_deleteDir(Filedir){ if(dir.isDirectory()){ String[]children=dir.list(); for(inti=0;i<children.length;i++){ booleansuccess=_deleteDir(newFile(dir,children[i])); if(!success){ returnfalse; } } } returndir.delete(); } @Override publicbooleandeleteDir(StringdirName){ return_deleteDir(newFile(dirName)); } @Override publicbooleanrenameDir(StringdirName,StringnewPathName){ Filedir=newFile(dirName); returndir.renameTo(newFile(newPathName)); } privateboolean_copyDir(FilesrcDir,StringdesDir){ if(srcDir.isDirectory()){ StringnewDir=desDir; Filef=newFile(newDir); if(!f.exists()||f.exists()&&!f.isDirectory()) if(!f.mkdirs()) returnfalse; String[]children=srcDir.list(); for(inti=0;i<children.length;i++){ booleansuccess=_copyDir(newFile(srcDir,children[i]), newDir+"/"+children[i]); if(!success){ returnfalse; } } returntrue; }elseif(srcDir.isFile()){ try{ returncopyFile(srcDir.getCanonicalPath(),desDir); }catch(IOExceptione){ e.printStackTrace(); returnfalse; } }else returnfalse; } @Override publicbooleancopyDir(StringsrcPathName,StringdesPathName){ return_copyDir(newFile(srcPathName),desPathName); } @Override publicbooleanmoveDir(StringsrcPathName,StringdesPathName){ Filedir=newFile(srcPathName); returndir.renameTo(newFile(desPathName)); } @Override publicList<String>listDirs(StringdirName){ Filedir=newFile(dirName); Stringfiles[]=dir.list(); List<String>result=newArrayList<String>(); for(inti=0;i<files.length;i++){ Filefile=newFile(dir,files[i]); if(file.isDirectory()) result.add(files[i]); } returnresult; }2.1.3界面代码设计及其实现a.文件夹的“树形结构”显示的关键代码classFolderNodeimplementsDIY_FileSystem{ privatestaticFileSystemViewfsView; privatestaticbooleanshowHiden=true; privateFiletheFile; privateArrayList<File>both=newArrayList<File>(); privateArrayList<File>folder=newArrayList<File>(); publicvoidsetShowHiden(booleanifshow){ showHiden=ifshow; } publicStringtoString(){ returnfsView.getSystemDisplayName(theFile); } publicFolderNode(){ super(); fsView=FileSystemView.getFileSystemView(); theFile=fsView.getHomeDirectory(); prepareChildren(); } privatevoidprepareChildren(){ //TODOAuto-generatedmethodstub File[]files=fsView.getFiles(theFile,showHiden); for(inti=0;i<files.length;i++){ both.add(files[i]); if(files[i].isDirectory()&&!files[i].toString().toLowerCase().endsWith(".link")){ folder.add(files[i]); } } } publicFolderNode(FiletheFile){ super(); this.theFile=theFile; prepareChildren(); } @Override publicIcongetIcon(){ //TODOAuto-generatedmethodstub returnfsView.getSystemIcon(theFile); } @Override publicDIY_FileSystemgetChild(charfileType,intindex){ //TODOAuto-generatedmethodstub if(DIY_FileSystem.DIRECTORY==fileType){ returnnewFolderNode(folder.get(index)); }elseif(DIY_FileSystem.FILE==fileType){ returnnull; }elseif(DIY_FileSystem.BOTH==fileType){ returnnewFolderNode(both.get(index)); }else{ returnnull; } } @Override publicintgetChildCount(charfileType){ //TODOAuto-generatedmethodstub if(DIY_FileSystem.DIRECTORY==fileType){ returnfolder.size(); }elseif(DIY_FileSystem.FILE==fileType){ return-1; }elseif(DIY_FileSystem.BOTH==fileType){ returnboth.size(); }else{ return-1; } } @Override publicbooleanisLeaf(charfileType){ //TODOAuto-generatedmethodstub if(DIY_FileSystem.DIRECTORY==fileType){ returnfolder.size()==0; }elseif(DIY_FileSystem.FILE==fileType){ returntrue; }elseif(DIY_FileSystem.BOTH==fileType){ returnboth.size()==0; }else{ returntrue; } } @Override publicintgetIndexOfChild(charfileType,Objectchild){ //TODOAuto-generatedmethodstub if(childinstanceofFolderNode){ if(DIY_FileSystem.DIRECTORY==fileType){ returnfolder.indexOf(((FolderNode)child).theFile); }elseif(DIY_FileSystem.FILE==fileType){ return-1; }elseif(DIY_FileSystem.BOTH==fileType){ returnboth.indexOf(((FolderNode)child).theFile); }else{ return-1; } }else{ return-1; } } @Override publicStringgetPath(){ //TODOAuto-generatedmethodstub returntheFile.getAbsolutePath(); } @Override publicvoidfreshDir(){ //TODOAuto-generatedmethodstub both.clear(); folder.clear(); prepareChildren(); }} publicFileTree(){ super(); } privateFileListtheList; publicFileTree(FileListtheList){ super(); this.theList=theList; setModel(newFileSystemModel(newFolderNode())); this.setCellRenderer(newFolderRenderer()); addTreeSelectionListener(newTreeSelectionListener(){ @Override publicvoidvalueChanged(TreeSelectionEvente){ //TODOAuto-generatedmethodstub } }); this.setSelectionRow(0); } publicvoidfireValueChanged(TreeSelectionEventtse){ TreePathtmp=tse.getNewLeadSelectionPath(); Objecto=tmp.getLastPathComponent(); theList.fireTreeSelectionChanged((FolderNode)o); } publicvoidfireTreeCollapsed(TreePathpath){ super.fireTreeCollapsed(path); TreePathcurrentpath=getSelectionPath(); if(path.isDescendant(currentpath)){ setSelectionPath(path); } }b.单击右键使弹出“右键菜单”的关键代码publicclassRight_Click_MenuextendsJComponentimplementsMouseListener,MouseMotionListener{ /** *@authorjudiths00 *@referenceSwingHacks */ privatestaticfinallongserialVersionUID=1L; protectedJPopupMenupopup; protectedContainercontentPane; publicRight_Click_Menu(JPopupMenupopup,ContainercontentPane){ super(); addMouseListener(this); addMouseMotionListener(this); this.popup=popup; this.contentPane=contentPane; } publicvoidmouseMoved(MouseEvente){ redispatchMouseEvent(e,false); } publicvoidmouseDragged(MouseEvente){ redispatchMouseEvent(e,false); } publicvoidmouseClicked(MouseEvente){ redispatchMouseEvent(e,false); } publicvoidmouseEntered(MouseEvente){ redispatchMouseEvent(e,false); } publicvoidmouseExited(MouseEvente){ redispatchMouseEvent(e,false); } publicvoidmousePressed(MouseEvente){ redispatchMouseEvent(e,false); } publicvoidmouseReleased(MouseEvente){ redispatchMouseEvent(e,false); } protectedvoidredispatchMouseEvent(MouseEvente,booleanb){ //TODOAuto-generatedmethodstub if(e.isPopupTrigger()){ showPopup(e.getComponent(),e.getX(),e.getY()); }else{ doDispatch(e); } } protectedvoiddoDispatch(MouseEvente){ //TODOAuto-generatedmethodstub Componentcomponent=getRealComponent(e.getPoint()); if(component==null){ return; } PointcomponentPoint=SwingUtilities.convertPoint(this, e.getPoint(),component); component.dispatchEvent(newMouseEvent(component,e.getID(),e.getWhen(), e.getModifiers(),componentPoint.x,componentPoint.y, e.getClickCount(),e.isPopupTrigger())); } protectedComponentgetRealComponent(Pointpoint){ //TODOAuto-generatedmethodstub PointcontainerPoint=SwingUtilities.convertPoint(this,point,contentPane); Componentcomponent=SwingUtilities.getDeepestComponentAt(contentPane, containerPoint.x,containerPoint.y); returncomponent; } publicvoidshowPopup(Componentcomponent,intx,inty){ //TODOAuto-generatedmethodstub popup.show(component,x,y); }publicstaticvoidp(Stringstr){System.out.println(str); }}2.1.3数据字典0000用例名称 功能描述输入输出createFile实现文件的创建。若文件路径下存在同名文件,则不会重复创建文件文件绝对路径1(文件创建成功)0(文件创建失败)0001用例名称功能描述输入输出deleteFile实现指定文件的删除文件绝对路径1(文件删除成功)0(文件删除失败)0010用例名称功能描述输入输出moveFile实现文件的移动。本质是文件的复制源文件绝对路径,目的文件绝对路径1(文件移动成功)0(文件移动失败)0011用例名称功能描述输入输出renameFile实现文件的重命名。若路径下文件不存在,则重命名失败源文件绝对路径,目的文件绝对路径1(重命名成功)0(重命名失败)0100用例名称功能描述输入输出copyFile实现文件的拷贝源文件绝对路径,目的文件绝对路径1(文件拷贝成功)0(文件拷贝失败)0101用例名称功能描述输入输出listFiles仅罗列出当前目录(路径下)所有的文件文件绝对路径当前路径下的所有文件0110用例名称功能描述输入输出createDir实现文件夹的创建(文件夹)绝对路径1(文件夹创建成功)0(文件夹创建失败)0111用例名称功能描述输入输出deleteDir实现文件夹根目录的删除(文件夹)绝对路径1(文件夹删除成功)0(文件夹删除失败)1000用例名称功能描述输入输出renameDir实现文件夹重命名源文件夹的绝对路径,目的文件夹的绝对路径1(文件删除成功)0(文件删除失败)1001用例名称功能描述输入输出copyDir实现将根目录下所有文件或文件夹进行拷贝源文件夹的绝对路径,目的文件夹的绝对路径1(文件夹拷贝成功)0(文件夹拷贝失败)1010用例名称功能描述输入输出moveDir实现文件夹的移动源文件夹的绝对路径,目的文件夹的绝对路径1(文件夹移动成功)0(文件夹移动失败)1011用例名称功能描述输入输出listDir罗列出当前路径下的所有文件夹源文件夹的绝对路径,目的文件夹的绝对路径当前路径下的所有文件夹J000用例名称功能描述属性FileTree实现文件的树形结构的显示OJ001用例名称功能描述属性FileList实现对文件的树形结构的响应OJ010用例名称功能描述属性RightClickMenu实现在应用程序窗口下任意位置点击“右键”使创建功能菜单OJ011用例名称功能描述属性UIHelper实现界面的布局、事件响应等功能O3代码测试与调试应用程序的后台和界面代码编写完毕之后,撰写文档的成员负责代码的测试。与此同时,对于实验中遇到的问题(比如“程序bug”),小组成员在合理的分析并交流相互的观点之后,都给予了良好的解决方案。3.1用例测试下面的表格表示的是我们小组的应用程序在开发过程中的每个模块完成的实际情况和测试、调试的结果。若需查看应用程序的实际实现情况请运行附录里面的OS00.jar包。3.1.1后台代码测试及其解决 表1后台代码测试及调试情况表用例编号用例名称实现情况调试与分析0000createFileT[1]O[2]0001deleteFileTO0010moveFileTO0011renameFileTO0100copyFileTO0101listFilesTO0110createDirTO0111deleteDirTO1000moveDirTO1001renameDi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 关于毕业学生实习报告四篇
- 经股肱桡尺动脉介入治疗对比-袁晋青
- 北京小学科学教师学年工作总结大全
- 儿童临时监护协议书(2篇)
- 办公场地出租合同模板
- 深圳商铺租赁合同书
- 赠送别克商务轿车协议书
- 厂房租赁协议合同书范本
- 扬州地下停车位出租协议
- 八年级道德与法治下册第二单元理解权利义务第四课公民义务第2框依法履行义务教案新人教版
- 新能源汽车比亚迪动力电池结构原理及检测
- DLT5210.4-2018热工施工质量验收表格
- JJF 1183-2007 温度变送器校准规范-(高清现行)
- 第二章航空燃气轮机的工作原理
- 推板式造波机的机械结构设计
- SAPHR快速指南
- 广东海洋大学大数据库课程设计
- (完整版)食堂管理制度及流程
- 某医院后备人才梯队建设方案
- 二年级上册英语教案Unit6 Lesson22︱北京课改版
- 桂枝加龙骨牡蛎汤_金匮要略卷上_方剂加减变化汇总
评论
0/150
提交评论