idea中java及java web项目的常见问题

news/2024/9/18 15:08:01/ 标签: java, intellij-idea, 前端

1、乱码问题,主要有几处地方,需要检查。
①确保文件编码,其实主要就是在idea启动文件中,增加了 -Dfile.encoding=UTF-8的设置
在这里插入图片描述
②编辑器默认编码,都改为UTF-8
在这里插入图片描述
③Tomcat的运行配置,编码也改为UTF-8,同样使用:-Dfile.encoding=UTF-8
在这里插入图片描述
④解决cmd中的乱码问题,注册表中,增加CodePage页,路径如下图:双击startup.bat时也不会乱码了。
在这里插入图片描述

2、idea中web项目的创建步骤:
①新建一个java工程。
在这里插入图片描述
②添加web framework支持
在项目名称上连按两次shift,弹出界面。
在这里插入图片描述
点Add Framework Support,选择web即可添加。中文界面名称可能为:添加框架支持
注意项目类型不要用空项目,不然Framework的检测可能会出错,导致,添加框架支持时,找不到web选项。
3、web支持添加后,添加tomcat的依赖库,核心是将Tomcat的lib文件夹添加到项目的库中:
在这里插入图片描述
4、编写第一个servlet程序,使用注解方式。
在工程的src中,添加一个包,如com.rainpet,添加一个java类,如Demo1。图如下:
在这里插入图片描述

注意:文件名和类名一致。

代码如下:

