- 博客(84)
- 收藏
- 关注
原创 第3章 从0开始用若依
若依(RuoYi)框架是一款基于Spring Boot、Spring Cloud等开源框架搭建的企业级开发平台。它的主要目标是提供全面的解决方案,以简化企业级应用开发提高开发效率。模块化设计:若依框架采用模块化的设计,使得应用可以根据需求进行灵活的扩展和定制。每个模块都可以独立部署和升级,这大大提高了系统的可维护性和可扩展性。前后端分离:框架采用前后端分离的开发模式,后端专注于数据处理和API接口的提供,前端则负责页面的展示和用户交互。这种模式使得前后端职责明确,进一步提高了开发效率和代码的可维护性。
2026-08-15 21:47:59
284
原创 第2章 项目前置课-代码版本控制Git
借助互联网上提供的一些代码托管服务来实现,比如:GitHub、Gitee码云等。自己在服务器端搭建,比如:GitLab、Gogs等。分支是Git中的一个非常重要的概念。使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线同一个仓库可以有多个分支,各个分支相互独立,互不干扰。通过git init命令创建本地仓库时默认会创建一个master分支。HEAD是一个特殊的引用(reference),它指向当前分支的最新提交(commit)。HEAD标识了当前分支中工作的基础点,即你。
2026-08-14 18:31:03
75
原创 第1章 项目前置课-Mybatis-Plus
为了简化单表CRUD,Mybatis-Plus提供了一个基础的BaseMapper接口,其中已经实现了单表的CRUD:因此咱们自定义的Mapper只要实现了这个BaseMapper,就无需自己实现单表CRUD了。修改DeptMapper接口,让其继承BaseMapper,接口中的代码可以全部注释掉或者删除@Mapper/**/mapper的实现类也注释掉,加个无法解析的后缀就能注释掉业务层调用基础mapper接口的方法。
2026-08-13 20:54:03
227
原创 第15章 项目部署(Docker)
结尾加 --help是帮助文档Docker最常见的命令就是操作镜像、容器的命令,详见官方文档:镜像就是包含了应用程序程序运行的系统函数库运行配置等文件的文件包。构建镜像的过程其实就是把上述文件打包的过程。查看mysql容器的详细信息mysql的IP地址查看java应用的详细信息java应用的IP地址进入容器ping mysql的IP地址加入自定义网络的容器才可以通过容器名互相访问,Docker的网络操作命令如下:创建网络mysql容器加入itheima网络中查看网络创建时加入网络。
2026-08-09 13:09:46
218
原创 第14章 项目部署(Linux)
常用的SSH(SecureShell,安全外壳协议)远程连接工具:Putty、SecureCRT、Xshell、FinalShell等。
2026-08-09 13:07:55
135
原创 第13章 前端Web实战(Tlias案例)
/ 转成电脑真实磁盘路径字符串;拼装文件路径地址;//写代码时有代码提示、语法校验*//让 vite 能识别.vue单文件组件*
2026-08-09 13:05:35
307
原创 第12章 前端Web进阶(Vue工程化+ElementPlus)
新建Vue文件夹,管理员cmd运行创建项目vue-project1setup:是一个标识,告诉vue需要进行一些处理,让我们可以更简洁的使用组合式API。ref():接收一个内部值,返回一个响应式的ref对象,此对象只有一个指向内部值的属性value。onMounted():在组合式API中的钩子方法,注册一个回调函数,在组件挂载完成后执行。注意:在Vue中的组合式API使用时,是没有this对象的,this对象是undefined。可以用count.value++;代替。
2026-08-09 12:54:59
207
原创 第11章 后端Web进阶(Maven高级)
概念:继承描述的是两个工程间的关系,与java中的继承相似,子工程可以继承父工程中的配置信息,常见于依赖关系的继承。作用:简化依赖配置、统一管理依赖实现:--自定义属性-->引用版本私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务,用来代理位于外部的中央仓库,用于解决团队内部的资源共享与资源同步问题。依赖查找顺序:本地仓库私服中央仓库注意:私服在企业项目开发中,一个项目/公司,只需要一台即可(无需我们自已搭建,会使用即可)。
2026-08-02 00:45:48
251
原创 第10章 后端Web进阶(SpringBoot原理)
singleton 容器内同名称的bean只有一个实例(单例)(默认)prototype 每次使用该bean时会创建新的实例(非单例/多例)request 每个请求范围内会创建新的实例(web环境中,了解)session 每个会话范围内会创建新的实例(web环境中,了解)application 每个应用范围内会创建新的实例(web环境中,了解)使用@Scope注解来声明bean如果要管理的bean对象来自于第三方(不是自定义的),是无法用@Component及衍生注解声明bean的,就需要用到。
2026-07-31 17:40:23
231
原创 第8章 后端Web实战(登录认证)
登录标记:用户登录成功之后,在后续的每一次请求中,都可以获取到该标记。【会话技术】统一拦截:过滤器Filter、拦截器Interceptor会话:用户打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接,会话结束。在一次会话中可以包含多次请求和响应会话跟踪:一种维护浏览器状态的方法,服务器需要识别多次请求是否来自于同一浏览器,以便在同一次会话的多次请求间共享数据。客户端会话跟踪技术:Cookie服务端会话跟踪技术:Session令牌技术。
2026-07-29 14:35:27
216
原创 第7章 后端Web实战(Tlias系统)
如果请求参数名与形参变量名相同System.out.println("删除部门:" + id);多表查询:指从多张表中查询数据笛卡尔积:指在数学中,两个集合(A集合和B集合)的所有组合情况。(在多表查询时,需要消除无效的笛卡尔积)连接查询内连接:相当于查询A、B交集部分数据外连接左外连接:查询左表所有数据(包括两张表交集部分数据)右外连接:查询右表所有数据(包括两张表交集部分数据)子查询1.概念:事务是一组操作的集合,它是一个不可分割的工作单位。事务会把所有的操作作为一个整体。
2026-07-27 22:42:39
155
原创 第6章 后端Web基础 (MyBatis)
提示:Mybatis的持久层接口命名规范为XxxMapper,也称为Mapper接口。包下创建mapper包,UserMapper类@Mapper // 表示该接口是一个mybatis的mapper接口, Mybatis会自动扫描该接口, 为接口生成实现类对象(代理), 并将对象交给Spring管理 --> bean/*** 查询所有用户*/数据库连接池是个容器,负责分配、管理数据库连接(Connection)。它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个。释放。
2026-07-21 03:00:45
172
原创 第4章 后端Web基础(基础知识)
官网:spring.ioSpring发展到今天已经形成了一种开发生态圈,Spring提供了若干个子项目,每个项目用于完成特定的功能。以Spring Framework为中心将Spring Framework简化为Spring BootSpringBoot可以帮助我们非常快速的构建应用程序、简化开发、提高效率。官方推荐 企业主流概念:Hyper Text Transfer Protocol,超文本传输协议,规定了浏览器和服务器之间数据传输的规则。特点:1.基于TCP协议:面向连接,安全。
2026-07-16 14:15:10
171
原创 第3章 后端Web基础 (Maven)
Apache Maven是一个项目管理和构建工具,它基于项目对象模型(POM)(project object madel)的概念,通过一小段描述信息来管理项目的构建。作用:方便的依赖管理标准的项目构建流程统一的项目结构项目对象模型(POM)--描述当前项目信息。包名、项目名、版本-->--基于JDK哪个版本开发的 运行的时候是基于哪个JDK版本 字符集编码-->依赖管理模型(Dependency)dependency里包括但不限于这些标签--排除依赖-->
2026-07-15 22:07:09
280
原创 第2章 前端Web基础(js、vue+Ajax)
let 对象名 = {属性名1: 属性值1,属性名2: 属性值2,属性名3: 属性值3,方法名: function (形参列表) {}age: 20,gender: '男',alert('悠悠的唱着最炫的民族风')age: 20,gender: '男',sing() {alert('悠悠的唱着最炫的民族风')对象名.属性名;对象名.方法名();定义对象时尽量不要使用箭头函数,this指向父级WindowsVue是一款用于构建用户界面的渐进式的JavaScript。
2026-07-15 00:22:13
288
原创 第7章 Java高级技术
框架技术的灵魂是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法对于任意一个对象,都能够调用它的任意属性和方法这种动态获取信息以及动态调用对象方法的功能称为Java语言的反射机制学习路径:获取类的字节码对象反射类中的构造方法,随后创建对象反射类中的成员变量,完成赋值和获取反射类中的成员方法调用成员方法获取字节码对象的三种方式1. Class.forName("全类名");//Class不是一个class类,而是一个对象。第一种方式比较灵活2. 类名.class//第二种方式比较简单。
2026-07-09 13:02:38
248
原创 第5章 多线程
线程池介绍 系统创建一个线程的成本是比较高的,因为它涉及到与操作系统交互 当程序中需要创建大量生存期很短暂的线程时,频繁的创建和销毁线程,就会严重浪费系统资源将线程对象 交给线程池维护 可以降低系统成本 从而提升程序的性能 【强制】线程资源必须通过线程池提供,不允许在应用中自行显式创建线程。说明:线程池的好处是减少在创建和销毁线程上所消耗的时间以及系统资源的开销,解决资源不足的问题。如果不使用线程池,有可能造成系统创建大量同类线程而导致消耗完内存或者“过度切换”的问题。【强制】线程池不允许。
2026-07-07 17:11:41
345
原创 第4章 常用API、IO流
IO流介绍:输入(读取)I:input 输出(写出)O:output数据传输 场景1:读写配置文件、日志文件 场景2:客户端与服务端的通讯 场景3:文件上传下载。
2026-07-06 23:23:28
252
原创 第3章 File类
*递归: 方法直接或者间接调用本身递归如果没有控制好终止,会出现递归死循环,导致栈内存溢出现象*/methodA();methodB();methodC();methodA();
2026-07-06 10:17:24
146
原创 第2章 异常
1、自定义编译时异常定义一个异常类继承Exception.重写构造器2、自定义运行时异常定义一个异常类继承RuntimeException.重写构造器。上面的age的get方法使用的是自定义异常,需要写一个异常类。
2026-07-05 17:03:59
236
原创 第1章 集合高级
一次添加一个元素都是Collection接口的实现类ArrayList、LinkedList实现了List接口特点:存取有序、有索引、可以存储重复的TreeSet、HashSet、LinkedHashSet实现了Set接口特点:存取无序、无索引、不可以存储重复的都继承了Collection,是Collection类的子接口。
2026-07-03 15:19:43
256
原创 第8章 综合案例:商品管理系统
System.out.println("-------------欢迎使用商品管理系统--------------");list.add(new Goods("001", "华为平板", 3999, "平板电脑"));list.add(new Goods("002", "华为手机", 6999, "手机"));list.add(new Goods("003", "华为电脑", 8999, "电脑"));System.out.println("请输入您要修改的商品编号: ");
2026-07-01 16:52:06
171
原创 第7章 常用API
集合在创建的时候如果不加泛型<>添加数据的时候可以是任意类型 建议创建的时候加入泛型,保证数据的严谨和规范 JDK7版本开始,右侧<>中可以省略类型。System.out.println("登录失败, 您还剩余" + (3 - i) + "次机会");E set(int index, E element): 用指定的元素替换此列表中指定位置的元素。public String(String original) : 根据传入的字符串,创建字符串对象。
2026-07-01 15:21:08
207
原创 第6章 面向对象高级
System.out.println("姓名为"+super.getName()+"年龄为"+super.getAge()+"奖金为"+this.bonus+"工资为"+super.getSalary()+"的经理正在工作");System.out.println("姓名为"+super.getName()+"年龄为"+super.getAge()+"的码农正在写代码");//代码如果可以执行到这里,说明stu1肯定不是null值.stu1不是null,stu2为null,直接返回false。
2026-06-30 16:32:51
263
原创 第5章 面向对象基础
this介绍:代表当前类对象的引用(地址) 哪一个对象调用的方法,方法中的this,就代表哪一个对象 p1.print()--->this--->p1的地址 p2.print()--->this--->p2的地址。static修饰成员的特点 被其修饰的成员,被该类的所有对象所共享 多了一种调用方式,可以通过类名调用 随着类的加载而加载,优先于对象存在。又名构造器 初始化一个新建的对象 构建、创造对象的时候,所调用的方法 执行时机:创建对象的时候被调用执行,每创建一次对象,都要执行。//不用static时。
2026-06-27 01:37:10
201
原创 第4章 数组
空指针异常:当引用数据类型的变量被赋值为null之后,地址指向被切断,还继续范围堆内存数据NullPointerException。完整格式:数据类型[] 数组名 = new 数据类型[] {元素1,元素2,元素3...}//数组在栈内存中保存的堆内存的数据的地址指向空值了。main中的代码抽取到方法,选中要抽取的代码,按住ctrl+alt+m。打印数组名,看到的不是数组的内容,而是数组的十六进制内存地址。//把地址值设为空了,找不到数组在堆内存的地址了。静态初始化:手动指定元素,系统计算出数组的长度。
2026-06-27 01:36:36
214
原创 第3章 流程控制语句
循环结构 do...while。顺序结构、分支结构、循环结构。分支结构 switch。Random生成随机数。循环结构 while。
2026-06-27 01:35:29
212
原创 第1章 开发环境搭建
打开oracle官网,点击Download Java选择相应版本(最新的LTS长期支持的稳定版本)双击安装即可win+r cmd 输入java -version执行工具、javac -version编译工具JDK的组成:JRE、开发工具(Java、javac等)JRE:JVM、核心类库。
2026-06-27 01:33:49
176
原创 claude的命令、skill、agent与plugin插件的使用与实战
Rewind回滚到上一结点shift+tab切换自动同意编辑工具、询问、计划等AI模式英文感叹号!切换到终端模式* 如:!start index.html打开该前端页面/effort更改思考强度,ctrl+j换行;ctrl+g在文本编辑器中打开编辑,ctrl+s保存一下关闭危险:自动同意所有权限申请:新建一个终端输入claude --dangerously-skip-permissions/exit退出ClaudeCode/resume回看历史记录!
2026-06-22 22:44:54
281
原创 第八章 排序
8.1.1 排序的定义 排序,就是重新排列表中的元素,使表中的元素满足按关键字有序的过程。为了查找方便,通常希望计算机中的表是按关键字有序的。排序的确切定义如下: 输入:\( n \) 个记录 \( R_1, R_2, \cdots, R_n \),对应的关键字为 \( k_1, k_2, \cdots, k_n \)。 输出:输入序列的一个重排 \( R_1', R_2', \cdots, R_n' \),使得 \( k_1' \leq k_2' \leq \cd
2025-08-18 14:28:38
541
原创 第七章 查找
7.1 查找的基本概念 1)查找。在数据集合中寻找满足某种条件的数据元素的过程称为查找。查找的结果一般分为两种:一是查找成功,即在数据集合中找到了满足条件的数据元素;二是查找失败。 2)查找表。用于查找的数据集合称为查找表,它由同一类型的数据元素(或记录)组成。对查找表的常见操作有:①查询符合条件的数据元素;②插入、删除数据元素。 3)静态查找表。若一个查找表的操作只涉及查找操作,则无须动态地修改查找表,此类查找表称为静态查找表。与此对应,需要动态地插入或删除的查找表称为动态查找表。适合静态查找表的
2025-08-18 14:15:54
426
原创 第六章 图
6.1 图的基本概念6.1.1 图的定义图 \( G \) 由顶点集 \( V \) 和边集 \( E \) 组成,记为 \( G = (V, E) \),其中 \( V(G) \) 表示图 \( G \) 中顶点的有限非空集;\( E(G) \) 表示图 \( G \) 中顶点之间的关系(边)集合。若 \( V = \{v_1, v_2, \cdots, v_n\} \),则用 \( |V| \) 表示图 \( G \) 中顶点的个数,\( E = \{(u, v)|u \in V, v \in V\}
2025-08-18 13:54:41
377
原创 第五章 树与二叉树
二叉树是一种特殊的树形结构,其特点是每个结点至多只有两棵子树(二叉树中不存在度大于2的结点),并且二叉树的子树有左右之分,其次序不能任意颠倒。与树相似,二叉树也以递归的形式定义。二叉树是\(n\)(\(n\geq0\))个结点的有限集合:① 或者为空二叉树,即\(n = 0\)。② 或者由一个根结点和两个互不相交的被称为根的左子树和右子树组成。左子树和右子树又分别是一棵二叉树。二叉树是有序树,若将其左、右子树颠倒,则成为另一棵不同的二叉树。即使树中结点只有一棵子树,也要区分它是左子树还是右子树。
2025-08-17 18:40:47
782
原创 第四章 串
串(string)是由零个或多个字符组成的有限序列。一般记为其中,\( S \) 是串名,单引号括起来的字符序列是串的值;\( a_i \) 可以是字母、数字或其他字符;串中字符的个数 \( n \) 称为串的长度。\( n = 0 \) 时的串称为空串(用 \( \varnothing \) 表示)。串中任意多个连续的字符组成的子序列称为该串的子串,包含子串的串称为主串。某个字符在串中的序号称为该字符在串中的位置。子串在主串中的位置以子串的第1个字符在主串中的位置来表示。
2025-08-17 14:13:04
1006
原创 第三章 栈、队列和数组
*命题追踪** 栈的特点(2017) 栈(Stack)是只允许在一端进行插入或删除操作的线性表。首先栈是一种线性表,但限定这种线性表只能在某一端进行插入和删除操作,如图3.1所示。栈顶(Top):线性表允许进行插入和删除操作的那一端。栈底(Bottom):固定的,不允许进行插入和删除操作的另一端。空栈:不含任何元素的空表。**命题追踪** 入栈序列和出栈序列之间的关系(2022)**命题追踪** 特定条件下的出栈序列分析(2010、2011、2013、2018、2020)
2025-08-16 22:14:48
781
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