JavaWeb笔记—part1—初识Web和Servlet基础知识
一,B/S和C/S
C/S:(client/server)客户端/服务器结构。
- 特点:必须给每个客户端部署一份应用程序,一般在局域网内针对特定的客户群使用。
- 优点:由于客户端代码在本地的远古所以运行速度快,交互好。
- 缺点:维护升级麻烦,客户端数目有限。
- 编程技术:java(awt/swing,swt);winform。
B/S
- 特点:客户端只需要浏览器,程序员只需将代码部署到web服务器中,客户端就可以通过浏览器访问。
- 优点:维护升级方便,客户端数目众多
- 缺点:速度相对较慢,交互没有C/S好。
- 编程技术:PHP;javaWeb;Asp.net。
二,WebServer和webapp
2.1 什么是WebServer?什么是Web应用程序
先说web应用程序,web应用程序就是程序员开发的一种利用网络访问的应用程序,一般是B/S结构,用户只需要浏览器就可以访问,不需要专门给用户安装或者部署一份应用程序。例如,网上商城,当当网上书城等。
那么WebServer(worlf wide web sever)Web服务器,它作为一个容器,我们只有将web应用程序部署到web服务器里面,它才能正常运行。apache 的Tomcat就是个web服务器。我们可以把web服务器比作一个医院,那么web应用程序就类似于医院中的各个科室,当用户访问web应用程序时,在浏览器输入相应的url,此时就是客户端向web服务器发送了一个请求,那么由部署在web服务器里的web应用程序做出相应处理后,再由web服务器给客户端一个应答,这就好比某个人骨头受伤,那么就先要先去医院挂号,再去相应科室,看好病之后再办理出院手续。
总结一下两者之间的关系,web服务器包含web应用程序,web服务器给web应用程序的运行提供支持,web应用程序依赖于web服务器。
那么我们就是要学习javaweb就是要学习怎样开发出符合规范的web应用程序,web服务器的使用,以及怎样将这个web应用程序部署到we服务器上。
2.2 规范
jsp/servlet规范是java开发web应用程序的技术,是sun公司制定的用java开发web应用程序的规范,由于servlet规范的提出早于jsp,所以一般servlet版本要高于jsp版本。
2.3Tomcat
-
目录结构
-
bin
bin目录存放
bin目录下有两个非常重要的命令1,startup.bat用来启动tomcat服务。2,shutdown.bat用来停止服务。
-
lib
lib目录下存放tomcat服务器的核心jar包和规范jar包
-
config
config目录下存放tomcat的配置文件,例如tomcat-user.xml我们可以在这里配置tmcat的管理员账户,server.xml可以配置端口号,虚拟目录等,catalina.properties在这里进行相应配置后解决中文乱码问题。
-
log:日志文件。
-
temp:临时文件,缓存文件
-
webapps(重要)
我们开发的web应用程序就在此处,除此之外还有五个默认的目录
- docs:是有关tomcat的介绍和相关文档。
- examples:tomcat提供的小程序案例。例如servlet,jsp,websocket等。
- host-manager:管理文件,进行host管理,管理自己服务器。
- manager:管理文件,进行 Server Status 和 Applications 管理,对服务器和其他应用进行启动、重启、关闭等操作,对 Session、JVM 性能参数等进行监听并管理。
- ROOT:根目录,即访问 localhost:8080,也就是tomcat的控制台,进入控制台之后也可以跳转到其他目录。
除了这五个默认目录我们的项目目录也放在此处:
- WebPrjName(自己项目的目录结构)
- WEB-INF
- lib:此项目的驱动程序jar包。
- web.xml:此项目的servlet配置(如果我们修改了其中的内容建议重启Tomcat服务器)
- classes:servlet+javaBean
- 其他资源:包括DHTML(HTML和CSS和JS)和一些图片
- jsp页面
- WEB-INF
-
work:在客户端第一次访问jsp页面时,tomcat将后缀位.jsp文件转译成.java文件,然后编译成.class文件,存放在work文件夹下面。
-
-
进入tomcat控制台,其实也就是访问ROOT里面的index.jsp页面。注:需要配置java_home化境变量。
先启动服务,例如在bin目录下点击startup.dat,之后再浏览器输入以下:
http://localhost:8080
或者
http://127.0.0.1:8080
-
配置管理员账号,配置后就可以在控制台登录管理员,对应用程序进行管理。
那么我们依照以下路径apache-tomcat-9.0.56-window-x64->config->tomcat-users.xml
进入后用编辑器打开这个xml文件找到
<role rolename="tomcat"/>
<role rolename="role1"/>
<user username="tomcat" password="<must-be-changed>" roles="tomcat"/>
<user username="both" password="<must-be-changed>" roles= "tomcat, role1"/>
<user username="role1