java">package com.rainpet;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;@WebServlet("/Demo1")
public class Demo1 extends HttpServlet {String message="hello";@Overridepublic void init() throws ServletException {//super.init();this.message="hello world 2322";System.out.println("init 执行了2222!");}@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//super.doGet(req, resp);resp.setContentType("text/html;charset=utf-8");req.setCharacterEncoding("utf-8");PrintWriter out = resp.getWriter();out.println("The Parameter are 222222222  123123:"+req.getParameter("name1")+" message222222222666:"+this.message);//out.println("The Parameter are :");}
}

5、tomcat的部署路径,application context就是项目预览时的访问路径,如我的访问路径就是http://localhost:8080/web2:
在这里插入图片描述
页面已经跑起来了:
在这里插入图片描述
6、war的打包问题:
在这里插入图片描述
使用方法:
在这里插入图片描述
选择合适的Artifact,Build即可在对应的输出目录中找到war文件啦。
在这里插入图片描述
找到文件:
在这里插入图片描述
部署到tomcat根目录下即可,比如我的Tomcat:
在这里插入图片描述
启动tomcat环境,访问http://localhost:8080/web2_war/Demo1即可。
在这里插入图片描述
访问时,其实是自动解压缩war文件,文件名决定访问路径。

有其他常见问题我再更新~~


http://www.ppmy.cn/news/1525286.html

相关文章

创建一个 `systemd` 服务文件来管理 uWSGI 启动、停止和其他维护任务

编写 systemd 服务文件可以帮助你管理和自动化你的应用服务。在 CentOS 系统中,你可以创建一个 systemd 服务文件来管理 uWSGI 启动、停止和其他维护任务。下面是详细的步骤和示例。 ### 1. 创建服务文件 首先,在 /etc/systemd/system 目录下创建一个新…

linux-L5.linux查看应用占用的资源top

启动 top 命令: 打开终端,输入 top 并按回车键。 查看进程信息: 默认情况下,top 会显示系统的整体资源使用情况,包括 CPU、内存、磁盘 I/O 和网络 I/O 等信息。然后它会列出当前运行的进程,以及它们分别占…

vueCropper裁剪图片(不模糊)以及记录使用方法

需求:上传限定比例的图片。前端框架是vue3 element plus。 问题:使用vueCropper后比例固定。但是上传后的图片很模糊 vueCropper官网 解决办法 vueCropper中有一个full和high两个参数,记得开启 const options: any reactive({img: , // 原…

react 动画_样式处理

动画 在日常开发中,页面切换时的转场动画是比较基础的一个场景 当一个组件在显示与消失过程中存在过渡动画,可以很好的增加用户的体验 在 react中实现过渡动画效果会有很多种选择,如 react-transition-group, react-motion&…

如何利用 CSS 渐变实现多样化背景效果

前言 总在平常看到像这样的图片 背景是如何实现的呢 背景效果的多样性和美观性直接影响用户体验。CSS 渐变为设计师提供了一种强大且灵活的方法来创建引人注目的背景。渐变是颜色之间平滑过渡的效果,通过调整渐变类型和设置,你可以轻松实现从简单到复杂…

全面认识AI Agent:一文读懂AI智能体的架构指南

在人工智能的快速发展中,AI Agent(人工智能代理或智能体)正逐渐成为研究和应用的热点。AI Agent不仅仅是一个简单的自动化工具,它能够感知环境、做出决策,并执行任务以实现特定的目标。本文将详细介绍AI Agent的概念、…

华为OD机试 - 开源项目热度榜单(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 2024E卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试真题(Python/JS/C/C)》。 刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,…

算法手撕面经系列(1)--手撕多头注意力机制

多头注意力机制 一个简单的多头注意力模块可以分解为以下几个步骤: 先不分多头,对输入张量分别做变换,得到 Q , K , V Q,K,V Q,K,V对得到的 Q , K , V Q,K,V Q,K,V按头的个数进行split;用 Q , K Q,K Q,K计算向量点积考虑是否要添…

mac 电脑 git credential osxkeychain问题之二

git credential osxkeychain问题,无法拉取最新代码,failed to get:-128 此处应输入电脑登录密码 1.问题描述 不知道是系统还是brew进行了更新,启动项目后 git pull 无法拉取最新代码,git项目git pull 操作时突然提示:…

【uni-app】命令行创建 uni-app 项目

命令行创建 uni-app 项目 优势 通过命令行创建 uni-app 项目,不必依赖 HBuilderX,TypeScript 类型支持友好。 命令行创建 uni-app 项目: vue3 ts 版 👉国内 gitee 下载github 下载 # 通过 git 从 gitee 克隆下载 git clone…

使用 PyCharm 新建 Python 项目详解

使用 PyCharm 新建 Python 项目详解 文章目录 使用 PyCharm 新建 Python 项目详解一 新建 Python 项目二 配置环境1 项目存放目录2 Python Interpreter 选择3 创建隔离环境4 选择你的 Python 版本5 选择 Conda executable 三 New Window 打开项目四 目录结构五 程序编写运行六 …

基于单片机的水产养殖饲料自动投喂系统

文章目录 前言资料获取设计介绍功能介绍设计清单具体实现截图系统框架图设计获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机…

Qt, 堆栈窗体, 布局管理, 控件插入, 子布局插入

StackDlg(QWidget *parent 0); ~StackDlg(); private: } ; QListWidget *list; QStackedWidget *stack; Qlabel *labell; QLabel *label2; Qlabel *label3; 在文件开始部分添加以下头文件&#xff1a; #include <QListWidget> #include <QStackedWidget>…

C# WinForm 中 DataGridView 实现单元格cell 能进编辑状态但是不能修改单元格的效果

在Windows Forms&#xff08;WinForms&#xff09;开发中&#xff0c;DataGridView 控件是一个功能强大的组件&#xff0c; 用于显示和管理表格数据。无论是展示大量数据&#xff0c;还是实现交互式的数据操作&#xff0c; DataGridView 都能提供多样的功能支持&#xff0c;比如…

弘扬中华优秀传统文化

中华优秀传统文化是中华民族的宝贵财富。在新时代&#xff0c;弘扬中华优秀传统文化具有重要意义。本文将探讨如何传承和弘扬中华优秀传统文化。 一、中华优秀传统文化的内涵 传统美德&#xff1a;仁、义、礼、智、信等传统美德是中华民族的精神支柱。 文学艺术&#xff1a;诗…

苹果CMS影视程序被举报侵权?有效解决方案指南

在当今数字时代&#xff0c;影视版权问题成为了许多网站面临的主要挑战。如果你使用苹果CMS进行影视内容管理&#xff0c;可能会遇到版权举报的问题。幸运的是&#xff0c;有一种有效的解决方案可以帮助你应对这些挑战——苹果CMS插件&#xff0c;它能够屏蔽原视频内容&#xf…

namp拓展功能——nse脚本

前言: 最近在写一个需求&#xff0c;需要使用 nmap 获取指纹信息的同时&#xff0c;获取 http 信息的响应体&#xff08;如果是 http 协议的情况下&#xff09; 并行并非不可&#xff0c;但是nmap本身就有对http协议的探测 nmap的nse脚本 nmap 在 -sV 的命令下&#xff0c;本…

第二章算法设计题

1设线性表存放在向量A[arrsize]的前elenum个分量中&#xff0c;且递增有序。试写一算法&#xff0c;将x插入到线性表的适当位置上&#xff0c;以保持线性表的有序性&#xff0c;并且分析算法的时间复杂度。 【提示】直接用题目中所给定的数据结构&#xff08;顺序存储的思想是…

说说相机标定?

相机标定 什么是相机标定基本原理标定方法标定流程 相机标定是计算机视觉和图像处理中的一个重要过程&#xff0c;它主要用于确定相机的内部参数和外部参数&#xff0c;以便在后续的图像处理和计算机视觉应用中能够更准确地进行图像重建、三维重建、目标跟踪等操作。 什么是相机…

【DataSophon】Yarn配置历史服务器JobHistory和Spark集成historyServer

目录 一、概述 1.1历史服务器JobHistory 1.2 Spark历史服务器HistoryServer 二、集成配置 一、概述 1.1历史服务器JobHistory 为了查看程序的历史运行情况&#xff0c;需要配置一下历史服务器。方便在xxxx:8088查看历史任务运行日志信息。 1.2 Spark历史服务器HistoryServ…