springboot
**SpringBoot **允许我们用最简单的方式,快速整合所有技术栈;
**SpringBoot**就像是我们以前SSM框架的框架。帮我们一键集成SSM等一系列框架的功能
快速入门核心特性SpringBoot 帮我们简单、快速地创建一个独立的、生产级别的 Spring 应用;
大多数 SpringBoot 应用只需要编写少量配置即可快速整合 Spring 平台以及第三方技术
特性:
快速创建独立 Spring 应用
直接嵌入Tomcat、Jetty or Undertow
提供可选的 starter,简化应用整合
按需自动配置 Spring 以及 第三方库
提供生产级特性:如 监控指标、健康检查、外部化配置等
无代码生成、无xml; 都是基于自动配置技术
总结:
简化开发,简化配置,简化整合,简化部署,简化监控,简化运维
快速部署
pom.xml中引入打包插件
<build> <plugins> <plugin> <groupId>org.springframework.boot< ...
MyBatis
入门
官网:https://mybatis.org/
MyBatis是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。
MyBatis不像 Hibernete等这些全自动框架,它把关键的SQL部分交给程序员自己编写,而不是自动生成
HelloWorld创建项目准备数据库环境(helloworld.sql)CREATE DATABASE `mybatis-example`;USE `mybatis-example`;CREATE TABLE `t_emp`( id INT AUTO_INCREMENT, emp_name CHAR(100), age INT, emp_salary DOUBLE(10,5), PRIMARY KEY(id));INSERT INTO `t_emp`(emp_name,age,emp_salary) VALUES("tom",18,200.33);INSERT INTO `t_emp`(emp_name,age,emp_salary) VALUES("jerry",19,666.66) ...
springmvc
入门简介SpringMVC是一站式的web框架。他是Spring框架中的web模块;因为非常重要,所以我们一般独立出来称为 SpringMVC;
官网:https://docs.spring.io/spring-framework/reference/web/webmvc.html#mvc
SpringMVC 是 Spring 的 web 模块,用来开发Web应用
SprinMVC 应用最终作为 B/S、C/S 模式下的 Server 端
Web应用的核心就是 处理HTTP请求响应
开发模式回顾两种开发模式:
前后分离开发
SpringMVC提供常见注解:@RestController、@RequestMapping、@ResponseBody等
前端开发人员编写独立的前端项目
前端项目自己控制页面跳转逻辑
后端仅需返回前端需要的JSON数据
后端无需关心页面效果等问题
优点:分工明确,快速协同,专注用户体验
缺点:成本高,技术复杂,门槛高
前后不分离开发
后端开发人员要控制页面跳转逻辑(利用转发、重定向)
服务器要拿到业务数据,全部填充到页面,然后 ...
spring
SpringSpring是企业级一站式框架:
企业级:经过企业实战使用。稳定性高、可靠性强、扩展性好
一站式:一个框架就可以提供企业开发期间的所有解决方案
框架:众多通用功能逻辑的封装集合
广义的Spring: spring.io 提供的所有框架集合。
什么是框架框架(framework):
建筑学领域:用于承载一个系统必要功能的基础要素的集合
计算机领域:某特定领域系统的一组约定、标准、代码库以及工具的集合
框架与工具的区别:
框架:提供某个领域一系列的解决方案
工具:提供少量的常用小功能封装
可以认为:**框架 = 基础功能 + N多工具**
Spring Framework
Spring是一个 IOC(DI) 和 AOP 框架
Spring有很多优良特性
非侵入式:基于Spring开发的应用中的对象可以不依赖于Spring的API
依赖注入:DI(Dependency Injection)是反转控制(IOC)最经典的实现
面向切面编程:Aspect Oriented Programming - AOP
容器:Spring是一个容器,包含并管理应用对象的生命周期
组件 ...
maven
Maven安装介绍Maven 是意第绪语,意思 是 知识的积累者,最初是为了简化 Jakarta Turbine 项目中的构建过程。
随着发展,成为了Java项目的项目构建和依赖管理工具;
学习Maven就是学习他的以下两个核心功能
项目构建:包含的核心环节有
项目创建、编译、测试、打包、部署、运行等过程
依赖管理:包含的核心功能有
项目关联jar包的下载、导入、冲突解决、依赖传递等
下载官网:https://maven.apache.org/
镜像加速maven 默认会从中央仓库下载项目依赖,比较慢,可以配置为国内 aliyun 等镜像源,方便快速下载
修改 conf/settings.xml ,搜索 mirrors 标签,替换为如下内容
<mirrors> <!-- 阿里云仓库 --> <mirror> <id>alimaven</id> <mirrorOf>central,jcenter</mirrorOf> <name>aliyun maven&l ...
Linux
文件目录文件Linux 系统中一切皆文件。
目录层级结构
/
根目录 - 整个文件系统的起点,所有其他目录都挂载在其下。
包含所有顶层目录(如 /bin, /etc, /home 等)。
/bin
二进制文件 - 存放所有用户必需的基本命令(可执行文件)。
ls, cp, mkdir, bash, cat, rm等。
/boot
引导文件 - 存放系统启动所需的文件(内核、引导加载程序配置)。
vmlinuz(内核), initramfs, grub/(GRUB 配置文件)
/dev
设备文件 - 存放代表硬件或虚拟设备的特殊文件。
sda(硬盘), ttyS0(串口), null, zero, random, usb等设备文件。
/etc
系统配置文件 - 存放系统和应用程序的全局配置文件。
passwd, group, hosts, fstab, apt/sources.list, nginx/等配置文件目录。
/home
用户主目录 - ...
git的使用
Git - 分布式版本控制什么是GitGit是一个分布式****版本控制系统。这听起来可能有点复杂,但让我们分解一下:
版本控制:就像给你的代码装上了时光机器。它会跟踪你做的所有更改。
分布式:它允许多个人在同一项目上工作,而不会相互干扰。
分布式与集中式集中式:
集中化的版本控制系统 (Centralized Version Control Systems,简称 CVCS****)
SVN:权限控制;比较安全; 开源系统
协同工作的人们都通过客户端 连到这台服务器,取出最新的文件或者提交更新。
分布式:
分布式版本控制系统(Distributed Version Control System****,简称 DVCS****)。
客户端并不只提取最新版本的文件快照, 而是把代码仓库完整地镜像下来,包括完整的历史记录。 这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本 地仓库恢复。 因为每一次的克隆操作,实际上都是一次对代码仓库的完整备份。
安装访问下载页,https://git-scm.com/downloads
# 查看默认配置git con ...
JavaWeb
Java用来开发动态Web的一系列技术(JavaWeb)
JavaWeb的三大组件(接口)【Servlet、Filter、Listener】
Servlet****:处理请求的一段服务器小程序;
继承HttpServlet;处理请求,给浏览器响应数据
重写 doXxx():doGet、doPost
HttpServletRequest:封装HTTP请求报文数据
req.getParameter():获取请求参数(报文:首行url?、请求体)
req.getHeader():获取请求头
HttpServletResponse:封装HTTP响应报文数据;
响应首行:响应状态码,响应消息
200:ok;成功
302:重定向; 响应头 Location:指向新位置
404:未找到; 路径不对,服务器处理不了
500:服务器内部异常; 程序内部出错
resp.setHeader():设置响应头
resp.getWriter().write():给响应体写数据;
转发和重定向:前后不分离,服务端渲染页面
转发:req
重定向:resp
JSP:动态页面技术
**${}**:去域对 ...
XML&HTTP&Tomcat
XML什么是XMLxml(可扩展标记语言) 是一种用于存储和传输数据的标记语言
其核心设计目的是保存数据、传输数据而非显示数据
基础语法一个XML文档必须包含根元素,所有其他元素都包含在根元素内
<?xml version="1.0" encoding="UTF-8"?> <!-- XML声明 --><root> <!-- 根元素 --> <!-- dom4j xpath sax --> <child>Content</child></root>
HTTP报文格式请求报文首行:请求首行、响应首行
头:请求头、响应头
空行
体(真正交换的数据):请求体、响应体;
Sec-Fetch-Mode: navigateSec-Fetch-User: ?1Sec-Fetch-Dest: documentAccept-Encoding: gzip, deflate, br, zstdAccept-Language: zh-CN,zh;q=0.9,en;q=0. ...
MySql
数据库基础什么是数据库数据库(Database)是一种用于高效存储、管理和组织数据的系统。
它通过特定的数据结构将数据有序存储,并提供强大的查询、修改、删除和安全控制功能,确保数据的一致性、完整性和可访问性。
数据库是“数据的仓库”,但远不止于简单的存储,更强调对数据的高效管理与利用。
常见数据库类型
关系型数据库(RDBMS, Relational Database Management System)
数据模型:基于数学中的“关系理论”,数据以二维表格(关系表)形式存储,表之间通过“键”(如主键、外键)关联。
特点:严格的结构化、支持复杂查询(如多表关联)、强一致性。
典型产品:MySQL、Oracle、PostgreSQL、SQL Server。
适用场景:需要精确数据关联和事务的场景(如银行交易、财务系统、电商订单管理)。
类似于 excel 存储数据的方式
非关系型数据库(NoSQL, Not Only SQL)
数据模型:打破传统表结构,采用更灵活的模型(如键值对、文档、列族、图),适合存储非结构化或半结构化数据(如JSON文档、日志、社交关系)。
特点:高 ...

