yum -y install java-1.8.0-openjdk* 安装jdk8
耐心的等待jdk的安装,大概2分钟左右,出现下面标志,即代表安装成功
-
2,检查jdk是否安装成功
命令行里输入 java -version 出现下面标示,可以看到我们的jdk版本 1.8.0_222
==========================================================================
我们第五步已经在linux服务器上成功的安装了jdk,接下来就是要想办法把qcl80.jar传到服务器了。可能有同学要问了,你部署服务器,不要在linux服务器里安装tomcat吗,其实我们用springboot开发出来的jar包,已经有内置的tomcat了。所以我们不用再部署tomcat了,只需要把qcl80.jar这个文件上传到服务器,然后用java命令启动即可。
我们上传文件到Linux服务器用下面这个软件
你只需要去百度下你电脑对应系统的安装包,安装即可。具体怎么安装这里就不教大家了。
1,打开FileZilla软件, 链接服务器
2,去服务器根目录看看
3,上传文件到home文件里,如果在父亲根目录没有home文件,可以自己新建。
到这里我们就成功的上传qcl80.jar到服务器了。下面就教大家如何在服务器里启动我们的项目。
===============================================================================
1,首先重复上面第四步登录服务器。然后在服务器里输入
cd.. #用来返回服务器根目录
ls #显示当前根目录有那些文件
cd home #进入home文件
ls #显示home文件里都有那些子文件,可以看到我们的qcl80.jar
2,启动java项目
java -jar qcl80.jar
3,项目启动成功,出现下面的标示,即代表项目启动成功
4,访问我们服务器的项目
通过上图可以看到,我们通过公网ip+8080端口,可以成功的访问到我们服务器的数据了。
-
我们再用手机浏览器试试
可以看到我们在手机浏览器里也可以访问到后台数据了。你把上面的这个网址发给你朋友,你朋友应该也可以访问到数据了。
到这里我们就成功的把一个java项目部署到服务器,并成功的可以让任何人访问了,但是有个问题,你用公网ip做域名,很容易被封的,基本上能成功访问几次以后,就会被拒绝访问了
所以我们接下来还要讲解如何通过域名访问我们的服务器
我会把这些录制成视频来给大家做讲解,
讲解视频地址:https://study.163.com/course/courseMain.htm?courseId=1209428915
=======================================================================
我们在做域名绑定之前,需要你先自己去注册一个域名,比如我注册的域名是:“www.saibanmall.com”,我这里还是以腾讯云为例
-
1,登录腾讯云后台,找到自己的域名列表,点击解析
-
2,添加解析规则
-
3,绑定自己服务器的公网ip到解析规则
-
4,我们主要设置下面两个解析规则
这样把我们服务器公网ip和域名绑定以后,就可以通过域名访问我们的服务器了,效果如下。
再来看下手机浏览器访问的效果
到这里我们就成功的部署好我的后台服务器了,但是还有几个问题
-
1,小程序上线的话需要https请求,所以我们后面还会讲我们的服务器如何支持https
-
2,我们通过java -jar qcl80.jar部署的java项目,不能后台运行。所以我们后面还会讲如何让我们的java项目常驻后台运行。
================================================================================
我们通过上面的方法,会有一个问题,就是我们命令行窗口关闭时,会导致java项目停止,所以我们要通过脚本实现java项目在后台长期运行。
springboot生成的jar在阿里云的linux服务器后台运行
通过创建stop.sh , start.sh ,run.sh这三个脚本文件来实现后台长久运行springboot
这里我把运行的qcl80.jar ,start .sh,stop.sh ,run.sh都放在home下的jar目录下
- 1,创建stop.sh
vim stop.sh 创建文件然后把下面内容复制进去,一定要把qcl80.jar替换成你的jar
#!/bin/bash
PID=$(ps -ef | grep qcl80.jar | grep -v grep | awk '{ print $2 }')
if [ -z "$PID" ]
then
echo Application is already stopped
else
echo kill $PID
kill $PID
fi
- 2,创建start.sh,
这里我们用80端口,这样可以直接通过ip访问,不用再输端口了
vim start.sh 输入这个命令后然后把下面的内容复制进去
#!/bin/bash
nohup java -jar qcl80.jar --server.port=80 &
- 3,创建run.sh
整合了关闭和启动的脚本:run.sh,由于会先执行关闭应用,然后再启动应用,这样不会引起端口冲突等问题,适合在持续集成系统中进行反复调用。
把下面内容复制进去,一定要注意复制时不能少东西
#!/bin/bash
echo stop application
source stop.sh
echo start application
source start.sh
- 4,start .sh,stop.sh ,run.sh都创建后
./run.sh 运行run.sh脚本
如果遇到没有权限运行的问题,就在run.sh所在目录下执行
chmod u+x *.sh 这样就ok了。
执行完以后,我们可以去nohup.out文件中查看启动的log
cat nohup.out 这个命令可以查看jar启动的log
这个时候我们的项目就启动了,就可以通过下面这个网址访问项目了:http://saibanmall.com/
上面start.sh,stop.sh,run.sh如果觉得写起来麻烦的话,也可以直接获取我写好的。
最后的内容
在开头跟大家分享的时候我就说,面试我是没有做好准备的,全靠平时的积累,确实有点临时抱佛脚了,以至于我自己还是挺懊恼的。(准备好了或许可以拿个40k,没做准备只有30k+,你们懂那种感觉吗)
如何准备面试?
1、前期铺垫(技术沉积)
程序员面试其实是对于技术的一次摸底考试,你的技术牛逼,那你就是大爷。大厂对于技术的要求主要体现在:基础,原理,深入研究源码,广度,实战五个方面,也只有将原理理论结合实战才能把技术点吃透。
下面是我会看的一些资料笔记,希望能帮助大家由浅入深,由点到面的学习Java,应对大厂面试官的灵魂追问
这部分内容过多,小编只贴出部分内容展示给大家了,见谅见谅!
- Java程序员必看《Java开发核心笔记(华山版)》
- Redis学习笔记
- Java并发编程学习笔记
四部分,详细拆分并发编程——并发编程+模式篇+应用篇+原理篇
- Java程序员必看书籍《深入理解 ava虚拟机第3版》(pdf版)
- 大厂面试必问——数据结构与算法汇集笔记
其他像Spring,SpringBoot,SpringCloud,SpringCloudAlibaba,Dubbo,Zookeeper,Kafka,RocketMQ,RabbitMQ,Netty,MySQL,Docker,K8s等等我都整理好,这里就不一一展示了。
2、狂刷面试题
技术主要是体现在平时的积累实用,面试前准备两个月的时间再好好复习一遍,紧接着就可以刷面试题了,下面这些面试题都是小编精心整理的,贴给大家看看。
①大厂高频45道笔试题(智商题)
②BAT大厂面试总结(部分内容截图)
③面试总结
3、结合实际,修改简历
程序员的简历一定要多下一些功夫,尤其是对一些字眼要再三斟酌,如“精通、熟悉、了解”这三者的区别一定要区分清楚,否则就是在给自己挖坑了。当然不会包装,我可以将我的简历给你参考参考,如果还不够,那下面这些简历模板任你挑选:
以上分享,希望大家可以在金三银四跳槽季找到一份好工作,但千万也记住,技术一定是平时工作种累计或者自学(或报班跟着老师学)通过实战累计的,千万不要临时抱佛脚。
另外,面试中遇到不会的问题不妨尝试讲讲自己的思路,因为有些问题不是考察我们的编程能力,而是逻辑思维表达能力;最后平时要进行自我分析与评价,做好职业规划,不断摸索,提高自己的编程能力和抽象思维能力。
AKcXClok-1714402482394)]
[外链图片转存中…(img-0pFV62iL-1714402482394)]
3、结合实际,修改简历
程序员的简历一定要多下一些功夫,尤其是对一些字眼要再三斟酌,如“精通、熟悉、了解”这三者的区别一定要区分清楚,否则就是在给自己挖坑了。当然不会包装,我可以将我的简历给你参考参考,如果还不够,那下面这些简历模板任你挑选:
[外链图片转存中…(img-esqy6zQB-1714402482394)]
以上分享,希望大家可以在金三银四跳槽季找到一份好工作,但千万也记住,技术一定是平时工作种累计或者自学(或报班跟着老师学)通过实战累计的,千万不要临时抱佛脚。
另外,面试中遇到不会的问题不妨尝试讲讲自己的思路,因为有些问题不是考察我们的编程能力,而是逻辑思维表达能力;最后平时要进行自我分析与评价,做好职业规划,不断摸索,提高自己的编程能力和抽象思维能力。