初识Servlet

JavaSE部分知识
JavaEE的封装----模拟简易的Tomcat容器(资源的管理 Servlet)

需要的技术
1.语法结构 if for 数组。。。
2.面向对象编程思想---思想
类 对象
属性 方法 构造
3.工具类String
类 "abc"字符串对象
字符串操作 拆分 截取
4.集合ArrayList HashMap
数据结构
性能特点
5.I/O 读/写 Tomcat容器 存储资源 发送请求给这个容器 帮我们找/管理资源

6.基于B/S模型项目
C/S Client/Server 客户端/服务器
想要使用QQ跟大家聊天
1.官网下载一个QQ安装程序
2.当前本地电脑端运行安装程序---> C://program files//QQ
3.与其他客户端交互 需要一个服务端的支持
4.背后需要互联网的支持(HTTP协议 Socket I/O String Swing)
安装程序经常更新---->
维护不好
开发周期
容易产生问题(本地电脑 误操作)
页面比较麻烦
客户端不同的项目不通用---->>>>每一个系统的客户端都需要重新开发一遍
B/S Browser/Server 浏览器/服务器
将客户端的展示变得统一起来
规则----> 一个统一的软件来充当展示"页面" 内容遵循统一的规则
浏览器 只识别一种语言HTML

Socket套接字-----网络连接(桥梁)
I/O流------数据流动
通过自己设计的服务读取一个请求

写一个服务端 服务端的管理 + 服务端里面存储的资源


ServerSocket server = new ServerSocket(9999);//0-65536范围   4000以后
Socket socket = server.accept();//接受
		//System.out.println("你连我干啥呀???");
		//System.out.println(socket);
        //socket可以理解为是一个连接
        //拿到连接以后  目的是为了读取浏览器发送的请求   遵循的是HTTP协议 说白了就是一个字符串

        //想要读取浏览器发送的请求 需要Input/Output
        //  读取I  通过socket获取     读取/写入的单位   字节  字符
        InputStream is = socket.getInputStream();
        //  读取中文不太方便-----字节流 转化成字符流
        InputStreamReader isr = new InputStreamReader(is);//读取中文可以啦
        //  读取是HTTP协议信息  是字符串  一行一行的
        //  为了读取一行一行更加方便  再进行一个包装  BufferedReader类下有一个方法 readLine
        BufferedReader reader = new BufferedReader(isr);
        //上述三行代码的背后体现出一种设计模式----->装饰者模式  递归思想    23种

        String value = reader.readLine();
        while(value!=null && !"".equals(value)) {
            System.out.println(value);
            value = reader.readLine();
        }

        //分析请求协议头种的数据信息
        //数据信息去找资源-----Servlet普通的Java类  其实有好多规则  继承 重写 参数。。。
        //Servlet类(对象--方法--执行--结果)   对象底层的管理机制----反射
        //结果拿到  给浏览器响应回去 String-->HTML形式的规则
        //      浏览器那一边做的事情
        //      浏览器读取响应信息数据  String-->HTML
        //      浏览器内核去解析这个String
        //      相应的位置进行展示(图片 按钮 文字 表格)
posted @ 2020-08-27 12:53  盐盐盐の锅  阅读(168)  评论(0)    收藏  举报