版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章构建JavaWeb应用
1.1Web应用概述
1.2流行的Web应用开发技术
1.3Web应用的常用功能
1.4JavaWeb应用的核心技术
1.5Web应用的文档结构
1.6Web应用的运行环境及其搭建
1.7创建Web应用
1.8JSP的运行原理
1.9网上书店的基本功能
小结
习题1实训1:创建Web应用
1.1Web
应
用
概
述
1.1.1什么是Web应用
我们通过浏览器可以访问新浪网、中华网、淘宝网、网易网、搜狐网以及微软和Sun公司的网站等,这些就是Web应用。对于Web应用,我们需要使用浏览器,通过网络,访问在远程的服务器上运行的程序。Web应用指的就是这些网站中的程序。
一个网站由大量的页面组成,每个页面通常由一个文件组成,也可能由多个文件组成。组成一个网站的大量文件之间通过特定的方式进行链接,并且存在一个系统来管理这些文件。管理这些文件的系统通常称为应用服务器,它的主要作用就是管理这些文件。
1.1.2Web应用是如何运行的
许多读者都上过网,应该对上网的过程比较熟悉,上网的一般过程如下:
●打开浏览器。
●输入某个网址。
●经过一段时间的等待,浏览器显示要访问的信息。
然后可以在网页上继续进行其他操作,可能的操作如下:
●在网页上点击超级链接,访问我们希望访问的内容,等待浏览器中内容的再次更新。
●在网页上输入一些信息,然后点击按钮,等待浏览器中内容的再次更新。
不管是在地址栏输入地址,还是点击超级链接或者点击按钮,都需要等待浏览器中内容的更新。等待浏览器内容更新的过程,实际上是浏览器访问Web应用的过程。这个过程如下:
●浏览器根据我们输入的地址找到相应的服务器,不同的网站对应不同的服务器。这个服务器通常称为Web服务器,可以接收浏览器发送的请求。
● Web服务器把这个请求交给相应的文件管理器,这个文件管理器也是一个服务器,通常称为应用服务器。
●应用服务器接收到请求之后,查找相应的文件,加载并执行这个文件。执行的结果通常是HTML文档。
●应用服务器把执行的结果返回给Web服务器,Web服务器再把这个结果返回给浏览器。
●浏览器解析HTML文档,然后把解析后的网页显示给用户。
1.文件
文件是网站中最主要的部分,各个不同的网站之间的差别主要是因为它们是由不同的文件组成的,而不同的文件可以完成不同的功能。这些文件主要是由网站创建人员编写的。本书的大部分内容就是介绍如何编写这些文件。
对于这些文件的访问,可以有很多种方式。可以在地址栏中输入地址进行访问,可以通过点击超链接进行访问,还可以通过点击按钮进行访问。通过输入地址进行访问的方式没有其他两种方式方便,通常仅仅是在第一次访问这个网站的第一个页面时才使用。如果不需要提交信息,则通常使用超链接的方式;如果要提交信息,则使用按钮的形式。
2.程序的运行支持:应用服务器、浏览器、Web服务器
编写好的文件并不能独立运行,而是需要在应用服务器中运行,即必须有应用服务器的支持。应用服务器负责查找、加载、执行文件。要访问这些文件,需要通过浏览器,所以要访问Web应用必须有浏览器。浏览器与应用服务器之间的交互是通过Web服务器完成的,Web服务器接收浏览器发送的请求,并把请求转发给应用服务器,再把应用服务器执行的结果发送给浏览器。通常情况下,应用服务器和Web服务器是集成在一起的。要开发和运行Web应用,我们需要搭建这些环境。
3.用户
Web应用的用户就是访问网站的人。访问网站的人可能是各种各样的人,他们在访问Web应用的时候是不需要培训的,所以在开发Web应用的时候应该时刻想着这个问题,不能认为用户什么都可以做,会按照我们的想法做。我们应该多为用户着想,多从用户的角度思考,编写的程序应该尽量方便用户的操作,尽量降低用户在操作过程中出现错误的概率。
4.部署人员
编写好的应用要部署到应用服务器上才能运行,这个部署过程有时由编写人员来完成,有时需要专门的人员来完成。部署人员应该对服务器非常熟悉。
学习本课程的目标就是能够编写一个完整的网站所涉及的所有文件,并能够把这些文件部署到服务器上,之后能够通过客户端对其进行访问。在实际应用中,网站位于单独的服务器上,客户通过不同的客户端对网站进行访问。在学习的过程中,我们的电脑既作为服务器也作为客户端。
1.2流行的Web应用开发技术
上网的时候,在地址栏中经常会看到文件的名字,后面有后缀名,通常根据后缀名可以知道网站是采用什么技术完成的。
当浏览Sun公司网站的时候,经常看到地址栏中文件名的后缀是.jsp。图1.1所示的界面是其中的一个页面,地址是/javase/index.jsp,这个地址是Java标准版技术的首页,说明使用的是JSP技术。
图1.1JSP技术网页实例
CSDN是一个大型的程序员交流的网站,经常会看到网页的后缀名是.aspx。图1.2所示的界面是一个blog,地址是/javaeeteacher,这是作者的blog。当查看里面的文章时会发现,文件的后缀名是.aspx,说明使用的是ASP.NET技术。
图1.2 ASP.NET技术网页实例
图1.3所示的界面是sohu新闻网页的首页,地址是。当浏览里面的网页时会发现,多数网页的后缀名是.php,说明该网站采用的技术是PHP;也有一些网页的后缀名是.jsp,说明sohu网站的某些模块采用的是JSP技术。
图1.3PHP技术网页实例
当然有时候并不能从网页的后缀名看出网站所使用的技术,例如对于大家非常熟悉的sina网,在访问该网站的过程中就很少能够看到文件的后缀名。
上面给出了3个采用不同技术实现的网站的例子,它们分别采用的是JSP、ASP.NET和PHP技术。实际上这3种技术也是目前流行的Web应用开发技术。
JSP是Sun公司的标准,有多个公司参与和支持,包括IBM、Oracle、BEA等公司,还有一些社团,包括著名的Apache组织。JSP主要采用Java技术完成。
1.3Web应用的常用功能
1.信息展示
信息展示是网站必不可少的功能,不管您上过什么样的网站,多数时候都是在浏览上面的信息,这也是多数网站最主要的功能。对于普通的用户,使用Web应用的主要目的也是查看信息。可以认为展示信息是Web应用的输出功能。对于静态网站(信息基本上不发生变化)来说,展示信息几乎就是网站的全部功能。
2.信息查询
在网站信息量非常大的时候,通过浏览来获取想要的信息将非常困难。网站必须提供功能强大的查询来方便用户的操作。查询的方式可以有很多:可以根据关键字查询,例如根据用户名、根据产品编号等;可以根据日期查询或者日期范围查询,例如在某个时间之前,或者在某个时间区间;可以组合查询,根据多个条件查询;可以进行模糊查询,只要包含所提供的关键字就可以查询到。
3.信息输入
大部分动态网站的信息是动态变化的,需要不断更新,需要向系统添加新的信息。例如,一个新闻网站,每天都要添加新闻。
信息的添加可以采用多种方式:
●用户选择,例如性别等信息。
●用户输入,例如姓名、生日等。
●用户上传,例如文本文件、图片文件和声音文件等。
4.信息更新
信息更新包括信息的修改和删除,多数网站在运行的过程中,都需要对信息进行更新。修改功能需要把原来的信息用新的信息替换。删除功能用于删除不再需要的信息。
5.信息处理
网站必须对用户的各种要求进行处理。用户需要查询信息,网站就需要根据用户的要求查询。如果用户需要计算某个信息,网站就需要完成计算过程。
具体信息处理的过程和内容是由网站的功能决定的。例如,银行的交易系统需要进行的各种处理主要是跟银行各种业务相关的处理。再例如,飞机票预订系统主要完成与飞机票预订相关的处理。
6.信息存储
各种网站都涉及大量的信息,这些信息必须进行存储。通常使用数据库存储,在很特殊的情况下可能会使用文件。从本质上来说,二者没有太大的区别。
在Web应用中信息存储是必不可少的部分,并且目前多数网站的主要功能基本上都是围绕所存储的信息而设置的。在未来的发展趋势中,Web应用中的信息存储将更加重要。
1.4JavaWeb应用的核心技术
JavaWeb应用的核心技术包括以下几个方面:
● JSP:进行输入和输出的基本手段。
● JavaBean:完成功能的处理。
● Servlet:对应用的流程进行控制。
● JDBC:是与数据库进行交互不可缺少的技术。
● JSTL和表达式语言EL:完成对JSP页面中各种信息的控制和输出。
JSP主要完成输入和输出的功能,主要是由HTML代码、客户端脚本(JavaScript等)、JSP的标签和指令、自定义标签库构成。下面是一个典型的JSP的例子:
指令<%@pagecontentType="text/html;charset=gb2312"%><%@taglibprefix="c"uri="/jsp/jstl/core"prefix="c"%>指令
用户信息如下:
JavaBean完成系统的所有处理功能。JavaBean就是Java中的普通的Java类,所以没有特殊的地方。另外,JavaWeb技术中提供了多个与JavaBean操作相关的标签。
Servlet技术可以完成与JSP相同的功能,但是其表现形式与JSP不同。JSP以脚本文件的形式存在,而Servlet则以Java文件的形式存在。所以Servlet也是Java类,是特殊的Java类,在JavaWeb技术中主要完成控制功能,负责协调JSP页面和完成功能的JavaBean之间的关系。下面是一个典型的Servlet的例子:
//获取用户输入的用户ID和口令获取JSP页面信息Stringuserid=request.getParameter("userid");Stringuserpass=request.getPrameter("userpass");主要方法
//获取用户输入的用户ID和口令
Stringuserid=request.getParameter(“userid”);
Stringuserpass=request.getPrameter(“userpass”);
//创建模型对象
调用JavaBeanUserBeanuser=newUserBean();
//调用业务方法进行验证
booleanb=user.validate(userid,userpass);
//要转向的文件
Stringforward;
if(b)
forward="success.jsp";
else
forward="failure.jsp";获取JSP页面信息调用JavaBean选择响应用户的界面
RequestDispatcherdispatcher
=request.getRequestDispatcher(forward);
dispatcher.forward(request,response);
}
}
与数据库的交互几乎是所有JavaWeb应用不可缺少的,并且可能要与各种类型的数据库管理系统打交道。这些数据库管理系统现在多数都是关系型数据库管理系统。Java中提供了JDBC技术来完成Java应用与各种数据库系统之间的交互。虽然JDBC不属于JavaWeb技术,但是在JavaWeb中不可避免地要使用JDBC。所以JDBC也算是JavaWeb开发中比较重要的技术之一。
对用户响应
JSTL和表达式语言是在JSP2.0之后引入的,主要目的是为了方便用户在JSP页面中使用常用功能。其典型的应用是信息的输出,因为JSP界面的主要功能就是展示信息,使用表达式语言使得信息的显示非常简单。例如在上面的JSP代码中的${user.userid},完成的功能是从request(后面的章节会介绍)中获取user对象的userid属性。如果使用Java代码,就没有这么简单了。另外,JSTL中提供了大量常用的功能,例如选择结构和循环结构,在上面的JSP例子中就使用了<c:forEach>标签完成循环控制。
1.5Web应用的文档结构
Web应用中包含大量的文件,有JSP文件、HTML文件、图片文件、Java文件、配置文件和其他的类库,这些文件必须按照一定的结构组织。
每个Web应用都有一个根目录,通常这个根目录就是这个应用的名字。假设这个根目录为bookstore。
可以把JSP文件、HTML文件和图片文件等与界面相关的文件直接放在根目录下。但是为了便于管理,通常会把文件进行分类。一般把Web应用分成若干个模块,把与每个模块相关的文件放在一个目录中。假设该Web应用包括用户管理、图书管理和订单管理,则可以在bookstore下分别创建usermanagement、bookmanagement和ordermanagement子目录,然后把与每个模块相关的文件放在对应子目录中。
Web应用中可能会存在大量的图片,为了便于管理,通常会在根目录中创建一个子目录来保存所有的图片,这个子目录可以命名为images。
在Web应用的各个模块中可能会用到一些公用的文件,例如页面的导航栏、版权信息、出错页面等。可以创建common子目录存放这些共享文件。
另外,在Web应用中有一个比较特殊的子目录WEB-INF,其他的子目录不能使用这个名字,放在这个目录中的文件不能通过浏览器访问,主要供服务器使用。在WEB-INF目录下,包括两个子目录和一个配置文件web.xml。两个子目录分别是classes和lib,前者用于存放所有与网站相关的Java文件,后者用于存放以压缩包.jar形式存在的Java文件。web.xml是每个Web应用都必须有的,是Web应用的配置文件。
图1.4Web应用的文档结构
+bookstore+bookmanagement+usermanagement+ordermanagement+images+common+WEB-INF+classes+libweb.xml 1.6Web应用的运行环境及其搭建
1.6.1运行环境
根据上一节对Web应用运行过程的描述,我们知道Web应用的运行需要Web服务器和应用服务器。另外对于JavaWeb应用来说,应用服务器在管理JSP程序的过程中需要编译Java源文件、加载Java文件、执行Java文件,需要JDK和JRE的支持。所以JavaWeb应用需要以下运行环境:
● Web服务器。
●应用服务器。
● JDK。
● JRE。
应用服务器厂商通常会把Web服务器集成到其中,所以在安装应用服务器的时候通常都包含Web服务器。当然也可以单独选择和安装Web服务器。如果单独安装服务器,则需要进行配置。
关于JavaWeb应用的应用服务器很多,有些是商业的,有些是免费的,对于我们学习来说,没有本质区别。本书选择Apache基金组织的Tomcat。
多数操作系统在安装的时候都带有JRE,但是也有一些操作系统不带JRE,如果没有JRE,则需要单独安装。
接下来,介绍如下环境的安装:
● Sun公司的JDK。
● Apache公司的Tomcat。
1.6.2安装JDK
1.获取JDK
本书使用的JDK
2.安装JDK和JRE
直接双击JDK文件即可安装。
首先出现的是许可证协议界面,如图1.5所示。图1.6是选择JDK安装路径,使用默认安装路径:C:\ProgramFiles\Java\jdk1.6.0。图1.7是JDK的安装过程。图1.8是选择JRE安装路径,使用默认安装路径:C:\ProgramFiles\Java\jre1.6.0。图1.9是JRE的安装过程。图1.10表示安装完成。
图1.5JDK安装第一步
图1.6JDK安装第二步
图1.7JDK安装第三步
图1.8JDK安装第四步
图1.9JRE的安装
图1.10安装完成
3.配置环境变量
在桌面图标【我的电脑】上点击右键,选择【属性】,在弹出的【系统属性】窗口中选择【高级】选项卡中的【环境变量】,弹出如图1.11所示界面。
图1.11选择Path进行配置
如果在系统变量中已经存在“Path”变量,则修改该变量的值,点击【编辑】进入如图1.12所示界面。
图1.12配置环境变量
在【变量值】对应的输入框中原有信息的前面添加如下路径:“C:\ProgramFiles\Java\jdk1.6.0\bin;”。
注意:最后的分号不能省略。
如果在系统变量中不存在“Path”变量,则创建“Path”变量。选择【新建】,也可进入如图1.12所示界面。
在【变量名】对应的输入框中输入“Path”,在【变量值】对应的输入框中输入“C:\ProgramFiles\Java\jdk1.6.0\bin;”。
4.测试JDK
在【开始】菜单中选择【运行】,输入“cmd”,进入命令行界面,然后输入“javac”,如果出现如图1.13所示的界面,则表示环境配置成功。
图1.13测试环境变量的配置
1.6.3安装Tomcat服务器
本书使用的Tomcat的版本是6.0.9,下载地址是/download-60.cgi,下载后的文件名为apache-tomcat-6.0.9.exe。
双击进行安装,进入安装界面,如图1.14所示。
图1.14安装的初始界面
图1.15安装的许可协议
点击【IAgree】,进入Tomcat的安装内容选择界面,如图1.16所示。
图1.16选择安装的内容
选择要安装的内容,这里全部选择即可,然后点击【Next>】,进入安装目录选择界面,如图1.17所示。
图1.17选择安装的路径
输入要安装的位置或者使用【Browse…】选择要安装的位置,也可以使用默认值,然后点击【Next>】,进入端口设置和管理员设置界面,如图1.18所示。
图1.18服务器的监听端口
图1.18中,最上面是Web服务的端口,默认值是8080,在编写程序的时候需要根据这个端口进行访问,也可以使用其他的端口,但是不能与系统定义的端口冲突。
下面的两个输入框是管理员登录时的用户名和口令,管理员的用户名默认值是admin,口令可以为空。如果设置了管理员口令,则必须记住。完成端口的设置以及管理员的设置之后点击【Next>】,进入JRE选择界面,如图1.19所示。
图1.19选择JRE选择已经安装的JRE,之后选择【Install】进入安装过程,安装过程如图1.20所示。
图1.20JRE的安装过程
安装完成之后将出现如图1.21所示的界面。
图1.21安装完成
1.7创建Web应用
1.7.1创建Web应用
每个Web应用都对应一个根目录,该应用相关的文件都在这个目录下。通常,根目录的名字就是应用的名字。在本书中,把应用的名字确定为bookstore。
服务器必须能够找到应用的根目录才可以运行这个Web应用,也就是通常所说的需要把应用部署到服务器上。有两种方式可以完成部署。第一种方式可以通过配置文件完成,即通过管理工具,在配置文件中进行配置。另一种方式是让服务器自动加载,这样Web应用开发人员的工作就简单了。为了能够让服务器自动加载应用,需要把应用放在特定的目录下。在Tomcat中可以把应用放在Tomcat目录下的webapps下面。
1.7.2创建WEB-INF文件夹
每个Web应用都包含一个WEB-INF文件夹,存放一些比较特殊的文件。该文件夹下存放的文件通常在客户端不能直接访问。
在WEB-INF目录下主要有如下几类文件:
●配置文件,常见的有xml文件、tld文件、properties文件(属性文件)。
●类文件,如系统用到的外部类库或者自己编写的类文件。
1.7.3创建web.xml文档
每个Web应用都应该对应一个web.xml文档,web.xml文档位于WEB-INF文件夹中。这个文档用于描述Web应用的配置信息。
xml版本这个文档通常不需要手工来写,因为一方面容易出错,另一方面比较费时间。如果采用集成开发环境,则集成开发环境会自动生成这个文件。如果手工创建Web应用,则可以从其他的Web应用中拷贝一个,然后进行修改。修改成下面的样子即可:
1.7.4创建classes文件夹
classes文件夹位于WEB-INF文件夹中,与这个Web应用相关的所有的类文件都应该放在这个文件夹下。
注意:类放在classes文件夹中的时候,需要创建与相关的包对应的文件夹。
例如,有一个类DBBean,所在的包是beans,则应该按照下面的方式存放文件:
WEB-INF/classes/beans/DBBean.class
有的Web应用会使用属性文件(properties文件)保存一些配置信息,这些属性文件也需要放在classes文件夹中。如果有多个属性文件,那么也可以根据属性文件的类别分别为属性文件创建子文件夹,就像为类创建包一样。
1.7.5创建lib文件夹
lib文件夹位于WEB-INF文件夹中,lib文件夹也是用于存放类文件的,只是这些文件都是以压缩包的形式存在的。如果类文件不是以压缩包的形式存在,则应该放在classes文件夹中。
当在Web应用中使用外部一些功能的时候,这些功能通常都是以压缩包.jar文件的形式存在的。这些压缩包应该放在lib目录下。
1.7.6创建欢迎界面
每个网站都是由大量的文件组成的,但是不管访问什么网站,用户都很少输入文件的名字,因为通常也不知道网站上文件的名字。网站一般都会有一个欢迎界面,当用户访问一个网站的时候,最先看到的就是欢迎界面。图1.22图1.22sina的欢迎界面
通常欢迎界面的名字是index.html、index.htm或者index.jsp。如果希望为Web应用配置默认欢迎界面,则可以在web.xml配置文件中添加如下代码:
<welcome-file-list>
<welcome-file>
index.jsp
</welcome-file>
</welcome-file-list>创建Web应用的过程实际上是创建大量的JSP文件的过程。JSP文件的后缀名通常是.jsp,如果不包含Java代码,仅仅是普通的html文件,则可以使用.htm或者.html。
文件中的代码主要是由html代码、嵌入的Java脚本以及大量的JSP语句构成的。从功能上来说,文件主要包括两部分内容:要显示的信息本身以及显示信息所采用的格式。通常html代码用于控制要显示的信息的格式,Java代码和JSP代码用于控制显示什么信息。创建文件的过程实际上也包含两个过程:首先根据要显示的信息确定页面的格式,确定格式之后采用JSP代码和Java代码控制要显示的内容。
图1.23创建好的Web应用
网上书店的欢迎界面的代码如下:
<%@pagepageEncoding="gbk"%>
<html>
<head>
<title>欢迎光临网上书店</title>
</head>
<body>
欢迎光临网上书店
</body>
</html>
创建好的Web应用的目录结构如图1.23所示。
1.7.7启动服务器
在访问JSP程序之前,必须先启动服务器。启动服务器的过程如下:【开始】→【ApacheTomcat6.0】→【ConfigureTomcat】,弹出如图1.24所示的界面。
图1.24启动服务器——Windows方式
在这个界面中,点击【Start】按钮启动服务器。
提示:可以直接在文件目录中启动服务器,即通过Tomcat安装目录的子目录bin中的Tomat6.exe或者Tomcat6w.exe启动。后者启动的效果与图1.24所示效果相同。Tomcat6.exe的启动效果如图1.25所示。
图1.25启动服务器——DOS窗口方式
1.7.8访问JSP程序
访问JSP程序的时候,需要提供以下几个信息:
●协议,通常是http。
●主机,服务器的IP地址或者名字。对于本地应用可以使用本地虚拟地址,也可以使用真实地址。localhost是本地虚拟主机的名字,是本地虚拟主机的IP地址。
●端口,默认是80,使用tomcat开发的时候默认是8080。
● Web应用,每个Web应用都对应一个路径,默认的路径名与Web应用文件夹名相同。本实例中应用的名字是bookstore。
●文件,必须指出要访问的文件名。本实例中的文件名是index.jsp。
要访问上面的欢迎界面,必须打开浏览器并输入地址,地址可以有多种写法:
http://localhost:8080/bookstore/index.jsp
:8080/bookstore/index.jsp
:8080/bookstore/index.jsp
http://lixucheng:8080/bookstore/index.jsp前两种表示虚拟本地主机,后两种分别是IP地址和主机名。在实际应用中主要根据域名访问。
如果设置了欢迎界面,则后面的文件名可以省略,例如第一种地址可以写成下面的
样子:
http://localhost:8080/bookstore
1.8JSP的运行原理
那么JSP在服务器端是如何运行的呢?
首先,JSP文件需要转换成Java类。在访问JSP文件的时候,并不直接执行JSP文件,而是执行JSP文件对应的Java类(class文件)的对象,这个Java文件是服务器根据我们提供的JSP文件创建的。在Tomcat安装目录下的work目录中有JSP文件转换成的Java文件。
其次,并不是每次访问JSP文件都会将JSP文件转换成Java文件。只有第一次访问JSP文件的时候需要把JSP文件转换成Java文件,在后续的访问过程中,只要查找到这个JSP文件对应的Java文件即可。所以,第一次访问JSP文件的时候可能会比较慢,后续访问就正常了。
最后,要访问某个JSP文件,得到的并不是JSP文件的内容,而是JSP文件的执行结果,就是上面所说的JSP文件对应的Java类的执行结果。这个结果通常是JSP文件的输出内容,为HTML形式。
综上所述,JSP文件的运行过程可以描述如下:
(1)服务器端接收到请求信息之后,查找JSP文件对应的Java文件,如果Java文件不存在,则把JSP文件转换成Java文件,如果对应的Java文件已经存在,则直接调用这个Java文件。
(2)执行Java文件。
(3)把执行的结果返回给客户端。
JSP的运行原理如图1.26所示。
图1.26JSP的运行原理
1.9网上书店的基本功能
网上书店主要完成网上图书信
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 成本会计实训报告范文(6篇)
- 2025年春初中化学九年级下册(科粤版)上课课件 7.4 跨学科实践活动:海洋资源的综合利用与制盐
- 四川省自贡市荣县中学2024-2025学年八年级上学期11月第一次月考英语试题(无答案)
- 医学教程 弹力纤维瘤超声诊断及案例
- 法律法规常识讲解
- 高一 人教版 化学 上册 必修第一册 第三章《第一节 铁及其化合物(第一课时)》课件
- 品管圈PDCA案例-神经内科降低吞咽障碍患者口腔卫生中度缺陷率医院品质管理成果汇报
- 2025届广东省湛江市普通高中毕业班11月份调研测试英语试题(含答案解析)
- 年产1000套自动化设备加工生产项目可行性研究报告模板-立项拿地
- 美容营养学(西安海棠职业学院)知到智慧树答案
- 静压预制管桩监理实施细则
- 梦的解析.ppt
- 中国美术学院学士学位论文规范化要求
- 江西省交通建设工程现场检测和工程材料试验收费项目及标准
- 幼儿园每日消防安全防火巡检记录表
- 企业文化考核方法和指标
- 2020人教版八年级上学期同步单元专题大培优:第一章《机械运动》培优训练题
- 非霍奇金淋巴瘤诊疗指南(69页)
- 压力钢管安装施工质量及安全保证措施
- 提高方形人工挖孔灌注桩成孔合格率
- 影响机械加工表面质量的因素及采取的措施
评论
0/150
提交评论