Tomcat
来源:互联网 发布:java 面试项目 编辑:程序博客网 时间:2024/06/06 01:27
一、Web开发入门
1.1 引入
之前的程序:java桌面程序,控制台控制,socketgui界面。Javase规范
以后的程序:javaweb程序。浏览器控制,javaee规范
1.2 软件的结构
C/S(Client/Server 客户端-服务器端)
典型应用:QQ软件,飞秋,
特点:
(1)必须下载特定的客户端程序。
(2)服务器端升级,客户端升级。
B/S(Broswer/Server浏览器端-服务器端)
典型应用:腾讯官方(www.qq.com) 百度官网(俗称:网站)
特点:
(1)不需要安装特定的客户端(只需要安装浏览器即可!!)
(2)服务端升级,浏览器不需要升级。
JavaWeb的程序就是b/s软件结构!!!
1.3 服务器端
从物理上来说,服务器就是一台PC机器。8核,8G+,T来计算,带宽100M以上
Web服务器:PC机器安装一个具有web服务的软件,称之为web服务器。
数据库服务器:PC机器安装一个具有数据管理的软件,称之为数据库服务器。
邮件服务器:PC机器安装一个具有发送邮件服务的软件,称之为邮件服务器。
1.4 web服务器软件
web服务的软件的作用:把本地的资源共享给外部访问
1.5 常见的市面上web服务软件
WebLogic BEA公司的产品。收费的支持JavaEE规范
WebSphere IBM公司的产品。收费的 支持JavaEE规范
JBoss RedHat公司的产品。收费的 支持JavaEE规范
Tomcat Apache组织的产品。免费的 支持部分的JavaEE规范(servlet,jsp,JDBC,但ejb,rmi不支持)
二、Tomcat基本使用
2.1下载并安装
(1)到apache官网,www.apache.org http://jakarta.apache.org(产品的主页)
(2)安装板:window(exe、msi) linux(rmp)
压缩版:window(rar,zip)linux(tar,tar.gz)学习时使用
2.2 运行并关闭tomcat
(1)开启软件
A、找到%tomcat%bin/startup.bat,双击
B、弹出窗口,显示信息(不要关闭窗口)
C、打开浏览器,输入以下地址:http://localhost:8080
D、看到一只猫画面,证明软件开启成功
(2)关闭Tomcat
A、找到%tomact%/bin/shutdown.bat,双击
B、打开浏览器,输出以下地址,看到”无法连接”,证明软件关闭成功
2.3tomcat软件使用的常见问题
(1)闪退问题
原因:tomcat软件是Java语言开发得。tomcat软件启动时,会默认到系统的环境变量中查找一个名称叫JAVA_HOME的变量,这个变量的作用就是找到tomcat启动所需的jvm
解决:到环境变量中设置JAVA_HOME的变量 JAVA_HOME=jdk路径
(2)端口占用的错误
原因:tomcat启动所需的端口被其他的软件占用
解决:
A、 关闭其他软件程序,释放所需端口
B、 修改tomcat软件所需端口 %tomcat%/conf/server.xml
(3)CATALINA环境变量问题
原因:tomcat软件启动后,除了查找JAVA_HOME后,还会再查找一个叫CATALINA变量,这个变量的作用是设置Tomcat的根目录
解决:建议不要设置CATALINA_HOME变量,检查如果有的话,清除掉。
2.4 体验tomcat软件作用
webapps目录:tomcat共享目录。需要共享的本地资源放到此目录中。
2.5 URL:全名:统一资源定位符,用于定位互联网的资源
问题:http://localhost:8080/myweb/test.html 看到文件?
http:// 协议。http协议
localhost 域名。为了找到IP地址
本地域名:localhost
外部域名:www.baidu.com
8080: 端口。软件监听的
8080:tomcat默认的端口
3306:mysql数据库的端口
1521:orcal数据库的端口
/myweb:web应用的名称。默认情况下,在webapps目录下找
/test.html:资源名称
三、Tomcat的目录结构
|-bin: 存放tomcat的命令。
catalina.bat命令:
startup.bat -> catalina.bat start
shutdown.bat- > catalina.bat stop
|- conf: 存放tomcat的配置信息。其中server.xml文件是核心的配置文件。
|-lib:支持tomcat软件运行的jar包。其中还有技术支持包,如servlet,jsp
|-logs:运行过程的日志信息
|-temp:临时目录
|-webapps: 共享资源目录。web应用目录。(注意不能以单独的文件进行共享)
|-work: tomcat的运行目录。jsp运行时产生的临时文件就存放在这里
四、Web应用的目录结构
|-WebRoot : web应用的根目录
|-静态资源(html+css+js+image+vedio)
|- WEB-INF: 固定写法。
|-classes: (可选)固定写法。存放class字节码文件
|-lib: (可选)固定写法。存放jar包文件。
|-web.xml
注意:
1)WEB-INF目录里面的资源不能通过浏览器直接访问
2)如果希望访问到WEB-INF里面的资源,就必须把资源配置到一个叫web.xml的文件中。
五、开发动态资源
5.1 静态资源和动态资源的区别
静态资源:当用户多次访问这个资源,资源的源代码永远不会改变的资源
动态资源:当用户多次访问这个资源,资源的源代码可能会发生改变。
5.2 动态资源的开发技术
Servlet:用java语言来编写动态资源的开发技术
Servlet特点:
(1)普通的java类,继承HttpServlet类,覆盖doGet方法
(2)Servlet类智能交给tomcat服务器运行!!!(开发者自己不能运行)
5.3手动编写步骤:
(1)编写一个servlet程序,继承HttpServlet
package gz.itcast.d_servlet;
import java.io.IOException;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/*
* 第一个servlet程序
*/
public classHelloServlet extends HttpServlet{
@Override
protected voiddoGet(HttpServletRequest req, HttpServletResponseresp) throwsServletException, IOException {
//解决中文乱码问题
resp.setContentType("text/html;charset=utf-8");
//向浏览器输出内容
resp.getWriter().write("这是第一个servlet程序,当前时间为:"+newDate());
}
}
(2)找到HelloServlet类的字节码,然后把其拷贝到tomcat的一个web应用中WEB-INF/classes目录下
(3)在当前web应用下的web.xml文件配置Servlet
<!-- 配置一个servlet程序-->
<servlet>
<!--servlet的内部名称-->
<servlet-name>HelloServlet</servlet-name>
<!--servlet类名:包名+简单类名-->
<servlet-class>gz.itcast.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<!--servlet的内部名称,和上面的名称保持一致!!!-->
<servlet-name>HelloServlet</servlet-name>
<!--servlet的访问名称:/名称-->
<url-pattern>/hello</url-pattern>
</servlet-mapping>
(4)启动tomcat服务器,进行访问
访问servlet:http://localhost:8080/myweb/hello
六、工具开发动态资源
6.1
(1)创建webproject(javaweb工程)
(2)在webRoot下建立静态资源文件
(3)在src下建立动态资源文件
new ->Servlet(servlet的代码生成器)
写pacakge->class名->修改mapping url
(4)关联tomcat服务器
(5)部署webproject应用(拷贝web应用到tomcat的webapps目录下)
(6)启动tomcat服务器
(7)访问servlet http://localhost:8080/day08_web/hello
总结:web入门
1、 web服务器作用:共享本地资源给外部访问
2、 tomcat服务器,基本操作
3、 编写一个规范的web应用
4、 如何编写一个动态资源(手动+工具)
- Tomcat
- Tomcat
- Tomcat
- tomcat
- TOMCAT
- tomcat
- tomcat
- tomcat
- TOMCAT
- Tomcat
- tomcat
- Tomcat
- Tomcat
- tomcat
- Tomcat
- Tomcat
- Tomcat
- tomcat
- 树莓派WEB服务器(Boa)CGI编程入门
- 关于python构造函数
- c++ c 时间戳获取 秒级 微秒级 纳秒级别
- 彻底搞定NIO(一)
- fiddler,他和其他抓包软件有什么区别,如何使用fiddler进行抓包
- Tomcat
- vue+axios+springboot+redis 实现session 共享
- input回车事件
- 使用Travis进行持续集成
- 戴尔poweredge r730服务器配置以及安装系统
- 448. Find All Numbers Disappeared in an Array
- Java中的关键字和保留字
- Alias: Potteryable precursor polymer
- android 语音即时通讯之录音、播放实现