Have the good day
Have the good day

JAVA Web 工程,从创建到部署

 

JAVA Web 工程,从创建到部署

 

本文记录在不使用框架的情况下(基本功别忘了),在 IDEA 中开发 Web 工程以及最后发布到服务器的过程


 

JAVA Web 工程(1.新建项目)
JAVA Web 工程(2.设置目录)

一般设置好项目文件夹所在,名字按需要起就可以,其他可以用缺省值

Maven 基础及 IDEA 创建 Maven 项目范例

 

Maven 基础及 IDEA 创建 Maven 项目范例

 


Maven 是一款用 Java 语言编写的软件开发项目管理工具

 

Maven 的两个核心功能:

  • 依赖管理
    • 传统做法,我们必须将工程所依赖的 jar 包复制到工程的依赖库目录,或公共的依赖库目录,缺点明显:
      1. 若每个工程使用各自的依赖库,会重复占用存储空间
      2. 若使用一个公共依赖库
        • 每个工程都会引入大量用不到的依赖
        • 常发生版本冲突
      3. 使用、维护依赖库的操作繁琐
    • Maven 可以帮用户进行依赖管理,通过在 pom.xml 配置文件中添加所需 jar 包的 “坐标” ,即可为工程引入依赖
      • 工程通过配置文件,引入本地依赖库中的指定 jar 包
      • 本地没有的包,通过网络从 MavenRepository 库中下载
  • 项目构建
    • 项目从编译、测试、打包、安装,部署整个过程都可以由 maven 进行处理。

 

使用厂商 yum 源安装 MySQL

 

使用厂商 yum 源安装 MySQL

 


MySQL 被收购后,业界担心其开源前景,由此诞生了 MariaDB 。

乌尔夫·米卡埃尔·维德纽斯(瑞典语:Ulf Michael Widenius,1962年3月3日-),常昵称作蒙提(Monty),芬兰程序员与企业家,开放源代码数据库 MySQL 的主要设计者,同时也是 MySQL AB 公司的创始成员和现任 MariaDB 的首席技术官。MariaDB 是以 Monty 的小女儿 Maria 命名的,而 MySQL 是以他另一个女儿 My 命名的。

Linux笔记_基础_2

 

Linux笔记_基础_2

 


 

  • 增删用户、改密
    • useradd [用户名]
      • 创建用户
    • passwd
      • 修改当前用户密码
    • passwd [用户名]
      • 修改指定用户密码
    • userdel [用户名]
      • 删除指定用户,但保存用户目录
    • userdel -r [用户名]
      • 删除指定用户,并删除用户目录
  • 切换用户
    • su [用户名]
      • 切换用户,当前路径不变
      • 只能获得用户的执行行权限,不能获得环境变量
    • su - [用户名]
      • 切换到用户,并切换到该用户的用户目录
      • 既能获得该用户的执行行权限,也能获得其环境变量
  • 查询用户
    • id [用户名]
      • 查看用户基本信息
    • whoami
      • 显示当前用户名
    • who am i
      • 显示本会话的登录用户
      • 用户名,登录接口,登录时间,IP地址
    • who
      • 看当前服务器所有的登录用户
      • 用户名,登录接口,登录时间,IP地址
    • cat /etc/passwd 或 cat /etc/passwd | grep -v nologin
      • 查看服务器上所有的注册用户信息
  • 锁定解锁
    • usermod -L [用户名]
      • lock,锁定用户帐号
    • usermod -U [用户名]
      • unlock,解锁用户帐号

 

Linux 笔记_基础_1

 

Linux 笔记_基础_1

 


  • /bin

    • bin 是 Binaries(二进制文件)的缩写,这个目录存放着最经常使用的基本命令。
    • 比如 ls 就是在 /bin/ls 目录
  • /boot

    • 这里存放的是启动 Linux 时使用的一些核心文件、系统引导文件,包括一些连接文件以及镜像文件。
  • **/dev **

    • dev 是 Device(设备)的缩写,该目录存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。
  • /etc

    • etc 是 Etcetera(等等)的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。
  • /home

    • 用户的主目录,在 Linux 中,每个用户都有一个自己的目录(称为用户目录),一般该目录名是以用户的账号命名的。
  • /lib

    • lib 是 Library(库)的缩写这个目录里存放着系统最基本的共享库文件,类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。
  • /lost+found

    • 这个目录一般情况下是空的,当系统非法关机后,可能会产生一些丢失、需要寻回的文件。
  • /media

    • 移动设备挂载点,linux 系统会自动识别一些设备,例如U盘、光盘等等,当识别后,Linux 会把识别的设备挂载到这个目录下。
  • /mnt

    • 临时文件系统挂载点,用于临时挂载别的文件系统,比如将光盘挂载在 /mnt/ 上,然后进入该目录就可以查看光盘里的内容了。
  • /opt

    • 第三方应用程序,opt 是 optional(可选)的缩写,这是给主机额外安装软件所设置的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
  • /proc

    • 内核与进程相关信息,proc 是 Processes(进程)的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。

    • 这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的 ping 命令,使别人无法 ping 你的机器:echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

  • /root

    • 系统管理员 root 的用户目录。
  • /sbin

    • s 就是 Super User 的意思,是 Superuser Binaries(超级用户的二进制文件)的缩写,这里存放的是系统管理员使用的系统管理程序,管理类的基本命令。
  • /selinux

    • 这个目录是 Redhat/CentOS 所特有的目录,SELinux 是一套比较复杂的安全机制,这个目录存放 的是 SELinux 的相关文件。
  • /srv

    • 该目录存放一些系统运行一些服务用到的数据
  • /sys

    • 用于输出当前系统上硬件设备相关信息的虚拟文件系统
    • 这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。
      • sysfs 文件系统集成了下面3种文件系统的信息:
        • 针对进程信息的 proc 文件系统
        • 针对设备的 devfs 文件系统
        • 针对伪终端的 devpts 文件系统
      • 该文件系统是内核设备树的一个直观反映。
      • 当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
  • /tmp

    • tmp 是 temporary(临时)的缩写这个目录用来存放一些临时文件。
  • /usr

    • 共享的只读数据,usr 是 unix shared resources(共享资源)的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。
    • /usr/bin
      • 系统用户使用的应用程序。
    • /usr/sbin
      • 超级用户使用的比较高级的管理程序和系统守护程序。
    • /usr/src
      • 内核源代码默认的放置目录。
  • /var

    • var 是 variable(变量)的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的文件放在这个目录下。包括各种日志文件。
    • mail 的预设放置也是在这里。
  • /run

    • 是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。
  • /bin,/sbin,/usr/bin,/usr/sbin,对比

    • /bin,/usr/bin,是给系统用户使用的指令(除root外的通用户),
    • 而 /sbin,/usr/sbin,则是给 root 使用的指令。