1. Linux系统入门基础认知
第一次接触Linux系统时,很多人会被它的命令行界面吓到。作为一个从Windows转战Linux的老用户,我清楚地记得当初面对黑底白字的终端窗口时那种手足无措的感觉。但事实上,Linux的基本操作远比想象中简单,只要掌握几个核心概念和常用命令,就能完成90%的日常系统操作。
Linux系统的核心优势在于其开源特性和高度可定制性。与Windows不同,Linux允许用户完全掌控系统的每一个细节。这种自由也带来了学习曲线,但一旦掌握基础操作,你会发现Linux在服务器管理、开发环境和自动化任务处理方面的强大能力。
提示:学习Linux最好的方式就是直接动手操作。建议初学者在虚拟机中安装一个Ubuntu或CentOS系统进行练习,这样即使操作失误也不会影响主机系统。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. Linux系统基本操作技术详解
2.1 文件与目录操作
文件系统操作是Linux中最基础也最重要的技能。与Windows的资源管理器不同,Linux主要通过命令行来管理文件和目录。
-
pwd:显示当前工作目录的完整路径。这个命令看似简单,但在复杂的目录结构中能快速定位当前位置。
bash复制$ pwd /home/username/projects -
ls:列出目录内容。加上
-l参数可以显示详细信息,-a显示隐藏文件(以点开头的文件)。bash复制$ ls -la total 24 drwxr-xr-x 3 username username 4096 Jun 15 10:30 . drwxr-xr-x 5 username username 4096 Jun 14 09:15 .. -rw-r--r-- 1 username username 220 Jun 14 09:15 .bash_logout -
cd:切换目录。使用
..返回上级目录,~直接回到用户主目录。bash复制$ cd /var/log $ cd ~ -
mkdir/rmdir:创建和删除目录。
-p参数可以创建多级目录。bash复制$ mkdir -p project/src/main/java -
cp/mv/rm:文件复制、移动和删除。使用
rm时要特别小心,Linux没有回收站概念,删除的文件很难恢复。bash复制$ cp file1.txt file2.txt $ mv oldname.txt newname.txt $ rm unwanted_file.txt
注意:使用
rm -rf命令时要格外谨慎,这个命令会强制递归删除目录及其所有内容,且无法恢复。建议新手先使用rm -i交互模式,系统会提示确认每次删除。
2.2 文件内容查看与编辑
查看和编辑文件内容是日常工作中最频繁的操作之一。
-
cat:显示文件全部内容,适合查看小文件。
bash复制$ cat /etc/os-release -
less/more:分页查看文件内容,适合大文件。
less比more功能更强大,支持向前向后浏览。bash复制
$ less /var/log/syslog -
head/tail:查看文件开头或结尾部分。
tail -f特别有用,可以实时查看日志文件的新增内容。bash复制$ tail -f /var/log/nginx/access.log -
nano/vi:文本编辑器。
nano对新手更友好,而vi/vim功能更强大但学习曲线陡峭。bash复制
$ nano document.txt $ vi script.sh
2.3 用户与权限管理
Linux是一个多用户系统,严格的权限管理是其安全性的重要保障。
-
用户管理:
whoami:显示当前用户名id:显示用户ID和所属组sudo:以超级用户权限执行命令passwd:修改用户密码
bash复制$ sudo useradd newuser $ sudo passwd newuser -
权限系统:
Linux中每个文件和目录都有三组权限:所有者(owner)、所属组(group)和其他人(other)。权限分为读(r)、写(w)和执行(x)。使用
ls -l查看权限:bash复制
-rw-r--r-- 1 user group 1024 Jun 15 11:00 file.txt第一位表示文件类型(
-普通文件,d目录),后面三组分别表示所有者、组和其他人的权限。 -
chmod:修改文件权限。可以用数字模式(755)或符号模式(u+x)表示。
bash复制$ chmod 755 script.sh # rwxr-xr-x $ chmod u+x program # 给所有者添加执行权限 -
chown/chgrp:修改文件所有者和所属组。
bash复制$ sudo chown user:group file.txt
2.4 进程管理
了解如何查看和管理运行中的进程是系统管理的基础。
-
ps:查看进程状态。常用组合
ps aux显示所有用户的所有进程。bash复制
$ ps aux | grep nginx -
top/htop:动态查看系统进程和资源使用情况。
htop是top的增强版,界面更友好。bash复制
$ top $ htop -
kill:终止进程。先用
ps找到进程ID,然后用kill发送信号。bash复制$ kill -9 1234 # 强制终止PID为1234的进程 -
jobs/fg/bg:管理后台作业。
&将命令放到后台运行,fg将后台作业调回前台。bash复制$ long_running_command & $ jobs $ fg %1
# 1. 概述
1.1 什么是MyBatis
- MyBatis 是一款优秀的持久层框架
- 它支持自定义 SQL、存储过程以及高级映射
- MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作
- MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录
1.2 持久化
数据持久化
- 持久化就是将程序的数据在持久状态和瞬时状态转化的过程
- 内存:断电即失
- 数据库(jdbc),io文件持久化
为什么需要持久化?
- 有一些对象,不能让他丢掉
- 内存太贵了
1.3 持久层
Dao层、Service层、Controller层...
- 完成持久化工作的代码块
- 层界限十分明显
1.4 为什么需要MyBatis
- 帮助程序员将数据存入到数据库中
- 方便
- 传统的JDBC代码太复杂了。简化、框架、自动化
- 不用MyBatis也可以。更容易上手
- 优点:
- 简单易学
- 灵活
- sql和代码的分离,提高了可维护性
- 提供映射标签,支持对象与数据库的orm字段关系映射
- 提供对象关系映射标签,支持对象关系组建维护
- 提供xml标签,支持编写动态sql
2. 第一个MyBatis程序
思路:搭建环境 --> 导入MyBatis --> 编写代码 --> 测试
2.1 搭建环境
搭建数据库
sql复制CREATE DATABASE `mybatis`;
USE `mybatis`;
CREATE TABLE `user`(
`id` INT(20) NOT NULL PRIMARY KEY,
`name` VARCHAR(30) DEFAULT NULL,
`pwd` VARCHAR(30) DEFAULT NULL
)ENGINE=INNODB DEFAULT CHARSET=utf8;
INSERT INTO `user`(`id`,`name`,`pwd`) VALUES
(1,'狂神','123456'),
(2,'张三','123456'),
(3,'李四','123456')
新建项目
- 新建一个普通的maven项目
- 删除src目录
- 导入maven依赖
xml复制<!--导入依赖-->
<dependencies>
<!--mysql驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<!--mybatis-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.2</version>
</dependency>
<!--junit-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>
