JavaWeb笔记-08-web知识、http协议、tomcat、java画图

1、常见软件系统体系结构 B/S C/S

C/S:客户端/服务器 
    -- 需要编写服务器端程序,以及客户端程序,eg:qq客户端程序

    缺点:软件更新时需要同时更新客户端和服务器。
    优点:安全性高


B/S:浏览器/服务器
    优点:只需要编写服务端程序
    缺点:安全性差

2、WEB资源

web资源介绍
    html:静态资源   --浏览器看的懂 

    JSP/Servlet: 动态资源    --需要转化为静态,使浏览器看的懂
        动态资源可以有变量。

3、web服务器 作用: 接收客户端的请求,给客户端作出回应。

4、tomcat文件解释

bin:可执行文件
conf:配置文件(四个)  
    server.xml 配置服务器信息  eg:修改端号等    
    tomcatuser.xml : tomcat用户文件
    web.xml: Web应用程序描述文件
    Context.xml :Tomcat 公用的环境配置
lib: 库文件 jar包存放
logs:tomcat日志文件
webapps: web程序存放
temp:临时文件
work:自动生成文件

web应用:

静态页面:
    1)在webapps目录下创建一个项目目录(命名不能包含中文和空格)
    2)在项目目录下创建一个html文件

动态网站:
    1)在webapps目录下创建一个项目目录(命名不能包含中文和空格)

    2)在项目目录下创建如下内容
        a:WEB-INF目录 (此文件不允许浏览器访问)
                方式1、-- WEB-INF目录下创建web.xml文件
                  1.web.xml 内容可从ROOT --> WEB-INF -->web.xml 中复制。
                  2.只保留文档声明、和根元素部分

            方式2、-- MyEclipse下创建web项目(需要复制其下的WebROOT目录)
                  使用tamcat服务器自动添加

        b:创建动态或静态页面。
            动态页面后缀: .jsp

配置外部应用:

若项目不在webapps中 ,则需要自己配置
两种方式:插图。

这里写图片描述

配置虚拟主机


可以从浏览中访问到项目,而不是访问本地项目
步骤:
    1)在server.xml中修改端口号为 80
    2)在本机上解析域名为 127.0.0.1
        需要打开C:WINDOWS\system32\drivers\etc\hosts文件
        在最后一行添加:   127.0.0.1   www.xxxx.com

    3)在server.xml中添加 
        <Host name="www.xxxx.com"  appBase="webapps"
             unpackWARs="true" autoDeploy="true">
         </Host>  

    4)重启tomcat,登录即可

Http协议:

客户端与浏览器之间的协议。  理解:两方之间通信的格式

分为:
请求协议:浏览器发给服务器的信息。
响应协议: 服务器对浏览器的回应。

HttpWatch -- 网页数据分析工具(抓包)
功能:查看及分析HTTP请求。
    Cookie、请求参数、请求头信息、响应头信息、响应状态、响应正文等内容。

协议分析:

POST请求有请求体,get不能有请求题  
referer: 可以做统计统计与防盗链

请求行: 多个请求头 -- 头名称:头值   相当于键值对

请求头:
    ****User-Agent: 使用者浏览器信息
    **Host: 主机名
    **Accept-Language:表示可接受的语言 zh-CN(中文)en-US(英文)

    Accept: 表示支持格式
    Accept-Encoding:支持编码
    Connection: 连接情况   Keep-Alive : 短状态连接(连接一小会)
空行
请求体

响应行(协议/版本 状态码 状态码解析)
    状态码:
    200 表示成功、
    302 重定向 指定新的url地址
    304 表示浏览器此刻缓存版本就是最新页面。
        原理:比较last-Modified和if-Modified-Since,若相同,则响应304,表示浏览器
    404 请求资源未找到
    500 资源找到了服务器内部错误(代码异常)
响应头 (key/value格式)
    Content-Type:响应的MIME类型(媒体类型 --文本,图片等)

    last-Modified:最后修改时间
    if-Modified-Since: 把第一次请求页面最后修改时间还给服务器
    Refresh:3;url=http:www.xxx.com   表示三秒后进入url地址
    keywords:搜素引擎优化,方便被搜索到 

    不缓存 ---下面三行合起来表示的
    Expires:-1;
    Cache-Control:no-cache
    Prama:no-cache

空行
响应正文

用java画图

知识点:
Graphics2D类 
    提供对几何,坐标变换,颜色管理和文本布局的更复杂的控制

public static void main(String[] args) throws FileNotFoundException, IOException {

    //得到图片缓冲区    参数为 宽 高 颜色
    BufferedImage bi = new BufferedImage(150, 70, BufferedImage.TYPE_INT_RGB);

    //得到绘制环境 (画图的笔)
    Graphics2D g2 = (Graphics2D) bi.getGraphics();

    //设置背景
    g2.setColor(Color.green);  //设置颜色
    g2.fillRect(0, 0, 150, 70);  //填充图片  参数为 x y 宽 高
    //设置背景边框
    g2.setColor(Color.RED);
    g2.drawRect(0, 0, 150-1, 70-1);

    //设置字体样式    参数分别为 格式 ,类型,大小
    g2.setFont(new Font("宋体",Font.BOLD,18));
    g2.setColor(Color.black); //设置字体颜色

    //将字符串添加到图片上
    g2.drawString("HelloWorld", 3, 50);

    //保存图片  参数分别为 图片缓冲区 图片格式 图片存放路径
    ImageIO.write(bi, "JPEG", new FileOutputStream("E:/a.jpg"));
}

}

猜你喜欢

转载自blog.csdn.net/qq_41307491/article/details/81255767