当前位置:网站首页>web开发概述
web开发概述
2022-08-10 01:01:00 【玹之又玹】

点击项目右键,选择第二个添加依赖 ,选择如下图

将Tomcat集成到项目中
1.将工具栏设置显示
2.点击长方形框
进行命名
选择到配置Tomcat的根目录
之后可自行设置端口,在进行项目的部署
最下面便是访问的地址,名字自己取,然后点击应用
通过配置的地址进行访问后端
设置后,代码如果修改会自动更新过去
使用细节
<!--
配置注册serlvet
-->
<servlet>
<servlet-name>login</servlet-name><!--为生成的servlet对象命名-->
<!--配置servlet地址,服务器根据类的地址+反射机制(动态获取类信息,创建对象)-->
<servlet-class>com.ffyc.webback.servlet.LoginServlet</servlet-class>
<load-on-startup>1</load-on-startup><!--值<0,在第一次请求servlet时创建对象,>=0启动时创建-->
</servlet>
<!--
为servlet配置访问地址
-->
<servlet-mapping>
<servlet-name>login</servlet-name>
<url-pattern>/login</url-pattern><!-- http://127.0.0.1:8080/webBack/login -->
</servlet-mapping>

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
/*
后端用来处理登录请求的servlet
1.继承HttpServlet
2.重写方法
Servlet接口,是javaWeb最顶级接口,定义servlet中的方法
abstract GenericServlet implements Servlet
destroy();
init();
abstract class HttpServlet extends GenericServlet
service();
LoginServlet extends HttpServlet 也就遵循servlet规范,请求到服务器时.服务器也要遵照servlet规范调用对应的方法
*/
public class LoginServlet_back extends HttpServlet {
/*
创建阶段
serlvet对象不由我们创建,是由服务器创建的,创建有两种情况:
1.默认的,在第一访问对应的servlet时创建.
2.<load-on-startup>1</load-on-startup> >=0 就会在服务器启动时将servlet创建并初始化.
服务器为每个servlet只创建一个对象(单例的),
*/
public LoginServlet(){
System.out.println("LoginServlet无参构造方法");
}
/*
初始化阶段:
在servlet创建成功后,执行完构造方法后,会立即调用init(),来实现一些初始化操作(只执行一次)
*/
@Override
public void init(ServletConfig config) throws ServletException {
System.out.println(config.getServletName());
System.out.println("init"+config);
}
/*
服务阶段:
对象创建,初始化完成后,一旦有客户端请求,就会执行service(),提供服务.
HttpServletRequest req,(表示请求)
HttpServletResponse resp(表示响应)
*/
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("service");
System.out.println("service"+req);
System.out.println("service"+resp);
}
/*
销毁阶段: 当服务器关闭,servlet在真正的销毁之前,服务器会调用destroy(),掉用的是已经生成的servlet对象的destory()方法执行一些最终的操作
例如打印日志,例如将内存数据保存到硬盘
*/
@Override
public void destroy() {
System.out.println("destroy");
}
}
resp.setContentType("text/html;charset=utf-8");
在doPost方法中容易出现乱码:
1.防止在使用请求时出现乱码,在使用请求前先进行处理
req.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=utf-8");
边栏推荐
- DALL·E-2是如何工作的以及部署自己的DALL·E模型
- Qt的pro文件递归搜寻添加文件
- C# rounding MidpointRounding.AwayFromZero
- Initial attempt at UI traversal
- Solving for the number of mines
- 不是吧,连公司里的卷王写代码都复制粘贴,这合理?
- Experimental support for decorators may change in future releases.Set the "experimentalDecorators" option in "tsconfig" or "jsconfig" to remove this warning
- Unity vertex animation
- sql实战积累
- 【wpf】拖拽的简单实现
猜你喜欢
odoo公用变量或数组的使用
[Turn] Typora_Markdown_ picture title (caption)
什么是一网统管?终于有人讲明白了
Experimental support for decorators may change in future releases.Set the "experimentalDecorators" option in "tsconfig" or "jsconfig" to remove this warning
Research on Ethernet PHY Chip LAN8720A Chip
Unity reports Unsafe code may only appear if compiling with /unsafe. Enable “Allow ‘unsafe’ code” in Pla
MySQL最大连接数限制如何修改
Unity image is blurry after using long image
How to add control panel to right click menu in win7
基于FTP协议实现文件上传与下载
随机推荐
y92.第六章 微服务、服务网格及Envoy实战 -- Envoy基础(三)
卷积神经网络识别验证码
使用 GoogleTest 框架对 C 代码进行单元测试
el-input保留一位小数点
Solidity最强对手:MOVE语言及新公链崛起
Shader Graph学习各种特效案例
嵌入式Qt-实现两个窗口的切换
UI遍历的初步尝试
微信小程序tab切换时保存checkbox状态
How to add control panel to right click menu in win7
Initial attempt at UI traversal
【wpf】拖拽的简单实现
改变社交与工作状态的即时通讯是什么呢?
Pyscript,创建一个能执行crud操作的网页应用
基于SSM实现手机销售商城系统
Unity reports Unsafe code may only appear if compiling with /unsafe. Enable “Allow ‘unsafe’ code” in Pla
[论文阅读] Multimodal Unsupervised Image-to-Image Translation
Problems and solutions related to Chinese character set in file operations in ABAP
Moonbeam网络维护模式(Maintenance Mode)解读
hopscotch game