1.web开发入门的了解
1.1 回顾软件结构分类
C/S: 客户端与服务器端
特点:
1)需要安装特定的客户
2)服务器程序升级,那么客户端程序同步升级
B/S: 浏览器与服务器端
特点:
1) 不需要安装特定的客户端(只需要一个浏览器软件)
2)服务器程序升级,客户端程序不需要升级。
结论:进入web开发之后,软件结构从C/S 过渡到 B/S
java web开发就是基于B/S结构软件。
1.2 服务器
从物理上来说,服务器就是一台PC机器。通常配置比较高。CPU 4核,内存8G以上,硬盘T
web服务器:在PC机器上,安装了web服务软件,提供web服务
数据库服务器:在PC机器上,安装了数据库软件(mysql/oracle/sql server),提供了数据存储的服务
邮件服务器:在PC机器上,安装了收发邮件服务软件,提供了收发邮件的功能
收邮件服务器:pop3.126.com
发邮件服务器:stmp.126.com
1.3 web服务软件原理
web服务软件作用:把本地的资源公开给外部访问。
javaweb: B/S 浏览器- >web服务软件
2.常用的web服务器的厂商
web服务软件 , 也可以说成是web服务器
WebLogic: 是BEA公司的产品。支持JavaEE规范。收费的。
javaSE规范:支持 IO流,集合,网络编程,线程技术
javaEE规范: 支持13种技术。servlet、jsp、ejb、jdbc
WebSphere: 是IBM公司的产品。支持JavaEE规范。收费的。解决方案
WebSphere -> IBM操作系统(aix)- IBM服务器PC - IBM数据库(DB2)
JBoss: 是Redhat公司的产品。支持JavaEE规范。linux。软件免费开源的。服务收费的。
Tomcat: 是 Apache开源组织的产品。支持servlet/jsp规范(不支持ejb)。开源免费的tomcat用在中小应用。
web开发基础阶段重点使用tomcat服务器
3.Tomcat服务器的认识
2.1 基本操作
1)去apache官网。www.apache.org . tomcat的产品页面: http://jakarta.apache.org
2)tomcat不同的安装包
安装版本: window(exe msi) linux(rmp)
压缩版本: 不分window和linux (zip 、 tar 、rar) 学习时使用
2.2 启动和关闭
1)启动
a)找到%tomcat%/bin/startup.bat,双击,弹出一个窗口停止不动。
b)确认窗口上显示没有任何错误,然后打开浏览器输入:http://localhost:8080 看到一只猫,证明tomcat服务器启动成功!!!
2)关闭
找到%tomcat%/bin/shutdown.bat,双击。
2.3 体验tomcat服务器作用
tomcat服务器作用:把本地资源公开给外部访问
webapps: 把需要公开访问的文件放到该目录
2.4 URL
URL: 统一资源定位符。用于定位基于http协议的资源。
浏览器: http://localhost:8080/myweb/test.html
http:// : 协议,http协议 执行流程: 在本地找hosts文件,如果找不到,联网找网络运营商的DNS服务器
localhost 域名。
localhost: 本地域名
www.baidu.com: 外地域名
8080 定位具体的一个软件。
tomcat: 8080
mysql:3306
oracle: 1521
myweb : web应用的根目录。test.html: web资源
2.5 tomcat服务器常见问题
1)闪退
原因: 在tomcat服务器启动时(运行startup命令),在本地环境变量中查找一个叫JAVA_HOME的环境变量。(tomcat用java开发,需要用jvm运行)
解决办法: 在本地环境变量中添加一个JAVA_HOME
JAVA_HOME= C:\Program Files\Java\jdk1.6.0_30
2)端口占用问题
原因: tomcat服务器启动所需端口被其他软件所占用
解决办法:
1)把占用端口的软件停止掉(进程杀死)
2)改变tomcat服务器启动端口
找到%tomcat%/conf/server.xml
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
3)CATALINA_HOME环境变量
原因: tomcat在启动后会通过CATALINA_HOME环境变量加装tomcat的根目录下的文件(例如conf、webapps)
解决办法:建议不要设置CATALINA_HOME环境变量
注意:安装版的tomcat会自动设置CATALINA_HOME环境变量设
4.Tomcat服务器目录结构
|-bin: 目录。存放tomcat操作命令。bat是window版本,sh是linux版本。
startup.bat : 后台在调用catalina.bat start
shutdown.bat : 后台在调用catalina.bat stop
|-conf: 目录。存在tomcat服务器软件的配置文件。server.xml文件是核心配置文件。
|-lib:目录。支撑tomcat软件运行的jar包。
|-logs:目录。存在tomcat服务器运行过程中日志信息。
|-temp: 目录。tomct的临时目录,存在临时文件。
|-webapps: 目录。存在web应用的目录
|-work: 目录。tomcat运行目录。存放jsp页面运行过程中产生的临时文件。
5. web应用目录结构(规范)
|- WebRoot: 根目录。一个web应用必须有一个根目录。
|- 静态资源: html+css+javascript+images+xml
|-WEB-INF: 目录。名称是固定写法。
|-classes: (可选) 目录。名称是固定写法。存放class字节码
|-lib: (可选)目录。名称是固定写法。存放jar包。不能有子目录,全部jar包放在根目录下。
|-web.xml: 文件。web应用的配置文件。
注意:
1)不做任何配置的情况下,WEB-INF目录下的文件不能直接通过浏览器访问。
2)在web.xml文件中进行配置,那么WEB-INF目录下的内容就可以被外部访问到!!!
6.web应用部署三种方法
1.第一种
1.直接把web应用拷贝到webapps目录下
默认web应用:ROOT是默认应用。访问默认应用,不需要web应用名称。
默认资源:访问默认资源,不需要web资源名称。
在web.xml文件中配置
<!-- 默认资源-->
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>test.html</welcome-file>
<welcome-file>abc.html</welcome-file>
</welcome-file-list>
问题:tomcat软件和web应用绑定在一起。
解决办法: 把tomcat软件和web应用分离!!!使用到虚拟web应用(虚拟网站)
2.第二种推荐使用
在%tomcat%/conf/Catalina/localhost目录下,添加abc.xml文件
<?xml version="1.0" encoding="utf-8"?>
<!-- 配置虚拟网站
访问web应用名称就是xml的文件名abc
-->
<Context docBase="C:\projects\myweb"/>
7.Tomcat的站点配置
站点的配置:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
name: 表示站点的名称。访问站点就使用站点名称
appBase: 表示站点的根目录。用于存放所有web应用。一个站点下可以包括多个web应用。
如何在tomcat下配置一个站点:
1)修改%tomcat%/conf/server.xml
<!--- 配置一个新的站点: www.baidu.com
name: 站点的名称
appBase:站点的根目录
-->
<Host name="www.baidu.com" appBase="C:\baidu"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
2)修改本地域名和ip的映射文件hosts文件,加上127.0.0.1 www.baidu.com
3)启动tomcat,访问测试
在浏览器访问:
默认站点:http://localhost:8080
新站点:http://www.baidu.com:8080/news/index.html
练习: 在本地tomcat服务器上配置一个新浪站点。域名: www.sina.com.cn