ubuntu18.04从零开始配置环境(jdk+tomcat+idea)到使用idea开发web应用和servlet
昨天吃了亏,搞了一下午才把环境配置好,故此将整个过程记录一下以防日后需要。
注意:因为我的博客模块的原因,所以我把图片压缩了一些,如果有看不清的,
可以 右键图片->在新标签页打开图片
目录:
1. JDK1.8的安装配置
1.1 下载(下载链接)
先点击接受许可协议再点击文件下载。

1.2 解压
#后面的文件名视你下载的文件名而定
1.tar -zxvf jdk-8u181-linux-x64.tar.gz
1.3 移动到指定目录(一般是容易记的地方)
#将解压的文件夹移动到/usr/local下,并且重命名为jdk1.8
1.sudo mv jdk1.8.0_181 /usr/local/jdk1.8
1.4 设置环境变量(关于Linux环境变量的配置方法和区别不再扩展,自行搜索)
1.vim /etc/profile
#如果权限不够可以在命令前面加sudo
2.sudo vim /etc/profile
然后在文件的末尾加入以下内容
#具体位置视你的位置而定,主要的就是JAVA_HOME的位置,其他位置可直接如下
export JAVA_HOME=/usr/local/jdk1.8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=.:${JAVA_HOME}/bin:$PATH
1.5 使配置生效以及检查是否生效
#生效
1.source /etc/profile
#检查
2.java -version
如果设置成功,则会出现JDK的版本信息,如下图

2. Tomcat9.0.12的安装配置
2.1 下载(下载链接)
我下载的是Tomcat9,这个可以跟JDK8兼容,然后往下拉看到图示内容,点击下载

2.2 解压
#后面的文件名视你下载的文件名而定
1.tar -zxvf apache-tomcat-9.0.12.tar.gz
2.3 移动到指定目录(一般是/opt下)
#用sudo 不然权限不够
#此处也一样,直接将解压出来的文件夹移动到/opt下并且重命名为tomcat9
1.sudo mv apache-tomcat-9.0.12 /opt/tomcat9
2.4 更改文件夹的权限(鉴于电脑都是自己用,所以直接把权限改成777也没事,根据你的情况而定)
#此命令在/opt下执行,或直接在/opt下打开终端输入即可
sudo chmod -R 777 tomcat9
2.5 配置环境变量
#切换目录到/opt/tomcat9/bin
1.cd /opt/tomcat9/bin
#用gedit打开吧,不然vim可能不太会用
2.sudo gedit ./startup.sh
打开以后,最后一行是exec "$PRGDIR"/"$EXECUTABLE" start "$@",我们将以下内容添加到它的前面的位置即可
export JAVA_HOME=/usr/local/jdk1.8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=.:${JAVA_HOME}/bin:$PATH
export TOMCAT_HOME=/opt/tomcat9
2.6 启动tomcat服务器并检测是否配置成功
#启动,打开startup.sh这个文件,根据路径而输入命令,或者直接输入
1./opt/tomcat9/bin/startup.sh
当出现下方内容:

代表tomcat服务器启动成功,我们在浏览器输入地址 http://localhost:8080/ ,当浏览器出现下方内容,代表tomcat服务器正常运行了

3. IDEA的下载安装
3.1 下载(下载地址)
下载左边的版本

3.2 解压
1.tar -zxvf ideaIU-2018.2.3.tar.gz
3.3 移动到指定目录(一般还是移动到/opt下)
#具体的文件夹名以你解压的文件夹名为准
1.sudo mv ideaIU-2018.2.3 /opt
3.4 安装完成
后续使用的时候,需要激活,可以在某宝买一个,五块钱,我就是买了 XD,好像是一年有效期
4. IDEA创建web工程
4.1 创建一个新的web工程
File->New->Project
然后按照下图操作,其中2和4都是找到所需的安装路径

点击next之后会让你输入项目名字

然后点击Finish就完成创建了
4.2 web工程的一些基本配置
如下图所示,右键WEB-INF,NEW->Directory
创建两个文件夹classes和lib,作用不解释了,如下图所示,别创建错位置了噢

