从哪里开始呢?


还是从前段认识的朋友开始吧。


前段在圈里认识了一个朋友,当他聊到他用SSH开发了一套系统时,我思想意识中想到SSH应该是一个通讯协议,他用不可置否的语气说:大叔,你从事这一行业也这么多年了,难道不知道SSH?


说来惭愧,从事这行业时间真的不短了,好像没有真的从事过WEB方面的开发,当他说及SSH为Struts、Spring和Hibernate时,我才恍然明白SSH的缩写。事有凑巧,最近在设计一个原型时,垂直型的网站充斥着整个网站,脑子中想到中国医疗的混乱,若老百姓能有一个专业的交流平台,那常识性的小病可以自行解决,于是“斗医”这个词一直停留在脑海,下面就随着它进入我的WEB开发吧。


在开始之前,先忘记各种框架,这里暂不追求各种先进技术,一切都是伴着思维随性前进。我们知道用户使用浏览器(常用的IE、Firefox、Chrome等)查看网页,网页的数据是通过HTTP请求到服务端的,服务端靠着WEB容器(常用的Jetty、Tomcat、Weblogic等)接受HTTP请求,并根据请求获取不同的资源返回给浏览器,如图所示:

225646395.png

第一个问题会映入眼帘,WEB容器是如何解析HTTP请求的呢?这儿可不解答这个问题,这是各种WEB容器最基本的功能,否则就不能称为WEB容器了。但可以明确的是,无论哪种WEB容器,它解析的WEB应用是满足一定规范的,即WEB应用有一个WEB-INF文件夹,它下面有web.xml文件。下面D:\medical\war\WEB-INF\下创建web.xml


【备注】:后面若无特殊声明,该WEB应用均在Windows操作系统下开发



第二个问题,我们使用哪个WEB容器呢?Tomcat吧(关于各种WEB容器之间的优劣性,可以在google上搜索的到)。在http://tomcat.apache.org/download-80.cgi官网上有下载,下载解压放在D盘。


第三个问题,Tomcat如何加载这个medical应用呢?世界上没有无缘无故的爱恨情仇,得让Tomcat找到它吧:在D:\tomcat8\conf\Catalina\localhost\下创建medical.xml,其内容填写:

1
2
< Context  path = ""  docBase = "D:\medical\war"  debug = "0"  privileged = "true"  reloadable = "true"  crossContext = "true"
</ Context >


这就完事了?暂时还没有,试想一下D:\medical\war\WEB-INF\web.xml还是空的呢!其内容填写:

1
2
3
4
5
6
7
<? xml  version = "1.0"  encoding = "UTF-8" ?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
< web-app >
     < welcome-file-list >
          < welcome-file >index.html</ welcome-file >
     </ welcome-file-list >
</ web-app >

这里<welcome-file>index.html</welcome-file>表示进入本应用系统,首先打开D:\medical\war\index.html页面,因为这里没有配置路径,表明是用WEB应用下的index.html。


亲,在index.html中随便输入些东西吧,比如I'm coming....


激动人心的时刻到来了,双击D:\tomcat8\bin\startup.bat脚本,闪烁消失了,j_0012.gif我勒了个去。别紧张,是因为没有设置JAVA环境变量。


【备注】:不会设JAVA环境变量,就问google


1. 去http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk7-downloads-1880260-zhs.html下载个JDK

2. 假设安装在C:\JDK7下

3. 跑到桌面,右击“我的电脑”,选择“属性 > 高级 > 环境变量 > 系统变量 > 新建”

 3.1 新建JDK目录变量: JAVA_HOME <-> C:\JDK7

 3.2 追加Path设置:  Path <-> ;%JAVA_HOME%\bin

 3.3 添加类路径变量: CLASS_PATH <-> .;%JAVA_HOME%\lib


好了,激动人心的时刻再度到来,双击D:\tomcat8\bin\startup.bat脚本,Tomcat服务正常启动后,在chrome中输入http://localhost:8080/medical/,可以看到如下的结果:

235832924.png


再仔细体味一下吧,浏览器的HTTPTomcatTomcatWEB-INF/web.xmlweb.xmlindex.html,index.html返回给浏览器,浏览器解析index.html展显给用户。


【备注】:有可能存在如下的几种情况导致这个例了运行不起来

1. JDK与Tomcat的版本不匹配(这里JDK使用了7u15,Tomcat使用了tomcat8)

2. 8080端口号被占用

若上述没有运行起来可以私信给我。