一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第13天,点击查看活动详情。
个人主页:HelloCode.
本文专栏:Java零基础指南
如果您觉得手机APP排版不美观,建议使用浏览器打开
阅读如有问题,欢迎指正,一起进步~~
Nginx
概述
-
Nginx是一款服务器软件
-
其核心功能是可以和服务器硬件相结合,从而可以将程序发布到Nginx服务器上,让更多用户浏览
安装
-
上传压缩包:
put nginx压缩包位置
(CRT中按alt+p键进入sftp) -
解压压缩包:
tar -zxvf 压缩包名
-
进入解压目录:
cd nginx解压目录
-
安装依赖环境
yum -y install pcre pcre-devel
yum -y install zlib zlib-devel
yum -y install openssl openssl-devel
yum -y install gcc
-
安装nginx
./configure
make
make install
(安装完会在/usr/local/下有一个nginx目录) -
进入对应目录:
cd /usr/local/nginx/sbin
-
启动nginx服务:
./nginx
停止:
./nginx -s stop
重启:
./nginx -s reload
-
查看nginx服务状态:
ps -ef | grep nginx
-
测试nginx服务:浏览器打开对应Linux服务器ip地址
最后这里在浏览器打开对应ip地址无法访问,解决方法:
第一步,对80端口进行防火墙配置:
firewall-cmd --zone=public --add-port=80/tcp --permanent
第二步,重启防火墙服务:
systemctl restart firewalld.service
然后重新在浏览器中访问你的ip,应该就可以访问了。
发布项目
-
在*/home*下创建一个web目录:
mkdir web
-
将项目上传到该目录下:
put web项目压缩包
-
解压项目压缩包:
unzip web程序压缩包
-
编辑nginx配置文件:
vim /home/nginx-1.18.0/conf/nginx.conf
找到server的大括号范围,修改location的路径
-
进入对应目录:
cd /usr/local/nginx/sbin
-
关闭nginx服务:
./nginx -s stop
-
启动nginx服务并加载配置文件:
/usr/local/nginx/sbin/nginx -c/home/nginx-1.18.0/conf/nginx.conf
-
通过浏览器测试网站
企业开发简介
JavaEE规范
-
JavaEE(Java Enterprise Edition):Java企业版
-
它是由SUN公司领导、各个厂家共同制定并得到广泛认可的工业标准。
-
JavaEE早期叫做J2EE,但是没有继续采用其命名规则。J2EE的版本从1.0开始到1.4结束。而JavaEE版本是从JavaEE 5 版本开始,目前最新的版本是JavaEE 8。
-
JavaEE规范是很多Java开发技术的总称。这些技术规范都是沿用自J2EE的。一共包括了13个技术规范。
-
包括:JDBC, JNDI, EJB, RMI, IDL/CORBA, JSP, Servlet, XML, JMS, JTA, JTS, JavaMail, JAF。
WEB概述
概述
-
WEB在计算机领域中代表的是网络。
-
像我们之前所用的WWW,它是World Wide Web 三个单词的缩写,称为:万维网
-
网络相关技术的出现是为了让我们在网络的世界中获取资源,这些资源的存放之处,我们把它叫做网站。
-
我们通过输入网站的地址(网址),就可以访问网站中提供的资源(不区分局域网或广域网)
资源分类
-
静态资源
网站中提供给人们展示的资源是一成不变的,也就是说不同人或者在不同时间,看到的内容都是一样的。
作为开发者来说,我们编写的HTML, CSS, JavaScript 都属于静态资源。
-
动态资源
网站中提供给人们展示的资源是由程序产生的,在不同的时间或者不同的人由于身份的不同,所看到的内容是不一样的。
作为网站开发者来说,我们编写的JSP、Servlet等都属于动态资源。
系统结构
在之前的学习中,开发的都是Java工程。这些工程在企业中称之为项目或者产品。都是有系统架构的!
-
基础结构划分
CS结构:(Client Server)客户端+服务器的方式(把不同的应用直接安装在客户端上)
BS结构:(Browser Server)浏览器+服务器的方式
-
技术选型划分
Model1模型
Model2模型
MVC模型
三层架构 + MVC模型
-
部署方式划分
一体化结构
垂直拆分结构
分布式结构
微服务结构
tomcat
服务器
-
服务器是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能设备等)提供计算或者应用服务。 服务器具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性。
-
而我们这里所说的服务器,其实是web服务器,或者应用服务器。它本质就是一个软件,通过和硬件相结合,从而达到帮助我们来发布应用的功能,让用户通过客户机访问我们的应用。
-
常用的应用服务器
服务器名称 说明 weblogic 实现了JavaEE规范,重量级服务器,又称为JavaEE容器 websphereAS 实现了JavaEE规范,重量级服务器 JBOSSAS 实现了JavaEE规范,重量级服务器,免费的 Tomcat 实现了jsp/servlet规范,是一个轻量级服务器,开源免费
Tomcat
-
Tomcat是Apache软件基金会的Jakarta项目组中的一个核心项目,由Apache、Sun和其它一些公司及个人共同开发而成。由于有了Sun公司的参与和支持,最新的Servlet、JSP规范总能在Tomcat中得到体现。因为Tomcat技术先进、性能稳定,而且免费,所以深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
-
Tomcat官网:tomcat.apache.org/
-
Tomcat各个版本所需要的支持
下载和安装
-
下载:官网下载
-
安装:直接解压即可
-
目录组成
-
bin:一些二进制可执行文件
-
conf:保存配置文件的路径
-
lib:Tomcat在运行过程中所需要的jar包
-
logs:日志文件
-
temp:临时文件
-
webapps:项目发布目录(一个文件夹代表一个web应用)(ROOT代表根项目)
-
work:工作目录
-
基本使用
-
启动
startup.bat
:Windows下启动执行文件startup.sh
:Linux下启动执行文件 -
停止
shutdown.bat
:Windows下关闭执行文件shutdown.sh
:Linux下关闭执行文件 -
部署项目
在webapps目录下创建一个文件夹
将资源放到该文件夹中
启动tomcat,输入正确路径
常见问题
-
启动问题
启动窗口一闪而过:没有配置jdk环境变量
java.net.BindException:端口8080被占用
-
控制台乱码问题解决
conf-logging.properties
修改
java.util.logging.ConsoleHandler.encoding = UTF-8
Tomcat默认UTF-8,CMD命令窗口默认GBK,将UTF-8改为GBK即可解决乱码问题
IDEA集成Tomcat
-
点击Run -》 Edit Configurations
-
点击Defaults -》 Tomcat Servlet -》 Local
-
点击Configure -》Tomcat Home -》 选择tomcat所在路径
Linux下的安装
-
上传压缩包到/home路径:
put d:/apache-tomcat-9.0.58.tar.gz
-
解压压缩包:
tar -zxvf 压缩包名
-
进入bin目录下:
cd apache-tomcat-9.0.58/bin
-
启动tomcat服务:
./startup.sh
-
使用浏览器测试:浏览器打开对应Linux服务器ip地址:8080
Java WEB项目
-
新建项目模型,选择Java Enterprise
确定JDK版本、Appalication Server版本
-
右键Add Framework Support...
-
勾选Web Appalication选项
项目组成详解
-
src:存放Java源代码
-
web:存放项目相关资源(html、css、js、jsp、图片等)
-
WEB-INFO:存放相关配置的(web.xml等)
IDEA发布项目
-
点击Run -》 Edit Configurations
-
点击Tomcat Server -》 Deployment
Application Context是项目访问路径,/代表默认路径,多个项目中只能有一个默认路径
-
点击Tomcat Server -》 Server
设置关联浏览器
两个Update resources设置
设置JDK、端口号
-
启动Tomcat服务
-
验证结果(浏览器)
通过war包发布项目
-
在项目的web路径下打war包:
jar -cvf myweb.war .
-
将打好的war包剪切到tomcat的webapps路径下
-
启动tomcat服务,自动解压war包
-
验证结果
配置文件
配置默认端口号
-
主配置文件server.xml
<Connector>
标签中,port属性代表Tomcat默认端口号(8080)
http协议默认端口号为80,Tomcat默认端口号与其不一致,所以每次访问网站需要加上端口号
如果是80端口,就不需要加端口号
真正发布网站的时候,都需要将tomcat默认端口号改为80,这样在访问网站的时候就不需要加端口号了
配置虚拟目录
- 作用:可以发布任意目录下的项目
-
编辑server.xml 配置文件,找到
<Host>
标签 -
加入以下内容
<Context path="/mytest" docBase="e:/test" />
path
:访问资源的虚拟目录名称(表示在浏览器地址栏中的访问路径)
docBase
表示需要发布的项目的真实路径
配置虚拟主机
- 作用:可以指定访问路径的名称
-
编辑server.xml 配置文件,找到
<Engine>
标签 -
加入以下内容
name
:虚拟主机名称
appBase
:项目所保存的根路径
unpackWARs
:是否自动解压war包
autoDeploy
:是否自动发布
Context
:同虚拟目录
-
修改hosts文件
绑定IP地址和对应的域名
文件路径:
c:\Windows\System32\drivers\etc