Web后端搭建

目录

[一 搭建服务器端](#一 搭建服务器端)

1.1安装服务器软件

1.2检查环境是否配置

1.3安装Tomcat

[二 创建并发Web项目](#二 创建并发Web项目)

2.1创建一个java项目

[三 创建Servlet](#三 创建Servlet)


前端程序如何才能访问到后端程序呢,这时候我们就需要web服务器来解决:将后端程序部署到服务器中,这样前端就可以远程访问,并且向前端做出反应

一 搭建服务器端

服务器:可以放置文件有求必应的软件,宏观意义服务器是软件+硬件,连接用户与程序
WEB服务器有很多,流行的WEB服务器有Tomcat 、 WebSphere 、 WebLogic、Jboss。

1.1安装服务器软件

我们选择的是Apache(来源软件项目非盈利组织)的Tomcat,免费的web服务器:Apache的Tomcat,该服务器支持全部JSP以及Servlet规范。
● Tomcat官方站点:http://tomcat.apache.org

tar.gz文件是Linux操作系统下的安装版本 zip文件是Windows系统下的压缩版本
(若未安装JDK,则安装JDK)

1.2检查环境是否配置

设置JAVA_HOME环境变量

JAVA_HOME的值就是 Java 所在的目录

JAVA_HOME 指向的是JDK的安装路径

设置PATH环境变量

PATH环境变量原来Windows里面就有,你只需修改一下,使他指向JDK的bin目录,这样你在控制台下面编译、执行程序时就不需要再键入一大串路径了。

1.3安装Tomcat

解压tomcat压缩文件 打开bin目录下的startup.bat文件

通过 http://127.0.0.1:8080/ 可以访问服务器代表成功

之后关掉服务器

二 创建并发Web项目

2.1创建一个java项目

选择JavaEE下的WebApplication

在idea中集成tomcat进来,并将web后端项目部署到tomcat中

选择Tomcat Server中的Local后选择Configure

注意选择bin 的上一级,这样就完成了Tomcat的集成

再将java项目部署 到Tomcat上

然后点击apply应用

三 创建Servlet

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

Servlet的作用:

1.接收用户发送的请求

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

3.根据处理结果,服务器将响应返回给客户端

3.1创建和使用Servlet

创建一个类继承javax。servlet,http包下的HttpServlet

在web.xml文件配置Servlet

运行Servlet程序

init( ),service( ),destroy( )是Servlet生命周期的方法。代表了Servlet从"出生"到"工作"再到"死亡 "的过程。Servlet容器(例如TomCat)会根据下面的规则来调用这三个方法:

1.init( ),当Servlet第一次被请求时,Servlet容器就会开始调用这个方法来初始化一个Servlet对象出来,但是这个方法在后续请求中不会在被Servlet容器调用,就像人只能"出生"一次一样。我们可以利用init( )方法来执行相应的初始化工作。调用这个方法时,Servlet容器会传入一个ServletConfig对象进来从而对Servlet对象进行初始化。

2.service( )方法,每当请求Servlet时,Servlet容器就会调用这个方法。就像人一样,需要不停的接受老板的指令并且"工作"。第一次请求时,Servlet容器会先调用init( )方法初始化一个Servlet对象出来,然后会调用它的service( )方法进行工作,但在后续的请求中,Servlet容器只会调用service方法了。

3.destory,当要销毁Servlet时,Servlet容器就会调用这个方法,就如人一样,到时期了就得死亡。在卸载应用程序或者关闭Servlet容器时,就会发生这种情况,一般在这个方法中会写一些清除代码。

java 复制代码
/*
  创建serlvet
  1.自己创建类,并继承HttpServlet,这样我们的类也就遵守了javaEE规则
  2.重写父类中init service,destory方法
  3.在web.xml文件中配置Serlvet
 */
public class LoginServelet extends HttpServlet {
    /*无参构造方法,只被调用一次/一个servlet类只被创建一个对象
    什么时候调用:servlet生命周期的开始
    1.第一次向servlet程序发送请求时(默认的)
    2.服务器启动时创建,需要在web。xml中配置<load-on-startup></load-on-startup>,默认值为负数
    * */


    public LoginServelet() {
        System.out.println("无参构造方法");
    }

    /*init初始化ser的,在sevlet对象构造方法执行完毕后执行
     是ser规范中必须调用的方法
     如果没有什么初始化执行的,默认会调用父类中init()*/
    @Override
    public void init(ServletConfig config) throws ServletException {
        System.out.println("init");
    }

    @Override
    public void service(ServletRequest req, ServletResponse resp) throws ServletException, IOException {
        System.out.println("sevice");
        System.out.println(req.getParameter("account"));
        System.out.println(req.getParameter("password"));

    }

    *//* 服务器关闭时候调用*//*
    @Override
    public void destroy() {
        System.out.println("destroy");
    }
相关推荐
布兰妮甜1 分钟前
CSS Houdini 与 React 19 调度器:打造极致流畅的网页体验
前端·css·react.js·houdini
小小愿望14 分钟前
ECharts 实战技巧:揭秘 X 轴末项标签 “莫名加粗” 之谜及破解之道
前端·echarts
小小愿望22 分钟前
移动端浏览器中设置 100vh 却出现滚动条?
前端·javascript·css
fail_to_code22 分钟前
请不要再只会回答宏任务和微任务了
前端
摸着石头过河的石头23 分钟前
taro3.x-4.x路由拦截如何破?
前端·taro
lpfasd12332 分钟前
开发Chrome/Edge插件基本流程
前端·chrome·edge
练习前端两年半1 小时前
🚀 Vue3 源码深度解析:Diff算法的五步优化策略与最长递增子序列的巧妙应用
前端·vue.js
烛阴1 小时前
TypeScript 接口入门:定义代码的契约与形态
前端·javascript·typescript
掘金安东尼2 小时前
使用自定义高亮API增强用户‘/’体验
前端·javascript·github
参宿72 小时前
electron之win/mac通知免打扰
java·前端·electron