Java WEB 学习笔记

Java web 工程结构

Java WEB工程结构

Servlet 生命周期

1.装载web.xml

2.创建 构造函数

3.初始化 init()

4.提供服务service()

5.销毁 destroy()

有却只有一个对象

Java的注解

注解通过@interface关键字定义

在类上使用

元注解**

基础注解可以应用到其他注解上面(作用给其他注解解释说明)

@Retention(注解存活时间)

RetentionPolocy.SOURCE 注解只在源码阶段保留,在编译器进行编译时它将被丢弃忽视

RetentionPolocy.CLASS 注解只被保留到编译进行的时候,它并不会被加载到 JVM 中

RetentionPolocy.RUNTIME 注解可以保留到程序运行的时候,它会被加载进入到 JVM 中,所以在程序运行时可以获取到

@Documented(将注解中的元素包含到 Javadoc 中)

@Target (指定了注解运用的地方)

ANNOTATION_TYPE

CONSTRUCTOR

FIELD

METHOD

@Inherited(如果它的子类没有被任何注解应用的话,那么这个子类就继承了超类的注解)

@Repeatable(可重复的)

预注解

@Deprecated

@Override

@SuppressWarnings

@SafeVarags

@FunctionalInterface

合理的创建标题,有助于目录的生成

直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

初始化加载

init()

load-on-startup

@WebServlet(urlPatterns=""(必须提供地址),loadOnStartup=2)

210 运算结果是 1024.

Http请求结构

在这里插入图片描述
mozilla链接: link

响应的结构

在这里插入图片描述

HTTP 常见状态码

在这里插入图片描述

ContentType 作用

在这里插入图片描述

请求转发与响应重定向

req.getRequestDispatcher("/index").forward(request,response)

请求转发不跳转地址

服务器跳转 只产生一次请求 c - s1 - s2 - c

res.sendRedirect("/index")

响应重定向跳转地址 浏览器端跳转 产生两次请求 c - s1 - c - s2 - c

自定义属性**

请求允许创建自定义属性

设置: request.setAttribute(属性名,属性值)

获取: Object attr = request.getAttribute(属性名)

Cookie

cookie -> 在本地

默认有效期浏览器窗口

Session

Session (用户会话)保存浏览器窗口数据 - > 在服务器 tomcat

通过cookie的sessionId值提取用户数据
在这里插入图片描述

ServletContext 三大作用域对象

HttpServletRequest – 请求对象

HttpSession – 用户会话对象

ServletContext – web应用全局对象

getServletContext

中文乱码

request.setCharacterEncoding(“UTF-8”); -> POST方法第一行

tomcat 8.x默认utf-8 ->GET

配置tomcat /conf/server.xml:
<!-- 对于URIEncoding属性只需要在Tomcat7(包含)以前的版本中设置,Tomcat8无需设置 -->
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>
响应也需要设置utf-8
response.setContentType("text/html; charset=utf-8");

web.xml常用配置

index.html


mvc设计模式(M模型-V视图-C控制层)

servlet — jsp — javabean

处理数据-显示数据-封装数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值