Java自学第5课:Java web开发环境概述,更换Eclipse版本
1 Java web开发环境
前面我们讲了java基本开发环境,但最终还是要转到web来的,先看下怎么搭建开发环境。

这个图就是大概讲了下开发和应用环境,其实很简单,对于一台裸机,win7 系统的,首先第1步,先安装jdk,再安装服务器软件,再安装数据库,最后安装IDE就行。
2 安装JDK
我们前几课都是用的书上资源给的链接的Eclipse版本和JDK,下面是截图:

里面有jdk1.8,eclipse neon版和中文包。
我们打算试一试java web一书时,发现这个版本没法新建web项目,所以这个版本不行,得更换其他版本。
更换IDE首先还是得看下JDK,一看,视频里也不是用的1.8,而是10.0.1,所以还是得先安装JDK
视频里给了JDK的官网下载目录,这里什么版本都有。
Java Archive | Oracle

点击10的版本,进入下载页面

点击下载,结果还要登录才行,老费劲啊。

只能注册个账号了。

登录后下载,就是这么个压缩包文件

然后开始安装,安装前,卸载之前的jdk8,再把环境变量删除掉。

还是指定这个位置,安装完后,还要继续安装jre环境,也指定到这个位置即可。
安装完后,cmd下运行java -version是可以通过的,但javac不行,这时候就需要配置环境变量。
打开系统环境变量path一看,jdk安装时会自动增加一个
C:\Program Files (x86)\Common Files\Oracle\Java\javapath;
先不管他,先新建系统变量JAVA_HOME
C:\Programs\Java\jdk-10.0.2

然后在path后面直接加上
;%JAVA_HOME%\bin
我们刚说的C:\Program Files (x86)\Common Files\Oracle\Java\javapath;不用删除。

设置好后,cmd输入javac试试

这就安装成功了。
讲到这里,视频给了个网站
常见问题检索系统
这是明日提供的开发环境下载地址,早知道这个,我就不用下载半天了,还花了积分。
3 安装Eclipse
java web一书中用的是eclipse-jee-2018-09-win32-x86_64.zip,现在是2023年了,去eclipse官网看了一圈,这个版本已经不显示下载链接了。

最早只能是2019-09版本,真是R了G了。经过一段时间的努力搜索,发现其实2018的还是挂载网上的,只是没给出明显链接而已,下面给出网站
2018-09 R | Eclipse Packages
只是这个网速真的是慢啊,回头把文件挂载资源里,让大家下载更方便。
其实已经有人挂载资源了,但字节数不对,官网是338M,他挂的是500多M,也不知道有啥问题。害我花了50积分。
![]()
由于我们已经安装了neon版本,或者说解压缩并使用了neon版本,现在需要清除一下。
直接删除eclipse文件夹后,还需要在用户文件夹下删除两个自动生成的文件夹

把上面的擦屁股操作完成后,解压缩新下载的2018-09版本,解压后不用安装就可以直接使用了。


然后会弹出对话框,选择workspace路径

所有的项目文件都将放在workspace下。指定完之后就进入欢迎页面

直接X掉欢迎页面,然后点工具栏第1个,新建,就弹出新建对话框

如果是Java项目,就新建java项目,但是要是java web,就得选dynamic web project
选完以后next,然后输入项目名称test1

然后finish,就新建好了,在项目浏览器中会显示当前项目

这就说明eclipse安装好了。
如果双击点击eclipse图标报错,说没有找到java环境,那么就是jdk没安装好。或者是jdk安装版本不对,或者是环境变量没设置好。

4 安装tomcat
java web还需要有服务器。
首先打开tomcat apache官网
https://tomcat.apache.org/

下载这个Index of /dist/tomcat/tomcat-9/v9.0.12/bin

大小是10M
下载完毕后,解压缩,免安装即可使用。当然我们这里没有验证是否安装好,后面结合项目一起做。
5 启动项目
新建项目我们前面已经做过了。
下面是项目页面,我们切换到servers下,点击蓝色超链接

