专栏首页RendaJavaWeb - 开发环境搭建和 Shell 编程

JavaWeb - 开发环境搭建和 Shell 编程

开发环境搭建

XshellXftp 工具

下载地址:https://www.netsarang.com/zh/

设置网络连接模式为 NAT 模式

使用 root 用户打开 /etc/sysconfig/network-scripts/ifcfg-eno16777736 文件,添加内容如下:

BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.91.128
GATEWAY=192.168.91.2
NETMASK=255.255.255.0
DNS1=114.114.114.114

使用命令使得配置文件生效:service network restart

JDK 的下载和安装

下载地址:https://www.oracle.com/java/technologies/javase-downloads.html

将下载好的 JDK 安装包通过 Xftp 工具传输到 CentOS 系统中,使用 tar 命令解压即可。

使用 root 用户打开配置文件 /etc/profile,向文件末尾追加内容如下:

export JAVA_HOME=/usr/javajdk
export PATH=$JAVA_HOME/bin:$PATH

保存退出后让文件生效并验证是否配置成功:

source /etc/profile
javac -version
Tomcat 的下载和安装

下载地址:https://tomcat.apache.org/download-80.cgi

将下载好的 Tomcat 安装包通过 Xftp 工具传输到 CentOS 系统中,使用 tar 命令解压即可。

# 启动和关闭方式
startup.sh
shutdown.sh

# 暂时开放防火墙 8080 端口(重启后失效)
/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

使用 root 用户打开配置文件 /etc/profile,向文件末尾追加内容(为了方便后续搭建服务器集群,一般不做这个 tomcat 的环境变量配置):

export CATALINA_HOME=/usr/tomcat
export PATH=$CATALINA_HOME/bin:$PATH

保存退出后让文件生效并验证是否配置成功:

source /etc/profile
startup.sh

将 Web 项目打成 war 包,通过 Xftp 工具将 war 包放在 tomcat/webapp 目录并启动。

MySQL 的下载和安装
# 下载 MySQL 的 repo 源
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

# 安装 rpm 包
rpm -ivh mysql57-community-release-el7-8.noarch.rpm

# 安装 MySQL
yum install mysql-server

# 查看安装结果
rpm -qa | grep mysql

# 启动服务
service mysqld start

# 查看服务状态
systemctl status mysqld

# 查看临时密码
grep password /var/log/mysqld.log

# 使用 root 用户登录并输入临时密码
mysql -u root -p

# 修改临时密码
alter user 'root'@'localhost' identified by 'RendaZhang@666';

# 暂时开放防火墙 3306 端口(重启后失效)
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
图形化界面访问数据库

使用 root 权限登录数据库后选择 MySQL 库:

mysql -u root -p
use mysql;

查看 MySQL 库中的 user 表的 host 值后修改为通配符 %

select host from user where user='root';
update user set host='%' where user='root';
flush privileges;

查看修改结果:

select user,host from user;

启动图形化界面工具 SQLyog 连接访问虚拟机中 MySQL 数据库。

Shell 编程

基本概念

Shell 是一个命令行解释器,可以接收应用程序或用户命令,然后访问操作系统内核

Shell 是一个功能相当强大的编程语言,易编写、易调试、灵活性强

编写第一个程序

使用 vi 工具创建 xxx.sh 的文件。

#!/bin/bash 开头并编写代码后保存。

执行 Shell 程序的方式

方式一:./文件名,此方式需要执行权限。

方式二:/bin/bash 文件名,此方式不需要执行权限。

变量的定义
语法格式

定义变量(等号两边不能有空格):变量=值

撤销变量:unset 变量

定义规则

变量名称可以由字母、数字和下划线组成,但是不能以数字开头,环境变量名建议大写。

不能使用 bash 里的关键字。

中间不能有空格,可以有下划线。

在 bash 中,变量默认类型都是字符串类型,无法直接进行数值运算。

变量的值如果有空格,需要使用双引号或单引号括起来。如果使用双引号可以进行变量连接,如:

