欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 时评 > JavaEE笔记

JavaEE笔记

2024/10/25 13:27:02 来源:https://blog.csdn.net/Gou_Hao_Liang/article/details/141685933  浏览:    关键词:JavaEE笔记

1.JavaSE java基础语法 核心类库

web后端开发环境搭建

web后端(javaEE)需要在服务器中运行.这样前端才能访问到。

服务器:由java编写的后端服务器,通过接受网页端发来的请求,执行不同操作。

区别:
.xml :

ml结尾的,也是一种标记语言。 设计目的,用来在项目中存储配置信息的,制定好可以使用的哪些标签即可,(以标签信息存储数据)

web.xml :

存储web后端项目配置信息的, 在服务器启动时,由服务器加载读取的。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><!--区别:.xml : ml结尾的,也是一种标记语言。设计目的,用来在项目中存储配置信息的,制定好可以使用的哪些标签即可,(以标签信息存储数据)web.xml : 存储web后端项目配置信息的,在服务器启动时,由服务器加载读取的。--><!--配置servlet程序,把我们开发的servlet程序注册到服务器,由服务器启动时加载,在第一次访问时,有服务器创建对象。--><!--<servlet><servlet-name>demo</servlet-name> /* 定义对象名 */<servlet-class>com.ffyc.dormServer.web.DemoServlet</servlet-class> /*  注册servlet程序 */<init-param>  /* 向servlet中配置参数 */<param-name>count</param-name><param-value>10</param-value></init-param></servlet>/*为servlet程序配置一个访问地址*/<servlet-mapping><servlet-name>demo</servlet-name>  /* 为指定name的servlet程序配置访问地址*/<url-pattern>/demo</url-pattern> /*  配置的供外界访问的地址,*/</servlet-mapping>--><servlet><servlet-name>index</servlet-name><servlet-class>com.ffyc.dormServer.web.indexServlet_fb</servlet-class></servlet><servlet-mapping><servlet-name>index</servlet-name><url-pattern>/index</url-pattern></servlet-mapping>
</web-app>
servlet对象的生命周期:
创建:

第一次访问Servlet程序时,由服务器创建

初始化:

在构建方法执行完成后,调用init()执行一些初始化操作

服务:

每次请求调用service()

销毁:

服务器关闭时,会销毁servlet对象,

并在销毁servlet对象时,会自动调用destroy(),执行一些最终操作。

destroy():当服务器关闭时,自动调用某些操作。

service:提供服务,每次请求servlet都会响应。

doget:处理get请求

dpost:处理post请求

前端向后端发送请求

从前端向后端发送请求,都是http请求 ​ http请求只能发送,超文本内容

一次http请求中包含

请求行,请求头,请求体三部分

请求行:

请求方式,请求的资源地址等等

请求头:

包含客户端的一些环境信息,这些信息都是由浏览器自动发送的,以键值形式传递

请求体:

以表单post方式向后端发送的请求数据,在请求体中包含

get请求:

get请求主要是从后端获取信息,例如网络上的超链接,行后端传递少量信息,获得大量信息 ​ 请求数据在请求地址中直接拼接,所以传输的数据量有限,而且敏感数据不安全

post请求:

post请求主要用于向后端发送大量数据 ​ 请求数据在请求体中,可以传输大量数据,不会在地址中显示,所以相对安全

过滤器

过滤器是javaEE规范中定义的一种技术,可以让请求到达目标servlet之前,先进入到过滤器中,在过滤器中统一进行一些拦截处理, 当处理完成后,可以继续向后执行,到达目标servlet,如果配置了多个过滤器,也可以进入到下一个过滤器.

过滤器的作用:

对servlet发起的请求进行拦截过滤,在进入servlet前进行拦截,

把可以重复的代码提取到过滤器中去。

使用场景:

1.统一编码过滤

2.权限验证

3.跨域过滤

前后端交互

同步请求:

1.通过超链接和表单可以向后端发送请求,后端也可以正常响应内容。通过表单向访问后端的请求方式称为同步请求。

from表单-超链接

同步请求方式:

当网页与后端交互时,前端不能再进行其他操作,当服务器相应回来后,会把整个浏览器的内容覆盖掉。

在前后端交互时,不友好。

异步请求:

2.现在前后端交互请求,使用的是异步请求。

不会打断前端的正常操作。

在使用js中提供的XMLHttpRequest对象,发送和接受响应。

使用异步框架更方便的发送请求,例如axios框架。

axios:

发送异步请求,跨域问题,axios封装

axios基础语法:

①:this.$http.get(地址?Key=value&key2=value1).then(function(response){})

②:this.$http.post("/后端配置地址",key1+“值”+key2+“值”).then(function(response){})

跨域问题:

会出现跨域访问问题,浏览器默认不允许js对象接收来自其他服务器相应的内容。

当协议域名端口其中有一项不同时,就属于跨域访问。

跨域问题是一个前端问题,也可以通过后端解决,在响应头中设置允许跨域访问。

后端向前端响应更多的数据

后端一般情况下将数据封装到对象中, 但是js不认识java对象,

java中toString将对象转为字符串,js接收到后只是普通的字符串,不能使用面向对象方式操作

为了让js能够方便的进行操作,在java中将对象转为json格式的字符串,传递给前端js.

json (javaScript object Notation) javaScript 对象表现形式,是一种js对象表示方式的字符串.

目前json格式 已成为公认的前后端交互的数据标准格式。

在后端把java对象转为js能够认识的json格式。

javaScript object Notation 就是一种固定格式的字符串。

Web会话跟踪

因为http请求是无状态,不携带用户信息的,当用户登录成功后,之后在此与服务器交互时,服务器并不知道是哪个用户发送的请求,来访问服务器。

所以在web开发中,必须要解决此问题.(之后的请求,还需要让后端知道是哪个账号发送的请求)。

1.在登录成功后,在后端为用户生一个称为toekn的字符串(token令牌)

使用jwt组件为管理员生成token字符串.可以携带管理员信息,并且可以加密存储

(toekn令牌)

jwt生成的token有三部分 1.声明,生成类型,加密算法 2.载荷,管理员。 3.签证,结合签核两部分,秘钥 加密生成的(最重要的)

生成类型,加密算法 管理员信息 (id,账号,头像)

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com