Linux

Linux基础命令笔记

记录下上一年学的Linux基础命令笔记~根目录/是linux中所有文件的存放顶点crtlshift+基础操作命令1.列出目录中的文件列表ls目录路径2.切换工作目录cd目录路径3.查看当前工作目录pwd4.创建文件touch文件路径5.创建目录mkdir目录路径6.复制文件cp原文件路径目的路径7.复制目录cp-r原目录路径目的路径8.移动文件或者目录mv原路径目的路径9.删除(不建议使用,因为没有回收站机制)rm文件路径rm-rf目录路径用户管理用户的配置文件/etc/passwd该文件以行为单位,每行一个用户以冒号隔开为一列,每列代表该用户的不同配置第一列:用户名第二列:原本用于存放用户的密码,目前停用,目前用户的密码存放于文件/etc/shadow第三列:用户的编号,UID第四列:组编号,GID第五列:描述,用于描述用户的作用,可以不写第六列:用户的家目录,该目录用于存放用户在使用中产生的各类数据,以及用户的个人文件第七列:用户的shellshell:外壳,一种命令解释器,用于将人类识别的高级语言翻译为机器识别的机械语言,或将机器的机械语言翻译为高级语言的一种程序。shell经常被人们称作人与计算机之前的翻译官常见shell/bin/sh最原始的shell/bin/bash目前使用范围最广的shell/sbin/nologin用于设置用户禁止交互式登录系统使用的shell用户组的配置文件/etc/group第一列:用户组名称第二列:曾经用于存放用户组的密码第三列:用户组的编号第四列:组内用户列表,该组为该列表中用户的副组。用户组的分类:与用户的关系不同可以分为2类:1.主组,又名首选组,主要的组是用户配置文件/etc/passwd中GID所记录的组主组的作用:是用户在系统中执行任务的组身份代表。2.副组,又名从属组,额外的组用户除了其首选组以外,还可以加入若干个用户组里,这些额外加入的用户组,被成为用户的副组副组的作用:用于变更用户在系统中的访问范围当系统创建一个用户的时候,系统会自动创建一个与用户同名、同id的用户组,并将该组设置为用户的首选组创建用户useradd用户名创建用户并设置其用户编号useradd-u编号用户名创建用户并设置其主组useradd-g组名或者GID用户名创建用户并设置其副组useradd-G组名,组名,组名用户名创建用户并禁止其交互式登录useradd-s/sbin/nologin用户名修改用户设定usermod选项用户名修改用户编号usermod-u编号用户名修改用户主组usermod-g组名或者GID用户名替换用户的副组usermod-G组名,组名,组名用户名增加用户的副组usermod-G组名,组名,组名-a用户名禁止用户交互式登录usermod-s/sbin/nologin用户名删除用户并删除其家目录userdel-r用户名创建用户组groupadd组名创建用户组并指定其组编号groupadd-g编号组名修改用户组的编号groupmod-g编号组名删除用户组groupdel组名注意:被删除的组,不能作为任何一个用户的主组使用修改用户的密码passwd用户名切换当前工作用户su-用户名exit退出用户查看用户的相关信息id用户名以管理员身份执行命令(提权)sudo命令如何让用户能够使用sudo命令?将该用户加入到用户组wheel中即可(副组加入)查看网络配置的命令ifconfig测试网络联通性的ping域名或者ip地址(关闭时ctrlc)ping-c次数域名或者ip地址网络追踪tracepath域名或者ip地址traceroute-n-I-q5域名或者ip地址方法一:配置网卡的命令nmcli用于查看网卡配置文件的状态nmcliconnectionshow用于查看网卡的硬件状态nmclidevicestatus用于修改网卡的ip地址及其网关nmcliconnectionmodifyeno16777736ipv4.addresses'192.168.191.50/24192.168.191.2'配置网卡使用的dns地址nmcliconnectionmodifyeno16777736ipv4.dns114.114.114.114用于修改网卡的地址获取模式为手动(静态地址)nmcliconnectionmodifyeno16777736ipv4.methodmanual停用配置文件nmcliconnectiondowneno16777736启动配置文件nmcliconnectionupeno16777736方法二:直接修改网卡的配置文件/etc/sysconfig/network-scripts/ifcfg-eno16777736需要修改行:HWADDR=值来自于命令ifconfigBOOTPROTO="none"ONBOOT="yes"IPADDR0=192.168.191.150PREFIX0=24GATEWAY0=192.168.191.2DNS1=114.114.114.114保存配置后,重启网络(针对于克隆的主机)systemctlrestartnetwork硬盘管理三步操作第一步:分区查看当前系统的分区状态lsblk分区的命令fdisk硬盘的路径(例如:/dev/sdb)p显示当前分区状态n分区(p主分区e扩展分区l逻辑分区)d删除分区w保存并退出q不保存退出专业英语单词:partition分区sector扇区扇区:是硬盘容量的最基本单位,默认情况下1扇区=512字节第二步:制作文件系统(格式化)查看分区的格式化状态blkid制作文件系统mkfs.文件系统类型(tab补齐)分区路径常见类型xfsRHEL7操作系统的默认文件系统ext4多数linux的默认文件系统vfat兼容性较好的文件系统,一般用于U盘ntfswindows的默认文件系统第三步:挂载(指定驱动器号)查看当前系统的硬盘挂载状态df-Th挂载的操作第一步:创建一个挂载点(目录)mkdir目录路径(例如/mnt/parta)第二步:进行挂载的操作编辑文件/etc/fstab,在尾部追加如下内容示例:/dev/sdb1/mnt/partaext4defaults00第三步:生效mount-a软件安装版本软件包扩展名安装的命令自动解决软件依赖性关系redhat.rpmrpmyum(RHEL8:dnf)debian.debdpkgapt-getrpm命令的使用1.安装软件rpm-ivh软件包路径2.查看一个软件是否安装rpm-qa软件名3.卸载软件rpm-e软件名yum命令的使用yum软件仓库的配置(又名yum源)仓库的作用就是告诉yum命令应该在系统的哪一个目录下进行软件包的搜索工作仓库配置文件的路径为:/etc/yum.repos.d/任意命名.repo