#!/bin/bash
name=rendazhang
echo $name # rendazhang
show='Renda Zhang'
echo $show # Renda Zhang
show2="RendaZhang $name"
echo $show2 # RendaZhang rendazhang
常用运算符
算术运算符
# 定义两个变量
ia=5
ib=2

# 打印两个变量的数值
echo "ia=$ia"
echo "ib=$ib"

# 实现加法运算,要求 expr 的 + 两边必须有空格
echo `expr $ia + $ib`
ic=$[ $ia + $ib ]
echo $ic
id=$(($ia+$ib))
echo $id

echo `expr $a - $b`
echo `expr $a \* $b`
echo `expr $b / $a`
echo `expr $b % $a`

a=$b
echo $[ $a == $b ] # 1
echo $[ $a != $b ] # 0
关系运算符
echo $[ $a -eq $b ]
echo $[ $a -ne $b ]
echo $[ $a -gt $b ]
echo $[ $a -lt $b ]
echo $[ $a -ge $b ]
echo $[ $a -le $b ]
流程控制语句
if 判断
#!/bin/bash

# 定义一个变量用于描述考试成绩
score=100
echo $score

# 使用 if 判断
if [ $score -ge 90 ]
then
  echo "考试成绩优秀"
elif [ $score -ge 60 ]; then
  echo "考试成绩合格"
else
  echo "考试不及格"
fi
case 语句
#!/bin/bash

# 提示用户输入 1~4 之间的整数并记录到变量中
echo ”请输入 1 ~ 4 之间的整数:“
read num

# 使用 case 语句进行输出打印
case $num in
  1) echo "选择了 1"
  ;;
  2) echo "选择了 2"
  ;;
  3) echo "选择了 3"
  ;;
  4) echo "选择了 4"
  ;;
  *) echo "无选择"
  ;;
esac
for 循环
#!/bin/bash

# 定义一个变量负责记录累加和
sum=0

# 使用 for 循环计算
for(( i=1;i<=100;i++ ))
do
  sum=$[$sum+$i]
done

# 打印变量数值
echo $sum
while 循环
#!/bin/bash

# 使用 while 循环实现 1 ~ 100 的累加和
sum=0
i=1
while [ $i -le 100 ]
do
  sum=$[$sum+$i]
  i=$[$i+1]
done
echo $sum
函数
#!/bin/bash

# 打印用户输入的两个整数的和
function sum()
{
  s=$[$1+$2]
  echo $s
}

read -p "input num1: " num1
read -p "input num2: " num2

sum $num1 $num2

本文分享自微信公众号 - Renda(Renda_Zhang),作者:Renda Zhang

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-08-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Spring Cloud:视频讲解编程题

    lagou-cloud-gateway:网关微服务,集群环境,端口号分别为:9000、9001

    RendaZhang
  • Zookeeper 服务消费方 NullPointerException

    所以是没有找到 HelloService 的服务提供方提供的实现类,于是回看服务提供方代码发现少加了 com.alibaba.dubbo.config.anno...

    RendaZhang
  • SSM 单体框架 - 前端开发:视频讲解

    前端代码发送给后台的日期数据使用 yyyy-MM-dd HH:mm:ss 的日期格式

    RendaZhang
  • Linux命令(27)——echo命令

    使用-e选项时,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:

    Dabelv
  • DOS常用命令

    剑行者
  • 【Linux_Shell 脚本编程学习笔记五、Oracle JDK1.8 安装shell 脚本】

      脚本和安装包必须在同级目录下才能够安装(脚本没有优化,还可以使用 wget 从网上下载指定版本的 jdk 安装包)

    梅花
  • Mi8刷机若干踩坑

    这个刷机的事情本来挺简单个事,但是我刷面具的时候,哪个面具是个坏包,之后的就触摸不正常了,就是点上去没有反应.很难受我又刷回去了miui然后再刷回来.本...

    云深无际
  • Linux常用命令13 - echo

    echo 命令是 Linux 中最基本和最常用的命令之一。 传递给 echo 的参数被打印到标准输出中。

    叉叉敌
  • 用CMD批处理脚本来守护进程

    Inkedus
  • windows nginx 管理脚本

    用户2657851

扫码关注云+社区

领取腾讯云代金券