WEB开发简介
* 当前网络上两种架构
* C/S Client/Server 客户端/服务器 需要下载客户端软件 例子:QQ 快播 暴风影音
* 优点:服务器压力相对比较小,安全性比较高。
* 缺点:需要下载客户端软件,总去更新。
* B/S Browser/Server 浏览器/服务器 不需要下载客户端软件(客户端就指浏览器) 例子:购物网站(淘宝 京东) 12306
* 缺点:服务器压力比较大(硬件比较强)
* 优点:浏览器,不用更新,服务器端去做更新了。
WEB相关知识
* WEB:网页。JavaWeb:使用Java语言来开发网页。
* 静态的WEB资源
* HTML CSS JavaScript
* 动态的WEB资源
* Servlet/JSP
* 静态和动态的区别
* 动态的资源数据是活的,例子:假如说班长登陆淘宝,显示班长的名字。我登陆了淘宝,我的名字。
* 微软 ASP.net
* PHP 小巧(开发网站非常强大,处理大数据)
* RUBY 小日本
* Java语言优点:开发了网站,没有任何优势。优势是服务器端,处理业务(电信,淘宝,银行)。
* 静态Web资源:简单一句话,浏览器能看的懂的。
* 动态Web资源:先需要服务器把它转换成HTML,再给浏览器看。
服务器的简介
* 服务器整体概念:
* 硬件:一台电脑。
* 软件:服务器的软件,Tomcat服务器软件。
* 如果安装了服务器软件了,启动服务器和关闭服务器。假如启动了服务器,怎么访问?
* 访问:http://www.baidu.com 一回车访问百度了
* http:// 代表HTTP的协议
* www.baidu.com 域名(DNS域名服务器注册 .baidu.com 61.135.169.125)
* 最终:http://192.168.1.100:端口号(默认值80)
* 最终:http://192.168.1.100:80/index.html
常见的WEB服务器
* Tomcat(Apache) 开源免费的 开发中应用最广的服务器 支持JSP/Servlet规范 SSH
* JBoss 免费的 支持JAVAEE所有的规范 EJB规范 JSP/Servlet
* Weblogic 原来的公司BEA公司 收费的 大型的服务器 支持JAVAEE所有的规范 被Oracle收购了
SUM公司(Java语言) + 数据库(Oracle MySQL(也被收购了)) + 服务器(Weblogic)
* Websphere 公司的IBM公司 收费 大型的服务器 支持JAVAEE所有的规范
Tomcat服务器
* 下载tomcat服务器,安装版本和解压版本。现在都使用解压版本(7.x)
* 解决文件,放在本地的磁盘上(目录:不要有中文和空格)
* 启动服务器:在tomcat/bin/startup.bat(批处理文件),双击文件。弹出黑色的窗口。服务器成功。(不要把黑窗口关闭)
* 访问服务器的主页:http://localhost:8080 就可以访问tomcat默认主页
* 关闭服务器:(关闭黑窗口,关闭暴力的),温柔的关闭。在bin的目录下,有shutdown.bat。双击该文件,关闭服务器。
常见问题
* 第一个注意:必须安装JDK,必须配置Java_Home环境变量。窗口一闪而过。说明环境变量没配置好。
* 不小心,已经启动了一个服务器,又想启动服务器。端口占用的问题。
* 端口占用的问题:java.net.BindException: Address already in use: JVM_Bind
* 解决占用的问题:
* 先找到占用端口的应用程序,结束掉该应用程序。
* netstat –ano 查看所有占用端口的应用程序,找到程序的PID,要任务任务管理器中结束掉。
* 有一个应用一直占用,一开机就占用。
* 修改端口号(修改tomcat服务器的端口号)。(默认是8080,改成其他的端口号)
* Tomcat服务器的配置文件 -- tomcat/conf/server.xml的文件
* 一般情况下改成80,80端口是HTTP协议的默认端口号,访问可以不写。
* 如果万一占用的80端口,干掉它。系统中的服务要是占用80端口,禁用该服务。
* 如果系统自带的微软服务器IIS(World wide web publish IIS),去系统服务中把服务禁用。
Tomcat目录结构
** bin 可执行文件(启动和关闭)
***** conf 存放的Tomcat配置文件
*** lib 给Tomcat服务器运行时所需jar
*** logs 存放Tomcat运行时产生日志文件。
** temp Tomcat运行时产生临时文件
***** webapps Wab Applicatons(WEB应用们),在该目录下存放就是项目。
***** work JSP翻译成.java的文件,存放在work的目录下
在webapps目录创建静态和动态的WEB资源
* webapps目录下存放的是项目,项目区分静态的WEB资源和动态的WEB资源。
* 静态和动态在webapps的目录下存在的方式不一样。
* 如果静态的WEB资源 -- 在webapps目录创建一个文件(项目名称) -- 直接可以放在静态资源(HTML CSS JS)
* 如果动态的WEB资源
* 在webapps目录下创建一个文件
* 在该文件下创建WEB-INF的目录(名称固定、大写固定)
* 在WEB-INF目录下web.xml的文件(必须要有,有文档声明,根节点和约束,复制一份)
* 在WEB-INF目录下 classes文件夹(.class文件)
* 在WEB-INF目录下 lib文件夹(引入第三方jar包)
Context上下文(虚拟路径)
* 虚拟路径:理解访问路径(默认和项目名称是相同的)。
* 发布到服务器中,作为访问路径。
* 总结:在webapps的目录下的项目的名称其实是虚拟路径(访问路径),虚拟的路径默认情况下和项目名称是相同的。
部署项目(两种方式)
* 直接把项目复制到webapps的目录下 * 原因:需要把你的系统部署到公司的服务器。 * 在tomcat/conf/server.xml -- 在<Host>标签的中间配置虚拟路径(希望找到C盘oa的项目) <Context path="/itcast" docBase="C:/oa" /> * path="项目的虚拟路径(访问路径)" * docBase="指定真实项目的路径" * 也是配置虚拟路径的方式,但是不用去修改tomcat/conf/server.xml。 * 创建一个XML的配置文件,名称可以是任意(例子:hello5.xml),它就会以文件的名称作为虚拟路径(访问路径)。我就会把hello5文件的名称作为虚拟路径。 http://localhost/hello5. * hello5文件书写的内容: * 文档声明 * 直接编写<Context docBase="c:/ob" />
WEB通信
* 访问一个网页,例如www.baidu.com,浏览器首先会去找你本地的hosts文件,如果没有找到,才会去找DNS域内里面找。
配置虚拟主机(了解)