使用Java+NetBeans设计web服务和页面,用Tomcat部署网页
一 安装NetBeans(自动安装jdk)
- 进入oracle的下载界面:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
图 javaDownload.png
- 选择右侧那个NetBeans with JDK 8,下载安装,一路绿灯,在这个过程中已经顺带安装好了Java(jdk1.8.0_171),但是当打开NetBeans IDE的时候,会发现无法创建Java web的项目,因此需要继续安装NetBeans。
- 下载另一个版本的NetBeans,选择包含“Java EE”功能的Java EE或ALL。
https://netbeans.org/downloads/
图 NetBeansDownload.png
- 然后安装呗,一开始有一个额外安装的东西,是两个类似容器的东西,以后你的主机作为服务器发布服务时会用到,一个叫GlassFish Server,另一个是Apache Tomcat,全都勾上。最后注意安装目录和第二步安装的那个IDE的位置要一样
配置Java环境变量
变量名 地址 JAVA_HOME JDK所在目录 CLASSPATH %JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar Path %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin - NetBeans+Java安装完毕。
补充一下GlassFish和Tomcat的区别(来自知乎用户:chainho)
两者本质上不是一类型的东西。Tomcat是Servlet容器,GlassFish是JEE容器。JEE容器必然是包含Servlet容器这一部分功能的。ps:以前版本的GlassFish,其内部的Servlet容器实现就是直接采用的Tomcat。当然,JEE容器提供了更多的功能,同时也有方便的管理控制台可以在界面上进行各种配置和应用部署等,比Tomcat的Manager应用要功能丰富的多。
作者:chainho
链接:https://www.zhihu.com/question/20039000/answer/102719430
来源:知乎
二 创建服务器
- 创建Java web项目,选择Web应用程序
图 选择web应用程序
- 选择GlassFish服务器,版本什么的默认就好了
图 选择服务器
一路next之后就创建好了一个项目啦,项目内容差不多就如下这几个
图 项目内容
这时候这个index.html就是主界面的源码,然后你可以在左侧右键项目名称添加服务、页面等
图 项目添加内容
在添加内容中,可以添加html页面,也可以添加服务,服务就不添加了,添加服务看后续教程,直接使用默认的index.html举例。
图 index.html
- 至此服务器创建完毕
三 发布服务
- 构建.war包。当你添加完index.html页面或者其他页面或者服务之后,想给发布出去,怎么办呢?右键项目,点击“清理并构建”
图 清理并构建
图 构建成功
然后在项目保存的位置中就多了一个dist文件夹,文件夹里有一个.war文件,这是一个类似于压缩包的东西,在服务器部署(发布)的时候用的到。
图 .war
有了这个包之后,NetBeans的使命就结束了,关了它!(不然会和Tomcat冲突) 配置Tomcat。由于是简单的java web服务,不需要使用在线或远程管理功能,我们使用较为方便的Tomcat来部署服务器,首先测试Tomcat的可用性:
- 在Tomcat安装目录下的bin文件夹中打开startup.bat
图 startup.bat
- 好吧一般情况下打不开的,这时候打开cmd,把startup.bat拖进去,打开:
图 startup.bat报错
啥意思?CATALINA_HOME环境变量没有正确定义?看来它需要点东西 - 把cmd关了,打开环境变量,在系统变量添加CATALINA_HOME,路径就放上Tomcat的安装目录,就是上面说到的bin文件夹的上一级(包含bin的那个文件夹),注意不要有分号
- 这时候就懒得打开cmd了,直接双击startup.bat,然后它就运行了
图 Tomcat运行
这时候你的服务器就算是配置好了。随便打开一个浏览器测试一下,输入http://localhost:8080,看看效果
图 服务器打开成功
看到这个页面就算成功了
- 在Tomcat安装目录下的bin文件夹中打开startup.bat
保持服务器开着的状态,然后把第一步得到的.war文件拖(copy)到Tomcat安装目录(没错就是上面那个环境变量的地址)中的webapps文件夹里
图 webapps
刚进去是这样的:
图 拖进去
然后因为服务器开着,过一会儿就自己创建了一个同名的文件夹:
图 创建了文件夹
这时候在http://localhost:8080后面加上/文件夹名,就可以看到index.html页面的内容了,这时候算是部署成功了。
图 加上文件夹名
那别人要怎么访问呢??他们只要将localhost换成你电脑的ipv4地址就行了,用cmd里的ipconfig命令获取该地址。(不过由于是本地服务器,只局限于局域网访问该服务器,并且Tomcat必须保持打开的状态,否则无法访问)
图 IPv4访问
使用Java+NetBeans设计web服务和页面,用Tomcat部署网页的更多相关文章
- java基础76 web服务器之Tomcat服务器
(注:本文是以“压缩版Tomcat”为例,展开描述的) 一.Tomcat服务器的介绍 1.服务器 1.1.服务器的种类 从物理上讲:服务器就是一台pc机器.至少8核/8G以上.内存至少用T来计算.宽带 ...
- Java课程设计---web版斗地主
一. 团队课程设计博客链接 二.个人负责模块和任务说明 负责前后端数据传输 JSP界面的设计 根据后台传来的数据进行页面动态更新 负责Servlet设计 三.自己的代码提交记录截图 四.自己负责模块或 ...
- Java和Tomcat的关系 Java如何发布web服务
https://blog.csdn.net/qq_31301961/article/details/80732669 除了Tomcat还有WebLogic 大型分布式的 如何部署映射 Tomcat使用 ...
- web项目脱离Eclipse在Tomcat部署并配置Eclipse调试
简单来说,把WEB项目打成war包后放到webapps目录下启动tomcat便部署成功了,但是因为与Eclipse没有关联,故而无法Debug调试代码.这时在Tomcat的catalina.sh脚本里 ...
- 应用AXIS开始Web服务之旅(soap web services)——使用三种不同的语言访问创建的Web服务,分别是JAVA、VB、VC
一. 介绍 本文并不是想介绍Web服务的原理.系统架构等,我们假设您已经了解了关于Web服务的一些基本的概念.原理等知识.本文主要是针对那些已经了解Web服务概念,但是还没有亲身体会Web服务所带来令 ...
- 基于 REST 的 Web 服务:基础
代表性状态传输(Representational State Transfer,REST)在 Web 领域已经得到了广泛的接受,是基于 SOAP 和 Web 服务描述语言(Web Services D ...
- Web服务(Apache、Nginx、Tomcat、Jetty)与应用(LAMP、CMS-WordPress&Ghost、Jenkins、Gitlab)
Web服务和应用是目前信息技术领域的热门技术.如何使用Docker来运行常见的Web服务器(包括Apache.Nginx.Tomcat等),以及一些常用应用(LAMP.CMS等).包括具体的镜像构建方 ...
- Docker实战(八)之Web服务与应用
1.Apache 官方提供了名为httpd的Apache镜像,可以作为基础web服务镜像 Dockerfile(安装apache2) FROM httpd:2.4 COPY ./public-html ...
- Webservices-1.web服务定义简介
一.WEB服务定义(摘自维基百科)详情:http://zh.wikipedia.org/wiki/Web%E6%9C%8D%E5%8A%A1 Web服务是一种服务导向架构的技术,通过标准的Web协议提 ...
随机推荐
- 2019南昌网络赛H The Nth Item(二阶线性数列递推 + 广义斐波那契循环节 + 分段打表)题解
题意: 传送门 已知\(F(n)=3F(n-1)+2F(n-2) \mod 998244353,F(0)=0,F(1)=1\),给出初始的\(n_1\)和询问次数\(q\),设每一次的答案\(a_i= ...
- sqli-libs(7) bool盲注
首先打开网页后,发现页面显示outfile, 对不起,看不懂, 就直接加 ' 发现报错了 后来,查看源码得知 他是两个括号括起来的 我们就可以构造我们的payload了, 首先查询当前数据库的长度 ...
- git branch All In One
git branch All In One Git Branch Management https://git-scm.com/book/en/v2/Git-Branching-Branch-Mana ...
- 2020 Google 开发者大会
2020 Google 开发者大会 Google Developer Summit https://developersummit.googlecnapps.cn/ Flutter | Web | M ...
- 如何用 js 实现一个类似微信红包的随机算法
如何用 js 实现一个类似微信红包的随机算法 js, 微信红包, 随机算法 "use strict"; /** * * @author xgqfrms * @license MIT ...
- WebView & iframe
WebView & iframe https://developer.android.com/reference/android/webkit/WebView.html Web-based c ...
- 超强嘉宾阵容——NGK Global启动大会圆满举办
近日,由星盟全球投资公司.灵石团队联合主办的NGK Global全球生态启动大会圆满开幕.大会汇集区块链领域.金融领域.密码学领域.智能算法领域等众多大咖,和NGK Global全球价值共识者共聚一堂 ...
- go-admin在线开发平台学习-3[细节解析]
本章节主要的内容是对go-admin中的一些有趣编码进行分析,为自己以后提供一些借鉴 使用cli方式启动项目 使用cobra[眼镜蛇]完成强壮cli的工具,确保稳定. 使用cli的方式启动项目的好处显 ...
- Python算法_盛最多水的容器(04)
给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) .在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0).找出其中的两条线, ...
- 数据归一化 scikit-learn中的Scaler
1 import numpy as np 2 from sklearn import datasets 3 4 # 获取数据 5 iris = datasets.load_iris() 6 X = i ...