然后点击左上角File->Project Structrue,之后就按照下图操作。其中5选的两个文件夹是刚才我们所创建的classes

配置完classes文件夹之后,就到lib文件夹,如下图操作

点击之后选择我们创建的lib文件夹,然后继续下图操作即可


至此,web工程的简单配置结束。
4.3 IDEA关联tomcat的配置(灰常重要)
点击绿色小斧头旁边的Add Configuration

出现下图

然后按图示操作

创建好tomcat服务器之后,在上方的命名处重命名就行。
下一步继续按图示操作

点击完之后,出现下图,直接默认的就好,然后点Apply

之后就继续按图操作

在第2步中将那两个东西设置成图中一样,作用也不多说了,值得注意的是,这个第2步是在完成上一步的操作后才出现的选项
至此,tomcat服务器也配置好了,接下来就可以测试了。
4.4 运行测试
我们编辑index.jsp,然后就可以点击绿色小三角运行了。其中有点问题,如下图

这是端口被占用了,因为我们一开始安装tomcat时测试打开的,所以我们先把它关闭,IDEA这边才能继续打开
#直接打开终端输入
1./opt/tomcat9/bin/shutdown.sh
之后继续点击绿色小三角,系统就会自动弹出浏览器访问页面了

5. 创建并运行servlet程序
5.1编写servlet源程序
我们在src文件夹下创建一个新类并继承HttpServlet
然后输入以下代码即可
效果图:
源代码:
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter; public class HelloWorld extends HttpServlet {
private String message; @Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//设置响应内容类型
resp.setContentType("text/html"); //设置逻辑实现
PrintWriter out = resp.getWriter();
out.println("<h1>" + message + "</h1>"); } @Override
public void destroy() {
super.destroy();
} @Override
public void init() throws ServletException {
message = "hello world";
}
}
然后就可以点击绿色小斧头编译了。编译之后会发现我们创建的classes目录下生成了.class文件。
5.2 部署servlet
在WEB-INF目录下web.xml文件的<web-app>标签中添加如下内容:
<servlet>
<!-- 这里的servlet-name和下面的保持一致 -->
<servlet-name>HelloWorld</servlet-name>
<!-- 这里采用完整包名+类名的格式 -->
<servlet-class>HelloWorld</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/HelloWorld</url-pattern>
</servlet-mapping>
5.3 运行测试
点击绿色小三角运行,等控制台输出完毕,浏览器自动打开先前的index.jsp,然后我们在地址栏输入 http://localhost:8080/HelloWorld 即可跳转到我们编写的servlet,如下图

至此,我们终于完成了一系列的安装配置与测试了,如果你看到这里,谢谢你。