弹出对话框,找到tomcat 9.0 点击next

然后指定路径,next

之后把当前工程添加到tomcat下,选择project后点击add

就变成这个样子

然后就可以点击finish了,之后在servers下就会这样显示

这时候服务器是stop的,需要重置。
先新建一个jsp文件

然后就是这样

之后启动tomcat

之后看console下,如果最后有server startup in xxx ms 就说明启动了。

之后用浏览器打开

这说明页面已经发布成功了。
常见错误:如果在eclipse点击tomcat启动栏 的小绿箭头时候提示

如果有这个提示,说明当前电脑中某个软件和tomcat的端口号冲突了,可以在tomcat文件夹下找到
tomcat-conf-sever.xml文件修改即可。

在这里修改就行,比如8080改为8181

修改端口号后,需要重新在eclipse里配置tomcat,然后在打开页面把8080换为8181即可访问。
相关文章:
Java自学第5课:Java web开发环境概述,更换Eclipse版本
1 Java web开发环境 前面我们讲了java基本开发环境,但最终还是要转到web来的,先看下怎么搭建开发环境。 这个图就是大概讲了下开发和应用环境,其实很简单,对于一台裸机,win7 系统的,首先第1步,…...
[网鼎杯 2020 青龙组]AreUSerialz
[网鼎杯 2020 青龙组]AreUSerialz <?phpinclude("flag.php");highlight_file(__FILE__);class FileHandler {protected $op;protected $filename;protected $content;function __construct() {$op "1";$filename "/tmp/tmpfile";$content…...
使用Kotlin与Unirest库抓取音频文件的技术实践
目录 摘要 一、Kotlin与Unirest库概述 二、使用Kotlin和Unirest抓取音频文件 1、添加Unirest依赖 2、发送HTTP请求获取音频文件 3、保存音频文件 三、完整代码示例 四、注意事项 结论 摘要 本文详细阐述了如何使用Kotlin编程语言与Unirest库抓取网络上的音频文件。首…...
gdb调试常用命令
基本命令 1)进入GDB #gdb test test是要调试的程序,由gcc test.c -g -o test生成。进入后提示符变为(gdb) 。 2)查看源码 (gdb) l 源码会进行行号提示。 如果需要查看在其他文件中定义的函数,在l后加上函数名即可定位到这…...
CH11_重构API
将查询函数和修改函数分离(Separate Query from Modifier) function getTotalOutstandingAndSendBill() {const result customer.invoices.reduce((total, each) > each.amount total, 0);sendBill();return result; }function totalOutstanding() …...
UPLOAD-LABS1
less1 (js验证) 我们上传PHP的发现不可以,只能是jpg,png,gif(白名单限制了) 我们可以直接去修改限制 在查看器中看到使用了onsubmit这个函数,触发了鼠标的单击事件,在表单提交后马上调用了re…...
WordPress相关文章推荐
首先 WordPress 本身并没有相关文章的推荐功能,网站之所以需要这样的功能出于两个原因,一方面是推荐相关的内容越优质,访客的留存和继续阅读将会增强,同样从优化角度来说会更加有利于搜索引擎抓取时对页面质量的提升,毕…...
【QML】Qt和QML获取操作系统类型
1. Qt获取系统类型 //方法 QSysInfo::productType()//举例: if(QSysInfo::productType() "windows") {qDebug() << "windows system"; }官方说明: [static] QString QSysInfo::productType() Returns the product name of …...
CSS 显示、定位、布局、浮动
一、CSS 显示: CSS display属性设置元素应如何显示;CSS visibility属性指定元素应可见还是隐藏。隐藏元素可以通过display属性设置为“none”,也可以通过visibility属性设置为“hidden”。两者的区别:visibility:hidden可以隐藏某…...
Java 学习笔记
文章目录 一、集合1.1 List1.1.1 ArrayList1.1.2 Vector1.1.3 LinkedList 1.2 Deque1.3 Set1.4 Map1.4.1 HashMap1.4.2 LinkedHashMap 1.5 注意事项 二、函数式接口和 Lambda 表达式三、方法引用3.1 静态方法引用3.2 实例方法引用3.2 特定类型的方法引用3.4 构造器引用 四、Str…...
项目实战:优化Servlet,把所有围绕Fruit操作的Servlet封装成一个Servlet
1、FruitServlet 这些Servlet都是围绕着Fruit进行的把所有对水果增删改查的Servlet放到一个Servlet里面,让tomcat实例化一个Servlet对象 package com.csdn.fruit.servlet; import com.csdn.fruit.dto.PageInfo; import com.csdn.fruit.dto.PageQueryParam; import c…...
Go语言函数参数
文章目录 Go语言函数参数1. **函数参数的定义**:2. **参数的数量**:3. **参数的数据类型**:4. **参数的命名**:5. **参数的传递**:6. **参数的传递方式**:7. **空白标识符**: Go语言函数参数 在…...
【遍历二叉树的非递归算法,二叉树的层次遍历】
文章目录 遍历二叉树的非递归算法二叉树的层次遍历 遍历二叉树的非递归算法 先序遍历序列建立二叉树的二叉链表 中序遍历非递归算法 二叉树中序遍历的非递归算法的关键:在中序遍历过某个结点的整个左子树后,如何找到该结点的根以及右子树。 基本思想&a…...
数模之线性规划
线性规划 优化类问题:有限的资源,最大的收益 例子: 华强去水果摊找茬,水果摊上共3个瓜,华强总共有40点体力值,每劈一个瓜能带来40点挑衅值,每挑一个瓜问“你这瓜保熟吗”能带来30点挑衅值,劈瓜消耗20点体力值,问话消耗…...
【C++】AVL树的4中旋转调整
文章目录 前提一、AVL树的结构定义二、AVL的插入(重点)1. 插入的结点在较高左子树的左侧(右单旋)2. 新节点插入较高右子树的右侧(左单旋)3.新结点插入较高右子树的左侧(先右单旋再左单旋&#x…...
【MATLAB源码-第69期】基于matlab的LDPC码,turbo码,卷积码误码率对比,码率均为1/3,BPSK调制。
操作环境: MATLAB 2022a 1、算法描述 本文章介绍了卷积码、Turbo码和LDPC码。以相同的码率仿真这三种编码,并对比其误码率性能 信源输出的数据符号(二进制)是相互独立和等概率的; 信道是加性白高斯噪声信道&#…...
Java获取时间戳、字符串和Date对象的相互转换、日期时间格式化、获取年月日
获取时间戳(自1970年1月1日经历的毫秒数值) package org.example;import java.util.Date;public class Main {public static void main(String[] args) {Date date1 new Date(1699540662210L);System.out.println(date1.getTime());Date date2 new Dat…...
用c语言实现矩阵转置
下面是在 C 语言中实现矩阵转置的示例代码: #include <stdio.h> #define ROWS 3 #define COLS 3 void transpose(int matrix[ROWS][COLS]) { int temp; for(int i0; i<ROWS; i) { for(int j0; j<i; j) { temp matrix[i][j]; matrix[i][j] matrix[j]…...
蓝桥杯官网练习题(移动距离)
题目描述 X 星球居民小区的楼房全是一样的,并且按矩阵样式排列。其楼房的编号为 1,2,3, 当排满一行时,从下一行相邻的楼往反方向排号。 比如:当小区排号宽度为 6 时,开始情形如下: 1 2 3 4 5 6 12 …...
不止于“初见成效”,阿斯利康要让数据流转,以 AI 带动决策智能
“阿斯利康数字化成果在进博会上引人注目,令我感到非常高兴。”这是阿斯利康代表的感慨。 数字化建设目标是利用先进技术来提高企业运营效率,降低成本。在第六届进博会的7.2 B2-01展区,阿斯利康不仅展示了全球领先的生物医药和医疗器械成果&a…...
CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...
GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...
VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP
编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...
