JavaEE(1):web后端开发环境搭建和创建一个Servlet项目

web后端(javaEE)程序需要运行在服务器的,这样前端才可以访问得到

web后端开发:

服务器?

解释1:服务器就是一款软件,可以向其发送请求,服务器会作出一个响应。可以在服务器中部署文件,让他人访问

解释2:也可以把运行服务器软件的计算机也可以称为服务器

首先:

要安装服务器软件

1、安装Tomcat

去官网下载:http://tomcat.apache.org

2、安装JDK

去官网下载:Java Downloads | Oracle

配置两个环境变量

第一种:PATH环境变量(bin目录)

1.打开设置,找到系统里的系统信息,再点开高级系统设置

2.再在第二个的系统变量中找到path并单击path后打开编辑

3.然后点击新建将自己的jdk的路径目录(bin目录的上一级根路径)加到环境变量即可(一定要点应用按钮)

第二种:JAVA_HOME环境变量(bin的根目录)

1.还是按照上面步骤先找到环境变量

2.在系统变量直接点击新建

变量名就是:JAVA_HOME

解压安装tomcat

Tomcat的目录层次结构

1.在bin目录中 双击 startup.bat文件启动Tomcat服务器

2.在浏览器输入 http://localhost:端口号(初始值:8080)

或http:127.0.0.1:端口号

或局域网ip:端口号

若出现此页面,安装完成!

其次:

创建web后端项目

1.创建javaWeb项目

2.发布web应用到服务器

发布web后端项目到tomcat中

在idea中集成tomcat(修改代码后,会自动重新部署到tomcat中)

Servlet是Server Applet的简称,意思为用Java编写的服务器端的程序. 它运行在web服务器中,web服务器负责Servlet和客户的通信以及调用 Servlet方法。

javaEE程序(Servlet)的作用:

1.接收用户发送的请求数据

2.调用其他的java程序来处理请求

3.根据处理结果,将结果响应给客户端

创建javaEE程序

创建一个类 继承 HttpServlet,我们这个类就是一个javaEE程序

在web.xml文件配置,向外提供一个访问地址,就可以在浏览器中访问,找到相应的javaEE程序

四个要重写方法:

1.无参构造方法,默认是存在,初始化创建的对象

只被调用一次(始终只创建了一个对象),在第一次访问servlet程序由服务器创建执行

2.init() 初始化 在构造方法执行完成后,立即被调用执行,完成一些servlet程序的初始化(例如,读取配置文件中的参数) 只执行一次

3.service() 用来接收前端请求,为前端提供服务的

每次前端发送的请求,都会调用service(),多次调用

HttpServletRequest req:表示请求对象,前端提交过来所有的数据,都由服务器封装在此对象中。 HttpServletResponse resp:表示响应对象,用来向前端响应数据

4.destroy() 在服务器关闭时,如果我们的程序想要执行某些操作,就可以在destroy方法中实现

web.xml文件配置:

<servlet>元素用于注册Servlet,它包含有两个主要的子元素:<servlet-name>和<servlet-class>,分别用于设置Servlet的注册名称和 Servlet的完整类名。 一个<servlet-mapping>元素用于映射一个已注册的Servlet的一个对外访问路径,它包含有两个子元素:<servlet-name>和<url-pattern>,分别用于指定 Servlet的注册名称和Servlet的对外访问路径。

url-pattern配置模式:"/"代表当前web应用的根目录

Web.xml文件为web应用的配置文件,它必须放在web应用目录WEB-INF目录下。

Web.xml文件用于对web应用下的web资源进行配置,服务器在启动时会读取web.xml文件中的内容。

servlet生命周期

创建(无参构造方法):

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

初始化:

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

服务:

每次请求调用service()

销毁:

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

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

前端向后端发送http请求

超链接、提交表单 都是发送http请求

http请求包含三部分:

请求行:包含http请求方式,请求资源名称,http版本

请求头:包含主机地址,以及客户端的一些环境信息,以键值对的形式传递.

请求体:表单post方式提交的数据

请求分为:

get请求:传少量数据,获得大量数据

传递的参数,在请求地址?后面 键=值&键=值

post请求:用表单向后端携带大量数据的,不在地址中显示

Get方式与post方式的区别:

Get方式主要是从服务器获取信息;POST方式主要是想服务器提交信息

Get方式,在通过URL提交数据,数据在URL中可以看到;POST方式,数据放置在请求体中提交。

GET方式提交的数据大小受限制一般1kb(不同浏览器也会有不同);而 POST方式则没有此限制。

过滤器:

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

作用:对服务器web资源进行拦截(权限控制,通过拦截资源进行权限控制,是否可以访问)

过滤器的使用场景:

1.统一进行编码过滤

2.权限验证

3.跨域过滤

过滤器用来实现通用的功能,减少代码冗余,提高可维护性

一个过滤器可以配置给多个资源使用

一个资源也可以配置多个过滤器,按照配置顺序调用

相关推荐
考虑考虑1 天前
Jpa使用union all
java·spring boot·后端
用户3721574261351 天前
Java 实现 Excel 与 TXT 文本高效互转
java
浮游本尊1 天前
Java学习第22天 - 云原生与容器化
java
渣哥1 天前
原来 Java 里线程安全集合有这么多种
java
间彧1 天前
Spring Boot集成Spring Security完整指南
java
间彧1 天前
Spring Secutiy基本原理及工作流程
java
Java水解1 天前
JAVA经典面试题附答案(持续更新版)
java·后端·面试
洛小豆1 天前
在Java中,Integer.parseInt和Integer.valueOf有什么区别
java·后端·面试
前端小张同学1 天前
服务器上如何搭建jenkins 服务CI/CD😎😎
java·后端
ytadpole1 天前
Spring Cloud Gateway:一次不规范 URL 引发的路由转发404问题排查
java·后端