Web后端搭建

目录

一 搭建服务器端

1.1安装服务器软件

1.2检查环境是否配置

1.3安装Tomcat

二 创建并发Web项目

2.1创建一个java项目

三 创建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容器时,就会发生这种情况,一般在这个方法中会写一些清除代码。

/*创建serlvet1.自己创建类,并继承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()*/@Overridepublic void init(ServletConfig config) throws ServletException {System.out.println("init");}@Overridepublic 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"));}*//* 服务器关闭时候调用*//*@Overridepublic void destroy() {System.out.println("destroy");}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/798934.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络实验——学习记录四(TCP协议)

1. 打开TCP服务&#xff1a; nc -e /bin/sh -lv 4499 注释&#xff1a; &#xff08;1&#xff09;nc是Linux下启动通讯服务的命令&#xff1b; &#xff08;2&#xff09;-e表示在nc命令后再执行bin文件夹下的shell命令&#xff0c;启动shell命令会导致所有从TCP连接传递到…

【JavaScript】原型链/作用域/this指针/闭包

1.原型链 参考资料&#xff1a;Annotated ES5 ECMAScript起初并不支持如C、Smalltalk 或 Java 中“类”的形式创建对象&#xff0c;而是通过字面量表示法或者构造函数创建对象。每个构造函数都是一个具有名为“prototype”的属性的函数&#xff0c;该属性用于实现基于原型的继…

【Java+Springboot】------ 通过JDBC+GetMapping方法进行数据select查询、多种方式传参、最简单的基本示例!

一、JDBC如何使用、PostGresql数据库 1、在pom.xml 先引用jdbc组件。 <!--jdbc--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency> 2、在pom.xml 再引用p…

Unity UI 优化技巧

将画布分割为多个 问题:当 UI Canvas 的任何元素发生变化时,都会影响整个 Canvas。 Canvas 是 Unity UI 的重要组成部分。它创建一个网格来表示放置在其顶部的 UI 元素,在 UI 元素更改时重建网格,并调用 GPU 来渲染实际的用户界面。 创建这些网络可能非常昂贵。UI 元素应…

嵌入式Linux驱动开发——汇编点灯

嵌入式Linux驱动开发——汇编点灯 本文章开始记录学习嵌入式Linux的过程&#xff0c;使用的开发板是正点原子的阿尔法&#xff0c;以及左老师的书籍和视频。然后这个系列不会介绍基础知识&#xff08;书上都有&#xff09;&#xff0c;主要是记录思考过程以及需要注意的点。 代…

Ceph学习 -3.存储简介

文章目录 1.存储简介1.1 存储类型1.1.1 储备知识1.1.2 三种存储1.1.3 块存储1.1.4 文件存储1.1.5 对象存储1.1.6 三种存储之间的关系1.1.7 总结 1.2 Ceph简介1.2.1 官方介绍1.2.2 软件特点1.2.3 基本结构1.2.4 应用场景 1.3 小结 1.存储简介 学习目标&#xff1a;这一节&#x…

EasyExcel 校验后导入

引入pom <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.3.3</version></dependency>触发校验类 import com.baomidou.mybatisplus.extension.api.R; import lombok.experimental…

抖音引流私域转化模式1.0现场视频,从抖音源源不断把人加到私域买单

抖音-引流私域转化模式1.0现场视频&#xff0c;从抖音源源不断把人加到私域&#xff0c;让加到私域的粉丝买单 课程内容&#xff1a;抖音引流私域转化模式1.0现场视频&#xff0c;从抖音源源不断把人加到私域买单 - 百创网-源码交易平台_网站源码_商城源码_小程序源码 01.第一…

MySQL从入门到精通——基础篇

文章目录 MySQL基础篇DDL(数据定义语言)数据库操作表操作DQL(数据查询语言)DML(数据操作语言)添加数据更新和删除数据DCL(数据控制语言)增删改用户权限管理角色管理其它非表数据库对象视图VIEW视图的理解视图的优缺点创建视图查看视图更新视图的数据修改、删除视图变量…

Python | Leetcode Python题解之第16题最接近的三数之和