附上参考链接:(感谢)
https://blog.csdn.net/yhao2014/article/details/45740111
http://www.cnblogs.com/luoli-/p/9247952.html
https://blog.csdn.net/u011630575/article/details/78490080
ubuntu18.04从零开始配置环境(jdk+tomcat+idea)到使用idea开发web应用和servlet的更多相关文章
- Java开发环境配置(JDK+Tomcat+MyEclipsed)
前言 这个项目一开始,我只能说我把自己整的很无语,所以我只能在调整心态的基础上,重新把思路缕了一遍,好了,接下来就说java运行环境以及发布运行方法还有SSH环境配置. 内容 本次配置用到的安装包: ...
- Ubuntu18.04下配置深度学习开发环境
在Ubuntu18.04下配置深度学习/机器学习开发环境 1.下载并安装Anaconda 下载地址:https://www.anaconda.com/distribution/#linux 安装步骤: ...
- AI应用开发实战 - 从零开始配置环境
AI应用开发实战 - 从零开始配置环境 与本篇配套的视频教程请访问:https://www.bilibili.com/video/av24421492/ 建议和反馈,请发送到 https://gith ...
- ubuntu18.04初始化配置
目录 ubuntu18.04初始化配置 ifconfig sshd smb other vim 配置 最后 ubuntu18.04初始化配置 虚拟机挂了, 又得重新安装配置一遍, 这里记录了我几乎每次 ...
- windows8.1下javaweb环境搭建及基本配置(jdk+tomcat+eclipse)
1.下载安装jdk在无空格的路径下,否则在linux下可能出问题.配置环境变量: a.新建系统变量——JAVA_HOME,值——D:\programming\java\jdk8 // win8下若建为 ...
- Java Web开发环境配置(JDK+Tomcat++IDEA 14)
对于未接触过java web开发的大家而言,应该和我一样对java web编程开发比较迷茫,通过查一些资料,大致清楚了java web开发环境的一些基本配置,未做过相关编程的人员可以看一看,由于我刚接 ...
- ubuntu18.04系统安装+基本环境配置【原创】
平台信息:PC:ubuntu18.04.i5.七彩虹GTX1060显卡.固态硬盘.机械硬盘 作者:庄泽彬(欢迎转载,请注明作者) 说明:在原本的电脑买一个独立显卡,装上去之后,出了各种问题,虽然后面勉 ...
- ubuntu18.04错误配置变量环境导致无法进入系统
1.问题描述 错误配置环境变量(直接在/etc/profile文件末尾添加了export xxx),关机后一直在登录界面循环无法进入系统. ###环境变量的添加是在原有变量之后以冒号(:)分隔加入,并 ...
- 在Ubuntu18.04下配置hadoop集群
服务器准备 启动hadoop最小集群的典型配置是3台服务器, 一台作为Master, NameNode, 两台作为Slave, DataNode. 操作系统使用的Ubuntu18.04 Server, ...
随机推荐
- Python之路【第五篇】:Python基础之文件处理
阅读目录 一.文件操作 1.介绍 计算机系统分为:计算机硬件,操作系统,应用程序三部分. 我们用python或其他语言编写的应用程序若想要把数据永久保存下来,必须要保存于硬盘中,这就涉及到应用程序要操 ...
- SQL server 表信息查询
一.查看所有表的行数select a.name as '表名',b.rows as '表数据行数'from sysobjects a inner join sysindexes bon a.id = ...
- 使用PowerShell实时查看日志文件的变化
开发过程中,会有好多的日志输出到日志文件中了,每次看日志都需要打开,log文件,觉得麻烦 找了个省事的方法 使用PowerShell 使用命令:Get-Content D:\www\webapp1\L ...
- python3 集合 操作方法
今天都是课, 就学这么点 不多说 睡觉睡觉!!! #!usr/bin/env/ python # -*- coding:utf-8 -*- # Author:XiaoFeng list = [1,2 ...
- [FromBody]与[FromForm]区别
[FromBody]与[FromForm]区别 1,fromBody:在cation方法传入参数后添加[frombody]属性,参数将以一个整体的josn对象的形式传递. 2,fromform:在ca ...
- Storm入门(七)可靠性机制代码示例
一.关联代码 使用maven,代码如下. pom.xml 参考 http://www.cnblogs.com/hd3013779515/p/6970551.html MessageTopology. ...
- vue 过滤器 基本用法
使用地点:双花括号插值和v-bind表达式. <div id="app"> <p>{{ message|capitalize}}</p> < ...
- webrtc aecd算法解析一(原理分析)
webrtc的回声抵消(aec.aecm)算法主要包括以下几个重要模块: 回声时延估计 NLMS(归一化最小均方自适应算法) NLP(非线性滤波) CNG(舒适噪声产生) 回声时延估计 这张图很多东西 ...
- [Nuget]Nuget命令行工具安装
下载 地址:https://www.nuget.org/downloads 直接下最新推荐版本(recommended latest)就好了. 是个单一的nuget.exe文件. 安装配置 想要在wi ...
- 跟我一起学opencv 第五课之调整图像亮度和对比度
一.调整图像亮度与对比度 1.图像变换 ---像素变换-点操作 ---邻域操作-区域操作 调整图像亮度和对比度属于像素变换-点操作 公式为:g(i,j) = αf(i,j) + β 其中α>0 ...