目录
一、web后端开发概述
web开发,就是指从网页中向后端程序发送请求,与后端程序进行交互。
而web服务器的定义也很广,一般人们认为服务器就是运行服务器软件的计算机设备。但这里我们一般指的是运行在计算机上的软件,浏览器可以发送请求,由服务器做出响应。也可以在服务器中部署文件,供用户访问。
web服务器有很多,目前流行的有Tomcat、WebSphere、WebLogic......
二、web后端开发环境搭建
1.安装服务器软件
进入官网下载Tomcat:Apache Tomcat® - Welcome!
注:● tar.gz文件是Linux操作系统下的安装版本
● zip文件是Windows系统下的压缩版本
2.安装JDK
(1)配置两个环境变量------path、JAVA_HOME
这里我们介绍JAVA_HOME环境变量 的配置。桌面找到此电脑, 右键点击属性, 在弹窗中选择高级系统设置, 点击环境变量
注:如果有关于java的JDK安装和path环境配置相关问题,请移步至我的第二篇博客
《一看就会,手把手教学Java环境搭建!_安装java环境-CSDN博客》
(2)安装Tomcat
Tomcat目录介绍:
(3)启动服务器
双击 bin 目录下的 startup.bat 文件:
输入 http://localhost:端口号
或http:127.0.0.1:端口号
或局域网ip:端口号
例如这里我输入该网址 :127.0.0.1:8080
注:只有在服务器启动时,我们才能远程访问他
(4)改变端口号
像上面的网址最后一部分 :8080 有些人会发现他的网页无法正常访问,这很有可能是端口号被占用导致。这里我们推荐下载一款软件:Notepad++ (yingtingw.cn)
在我看来,该软件对程序员来说比起记事本好用一万倍,我们通过该软件的打开方式打开我们解压好的Tomcat安装包里的conf目录的server.xml文件
在第69行修改自己心仪的端口号(范围在1~65535),这里我改为了8088
三、创建web后端项目
1.创建项目
首先在IDEA中创建一个新项目,左侧选择Java Enterprise
勾选 Web Profile
创建项目名字
2.修改设置
注释或删掉pom.xml中有关 org.junit的部分
3.*在IDEA中集成Tomcat*
最后我们点击Apply 应用,OK即可
四、Servlet创建和应用
1.概述
● Servlet是Server Applet的简称,意思为用Java编写的服务器端的程序. 它运行在web服务器中,web服务器负责Servlet和客户的通信以及调用Servlet方法。
● Servlet的作用:
1.接收用户发送的请求数据
2.调用其他的java程序来处理请求
3.根据处理结果,将结果响应给客户端
2.Servlet程序创建与配置
创建一个类继承javax.servlet.http包下的HttpServlet,写出该类的午餐构造,重写如下三个方法
在web.xml中配置Servlet, <servlet>结构不需要改动,只改其中的黑体字部分
这时我们就可以启动该服务器,并在浏览器中进行访问(127.0.0.1:端口号/项目名/配置的变量名)如图就可以访问到了,并在控制台进行展示
3.分析Servlet程序结构
java
package com.dormServer.web;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class DemoServlet extends HttpServlet {
/*
创建javaEE程序
创建一个类,继承HttpServlet,则我们这个类就是一个javaEE程序
在web.xml文件配置,向外提供一个访问地址,即可在浏览器访问,找到相应javaEE程序
*/
//无参构造方法,默认存在,初始化创建的对象
//只被调用一次(始终只创建了一个对象),在第一次访问servlet程序由服务器创建执行
public DemoServlet(){
System.out.println("无参构造方法");
}
/*
init()初始化,在构造方法完成后,立即被执行,完成一些servlet程序的初始化(如:读取配置文件参数)
只执行一次
*/
//没有需要初始化的操作时,不需要重写该方法,服务器会默认调用其父类中的init方法
@Override
public void init(ServletConfig config) throws ServletException {
System.out.println("init");
}
/*
service()接受前端请求,为前段提供服务,每次前端发送请求,就调用service
HttpServletRequest req:表示请求对象,前端提交的数据,都有服务器封装到该对象中
HttpServletResponse resp:表示响应对象,用来向前端响应数据
*/
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("service");
}
//服务器关闭时,想要执行的代码
//没有需要执行的最终的操作时,也可以不用重写,服务器默认调用父类destroy()
@Override
public void destroy() {
System.out.println("destroy");
}
}
因此我们可以得知一个Servlet程序的执行周期
Servlet对象生命周期
创建:
第一访问Servlet程序时,由服务器创建
初始化:
在构造方法执行完成后,调用init()执行一些初始化操作
服务:
每次请求调用service()
销毁: 服务器关闭时,会销毁servlet对象,
并且在销毁servlet对象时,会自动调用destroy(),执行一些最终操作
以上就是关于一个最基本的web后端Servlet程序的创建应用过程,有关前后端交互的更多相关操作敬请期待接下来的更新!!!