题目&#xff1a; 题解&#xff1a; class Solution:def threeSumClosest(self, nums: List[int], target: int) -> int:nums.sort()n len(nums)best 10**7# 根据差值的绝对值来更新答案def update(cur):nonlocal bestif abs(cur - target) < abs(best - target):best…

LDR6328助力Type-C普及,便捷充电,绿色生活更精彩

随着科技的进步和全球统一接口的需求&#xff0c;Type-C接口正日益受到青睐。越来越多的设备正选择采纳这一先进的接口设计&#xff0c;它的普及无疑在改善着我们的日常生活。 在过往&#xff0c;许多小功率设备如小风扇、蓝牙音箱、桌面台灯以及家用加湿器等&#xff0c;都普遍…

【从零到一手撕脚手架 | 第二节】模块化封装 降低耦合度 封装 axios pinia router

【从零到一手撕脚手架 | 第二节】模块化封装 降低耦合度 封装 axios pinia router Hello大家好我是⛄&#xff0c;前一节我们讲解了脚手架的基础项目搭建。接下来教大家将Vue技术栈常用的工具进行封装&#xff0c;让我们项目的代码更易维护。 项目地址&#xff1a; GitHub&…

OpenHarmony 4.1 Release版本正式发布,邀您体验

春风轻拂的4月&#xff0c;OpenAtom OpenHarmony&#xff08;以下简称“OpenHarmony”&#xff09;4.1 Release版本如期而至&#xff0c;开发套件同步升级到API 11 Release。 相比4.0 Release版本&#xff0c;4.1 Release版本应用开发的开放能力以全新的Kit维度呈现&#xff0c…

vscode 里python 工程打包成exe的方法

方法&#xff1a;auto-py-to-exe 1、安装 pip3 install auto-py-to-exe PS E:\my selfwork> pip3 install auto-py-to-exe Collecting auto-py-to-exeDownloading auto_py_to_exe-2.43.3-py2.py3-none-any.whl (187 kB)|█████████████████████████…

Node.js进阶——Express

文章目录 一、初识Express1、概念2、安装3、使用3、托管静态资源4、nodemon 二、Express路由1、概念2、使用1&#xff09;简单使用2&#xff09;模块化路由 三、Express中间件1、介绍2、语法1&#xff09;基本语法2&#xff09;next函数作用3&#xff09;定义中间件函数4&#…

K8S - Service简介和 1个简单NodePort例子

大纲图 流量方向 如上图&#xff0c; 当用户or 别的service 从k8s 集群外部访问 集群内的services 流量方向有两种 一种是垂直方向&#xff0c; 通过域名 -> Load Balancer -> gateway -> services , 在k8s 一般是通过ingress 来实现&#xff0c; 而ingress 不是本文…

基于JSP SSM的社区生活超市管理系统

目录 背景 技术简介 系统简介 界面预览 背景 随着时代步伐的加速&#xff0c;计算机技术已广泛而深刻地渗透到社会的各个层面。随着居民生活水平的持续提升&#xff0c;人们对社区生活超市的期望和管理要求也越来越高。随着社区生活超市数量的稳步增长&#xff0c;开发一个…

项目:自主实现Boost搜索引擎

文章目录 写在前面开源仓库和项目上线其他文档说明 项目背景项目的宏观原理技术栈与环境搜索引擎原理正排索引倒排索引 去标签和数据清洗模块html文件名路径保存函数html数据解析函数文件写入函数 建立索引模块检索和读取信息建立索引建立正排索引建立倒排索引jieba工具的使用倒…

mysql结构与sql执行流程

Mysql的大体结构 客户端&#xff1a;用于链接mysql的软件 连接池&#xff1a; sql接口&#xff1a; 查询解析器&#xff1a; MySQL连接层 连接层&#xff1a; 应用程序通过接口&#xff08;如odbc,jdbc&#xff09;来连接mysql&#xff0c;最先连接处理的是连接层。 连接层…

SpringCloud Alibaba Sentinel 创建流控规则

一、前言 接下来是开展一系列的 SpringCloud 的学习之旅&#xff0c;从传统的模块之间调用&#xff0c;一步步的升级为 SpringCloud 模块之间的调用&#xff0c;此篇文章为第十四篇&#xff0c;即介绍 SpringCloud Alibaba Sentinel 创建流控规则。 二、基本介绍 我们在 senti…