java

设计模式之单例模式

一.什么是单例模式?单例模式是设计模式中最简单的一个设计模式,属于创建型模式,其定义是保证一个类***仅有一个实例***,并且提供一个访问它的全局访问点。单例模式一般体现在类声明中,单例的类负责创建自己的对象,同时保证只有单个对象被创建,并且提供一个访问它的全局访问点,可以直接访问,不需要实例化对象。二.为什么需要用到单例模式?由于单例模式只创建了一个实例,减少了内存的消耗,在一些频繁创建销毁实例的情景下可使用避免对资源的多重占用,比如文件写操作在一些特定的情境下必须使用单例,如一个国家只能有一个主席三.如何使用单例?我们知道一个类的对象的产生是通过它的构造函数来实现的,如果一个类对外提供了一个public的构造方法,那么外界就可以任意创建这个类的对象。所以当你想限制类的产生时,就需要把构造函数设为私有的(至少也是受保护的),并且需要提供一个对象以及访问这个对象的静态方法。1.饿汉式单例模式publicclassTest{//在类的内部实例化一个实例privatestaticTesttest=newTest();//私有的构造函数,外界不能访问privateTest(){}//对外提供的获取实例的静态方法publicstaticTestgetTest(){returntest;}}@Testpublicstaticvoidmain(String

java

基于ssm的数据库课程设计

数据库课程设计数据库课程设计说明:1.使用的技术栈:前端:layui前端UI框架后端:基于Java的Spring+SpringMVC+MyBatis框架数据库:MYSQL数据库2.功能:该学生选课管理系统分为三端:学生端,教师端和管理员端管理员端:管理员可以查看学生,教师,班级,选课列表,并对学生,教师,班级信息进行增删改查,实现了数据分页功能,管理员还可以对学生选修课程可以管理。教师端:教师可以查看选修了自己课程的学生信息,查看个人信息,所在班级信息,对自己所教课程进行编辑,添加课程,查看所教学生的课程信息。学生端:学生可以查看个人信息,所在班级信息,可以查看自己选修的课程信息,如总学分,总分等等,学生还可以对未选修的课程进行选课,并且可以退选课程。(1)E-R图(2)关系模式R1(id,学号,姓名,性别,班级序号,年龄,手机号,密码),主码:id和学号外码:班级序号R2(id,班级编号,班级名称,班级简介),主码:idR3(id,课程名称,教师编号,上课时间,选修人数,最大人数,学分),主码:id外码:教师编号R4(id,教师编号,名称,班级编号,性别,职位,工资,密码)主码:id外码:班级编号R5(id,管理员账号,密码)主码:idR6(id,学生id,课程id,教师id,分数)主码:id外码:学生id,课程id,教师id(3)实验截图1.主界面,实现学生,教师和管理员三端登录,并分别授予不同权限。2.管理员界面管理员界面分别有学生管理,班级管理,教师管理,课程管理和选课信息管理模块(1)学生管理模块:学生管理模块可以进行指定条件搜索学生信息功能,添加功能,删除功能以及编辑功能。(2)教师模块:功能与学生模块类似,就不一一截图(3)班级管理模块:(4)课程管理(5)选课信息管理模块可以对学生选课进行管理,为学生选课,退课,并且可以为学生添加成绩3.教师界面教师界面可以查看选修了自己课程的学生信息,查看自己的班级,查看自己的信息并编辑相关信息,查看自己的课程并添加,编辑和删除课程。3.学生界面:学生界面可以查看自己的信息,并且可以编辑指定个人信息,可以查看所在班级信息,也可以查看自己选修课程信息,且可以对课程进行选课,退课项目地址:GitHub