【Java学习】Tomcat,Servlet

1 概念

协议: HTTP协议 B/S
TCP/IP协议 C/S

C/S: Client Server 客户端/服务器 微信 qq
劣势: 需要安装客户端, 更新麻烦
优势: 对网络环境要求没有那么高, 流畅
B/S: Browser Server 浏览器/服务器 www.baidu.com www.taobao.com -> web应用
优势: 不需要安装客户端, 不需要手动更新
劣势: 对网络环境要求很高

web应用: 服务器中运行的Java程序

服务器: 其他的客户端都可以访问到
1.硬件: 电脑 (网络) 刀片机
2.软件: 不同的软件/程序, 例如: mysql服务器, web服务器

2 tomcat

1 目录结构

bin: 脚本 - 命令
.sh -> linux
.bat -> windows
conf: 配置文件
server.xml
web.xml
lib: 类库 -> JavaEE要使用的类库
servlet-api.jar
jsp-api.jar
webapps: web applications
部署web应用

2 部署方式

1.在外部随意创建一个目录, 放置一些 web 静态资源
将这个目录打包 xx.war 格式
(在服务器启动的情况下) xx.war 复制到 webapps下
应用名就是 war 文件的名字 (hi)

 访问: http://localhost:8081/hi/hi/table.html

卸载: 删除 xx.war 文件
好处: 部署和卸载 都不需要重启服务器

2.在外面随意创建一个目录, 放置一些 web 静态资源
创建一个xml文件 xx.xml
内容:
xml文件移动到 conf/catalina/localhost/
例: 文件夹(haha) hehe.xml
虚拟目录: xml文件的名字

​ 卸载: 删除xml文件 不需要重启服务器
​ IDEA使用的部署方式, 最常用的部署方式

3 常见状态码

​ 200 ok 响应成功
​ 404 not found 资源没有找到
​ 304 访问缓存
​ 500 web应用出现异常
​ 302 重定向 location.href
​ 403 4xx 5xx 3xx

4 web目录结构

1 web应用目录结构

应用 Hello
|- web静态资源 html css js 图片…txt
css/xx.css 目录结构随意
|- WEB-INF: 资源受保护的, 客户端不能直接访问
|- classes(D): java代码编译后类路径
|- lib(D): jar包
|- web.xml: web应用的描述文件

2 web工程的结构

​ src: java相关代码和配置文件
​ web:
​ web静态资源
​ WEB-INF

5 单例模式

程序运行期间, 类只有一个对象
1.构造器私有
2.给外面提供一个静态方法, 用于获得单例对象
3.自己类中定义一个静态的自己类型的成员变量(引用)

// 单例模式: 懒汉模式  饿汉模式
public class Single {
   
    // 懒汉模式: 在静态方法中初始化
    /*private static Single single;*/
    // 饿汉模式: 声明完直接初始化
    private static Single single = new Single();
    // 1.构造器私有
    private Single() {
   

    }
    // 2.给外部提供一个静态方法 - 获得单例对象
    public static Single getInstance() {
   
        if (single == null) {
   
            single = new Single();
        }
        return single;
    }
}

6 Servlet

作用: 接收请求, 返回响应

1 使用步骤

1.继承 HttpServlet 类
HttpServlet extends GenericServlet
实现了service方法
调用service(HttpServletRequest req, HttpServletResponse resp)
判断请求方式, 从而决定调用 doGet 还是 doPost
GenericServlet implements Servlet

public class Demo3Servlet extends HttpServlet {
   
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值