自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CV工程师的博客

老实巴交

  • 博客(65)
  • 资源 (2)
  • 收藏
  • 关注

原创 自定义Typora上传图片-Java实现

📢文章已收录于。

2023-04-01 15:25:46 453 1

原创 MyBatis学习 | 缓存机制

💬概述:一级缓存也称为本地缓存、SqlSession级别的缓存🔑特点一级缓存是一直开启的,不能手动关闭一级缓存的作用域是MyBatis与数据库之间的一次会话,在本次会话间第一次查询出来的数据都会放到一级缓存中(本地缓存)一个SqlSession会话对象对应一个一级缓存,因为SqlSession对象就代表MyBatis与数据库的一次会话一级缓存相当于SqlSession级别的一个Map集合,在本次会话中查询相同数据时,就不会再访问数据库,而是直接从该Map。

2022-12-27 10:30:00 802

原创 MyBatis学习 | 动态SQL

💬概述:动态SQL——Dynamic SQL,是MyBatis中强大功能之一,可以根据不同条件来拼接SQL语句🔑实现动态SQL的几个重要标签ifforeach🔑关于动态SQL中使用到的表达式语言——OGNL全称:Object Graph Navigation Language,对象图导航语言概述:一种强大的表达式语言,使用它可以方便地操作对象属性,类似于EL表达式使用作用表达式访问对象属性调用方法调用静态属性调用静态方法调用构造方法算术运算符+,-,*,/,%等逻辑运算符。

2022-12-24 10:02:29 1163

原创 MyBatis学习 | SQL映射文件

💬概述:SQL映射文件是MyBatis的核心文件,它指导MyBatis对数据库进行CRUD操作,有着重要意义🔑SQL映射文件中的重要标签标签名解释cache命名空间的二级缓存配置cache-ref其他命名空间缓存配置的引用resultMap自定义结果集映射sql抽取可重用的语句块insert映射插入(INSERT)语句update映射更新(UPDATE)语句delete映射删除(DELETE)语句select映射查询(SELECT)语句。

2022-12-23 10:02:50 1043

原创 MyBatis学习 | 全局配置文件

💬概述:MyBatis全局配置文件中包含了对MyBatis的行为有显著影响的设置(settings)和属性(properties)信息🔑配置文件中的结构图💬概述:在MyBatis全局配置文件中可以添加标签,用于引入或设置属性值。一般用于引入数据库连接或数据库连接池的相关属性🔑为属性赋值的两种方式① 在标签中使用属性获取属性引入外部属性文件(.properties)② 在标签内添加标签,标签中使用和属性设置属性🔑获取属性值的方法:(类似与EL表达式,一般在数据源标签中获取)🔑获取属性值的顺

2022-12-22 09:36:32 515

原创 MyBatis学习 | 简介&HelloWord

💬概述:MyBatis是一个半自动、轻量级的持久化层(ORM)框架,原是Apache的一个开源项目iBatis,后面该项目迁移到Google,iBatis(3.0之后的版本)也改名为MyBatis❓ 关于MyBatis的介绍解释半自动:MyBatis框架需要开发人员在xml文件或注解中手动创建SQL语句(或通过插件生成),才能将SQL执行结果与对应的JavaBean建立映射关系,然后通过JavaBean获取结果集(而全自动只需根据对应的JavaBean就能获取到SQL的执行结果集)

2022-12-19 10:16:16 364

原创 Spring MVC学习 | 注解配置Spring MVC&总结

常用组件组件的实现和使用作用前端控制器(中心控制器) DispatcherServlet由框架提供类型,开发人员只需在配置文件或配置类进行配置对请求和相应进行统一处理,是整个控制层的中心,调用其他组件对请求进行处理处理器映射器 HandlerMapping直接由框架提供,无需创建和配置根据请求路径、请求方式等信息查找对应的处理器Handler,即控制器方法,然后获取控制器方法中所有相关对象(包括控制器对象及其对应的拦截器对象等),最后返回一个对象(处理执行链)处理器 Handler。

2022-12-18 09:32:35 1136

原创 Spring MVC学习 | 拦截器&异常处理器

💬概述:Spring MVC中提供了拦截器,类似于过滤器,可以在执行当前请求对应控制器方法之前对请求进行拦截,同时可以对当前请求进行加工,可以同时设置多个拦截器🔑三个重要方法方法名执行时间点说明控制器方法执行前前置处理方法 -->方法返回值表示拦截和放行(true表示放行,即正常执行控制器方法;返回false表示拦截,即不执行控制器方法)控制器方法执行后后置处理方法 --> 在控制器方法执行之后执行,如果请求被拦截,即控制器方法不执行,则该方法也不执行处理完视图和模型数据并对视图进行渲染之后。

2022-12-17 10:09:15 693

原创 Spring MVC学习 | 报文信息转换

💬概述:是Spring MVC中的一个类,意思是报文信息转换器🔑作用:可以将报文信息和Java对象进行转换,即请求报文信息转换成Java对象,Java对象转换成响应报文信息🔑HttpMessageConverter提供了两个注解和两个类型,用于实现报文信息与Java对象的转化🔑使用方式:在控制器方法中添加类型的形参,通过请求对象调用相关方法获取请求报文信息2.2 使用@RequestBody注解获取请求体信息🔑使用方式:在控制器方法中添加String类型的形参,然后在形参前添加注解,此时请

2022-12-16 09:52:20 851

原创 Spring MVC学习 | 视图&RESTFul

💬概述RESTFul中的REST -->ReStateTransfer,意思是表现层资源状态转移RESTFul是一种资源操作、资源定位的风格,是基于REST搭建的API,不是一个标准、也不是一种协议,仅仅是一种风格🔑Http动词设计1. GET --> get请求,对应查询操作(Read)2. POST --> post请求,对应添加操作(Create)3. PUT --> put请求,对应修改操作(Update)

2022-12-15 10:08:53 398

原创 Spring MVC学习 | 使用域对象共享数据

直接使用原生的servlet API向request域中共享数据,即使用。

2022-12-14 09:56:04 354

原创 Spring MVC学习 | 获取请求参数

🔑添加的位置:在控制器方法的形参前添加🔑作用:将请求参数与控制器方法的形参建立映射关系,注解的value值对应请求参数名,可以与形参名不一样💡 在添加了注解后,Spring MVC就会根据注解的value值匹配对应的请求参数,从而匹配到注解所标识的形参,然后将请求参数值赋值给对应形参,所以在形参名与请求参数名不一致的情况同样能获取到对应的请求参数值💡测试① 创建测试表单,带上请求参数(注意请求参数名设置为user_name、password)

2022-12-13 10:06:00 608

原创 Spring MVC学习 | @RequestMapping注解

💬概述:见名知意,RequestMapping就是请求映射的意思🔑作用:将浏览器的请求与处理请求的控制器方法关联起来,建立映射关系,保证一个请求对应一个控制器方法💡 如果只在方法上使用,则必须保证的value属性值唯一性,即在同一个控制器或者不同控制器中,不能出现value值相同的控制器方法,不然会报错,因为Spring MVC不能确定哪一个才是真正对应的处理请求方法,🔑使用(详情见Spring MVC学习 | 简介&HelloWord)}

2022-12-12 09:49:01 1161

原创 Spring MVC学习 | 简介&HelloWord

💡 详细解释可参见MVC开发模式&三层架构简记💬概述:MVC 是一种软件架构的思想,将软件分为模型、视图和控制器🔑各个组成部分① M --> model 模型:表示工程中的JavaBean,作用是封装和处理数据❓ 这里的JavaBean分为两类实体类Bean:用于封装和存储业务数据业务处理Bean:表示service层对象和dao层对象,用于处理业务逻辑和数据访问② V --> view 视图:表示工程中的html 和jsp等页面。作用是与用户交互和展示数据。

2022-12-11 11:18:38 493

原创 Spring学习 | 事务

💬概述:事务时数据库操作最基本的单元,逻辑上表示一组操作要么都成功,如果出现失败就都失败银行转账🔑事务的特点(ACID)原子性(Atomicity):事务是最基本的数据库操作,不可再分(要么都成功,要么都失败)一致性(Consistency):事务的整体保持不变,比如客户1和客户2两人的总余额为2千,那么他们两人无论怎么相互转账,两人的总额还是2千隔离性(Isolation):各个事务之间不会相互影响持久性(Durability):事务一旦提交,事务中的各个操作都会永久保存下来。

2022-12-10 09:53:34 569

原创 Spring学习 | JDBCTemplate

💬概述:JDBCTemplate是Spring 对JDBC进行封装的一个模板🔑作用:简化JDBC的使用,更加方便地对数据库进行操作🔑使用步骤① 导入相关jar 包:druid…jar、mysql-connector-java-…jar、spring-jdbc-…jar、spring-tx-…jar、(spring-orm-…jar)② 在spring 配置文件中配置druid数据库连接池,这里使用引入外部属性文件的方式(需要先引入context名称空间),也可以直接把值写上

2022-12-09 10:05:33 285

原创 Spring学习 | AOP

💬概述:Aspect Oriented Programming 面向切面(方面)编程,意思是不通过修改源代码的方式,在主干功能上添加新的功能🔑作用与目的:利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率🔑AOP底层原理:AOP底层通过动态代理实现,根据有无接口将动态代理分为两种——JDK和CGLIB🔑基于AspectJ:Spring AOP一般都是基于AspectJ 实现的🔑切入点表达式:在进行AOP的配置时,需要使用切入

2022-12-08 10:10:35 284

原创 Spring学习 | Bean作用域&生命周期

🔑 修改spring 中的bean 作用域(设置单例还是多例):在标签中添加属性——scope,scope 的值由多种选择① singleton② prototype③ request:将对象的作用域设置为request 域④ session:将对象的作用域设置为session 域1.2 注解配置在需要修改的作用域的类上添加和注解,注解中直接添加值即可,值的选择和默认值同上二、生命周期bean 的声明周期可初步分为四个阶段① Bean 的实例化阶段:执行Bean 的无参构造器② Bean 的属

2022-12-07 19:52:23 540

原创 Spring学习 | Bean管理-基于注解

🔑导入jar 包:spring-aop-…-RELEASE.jar🔑开启组件扫描:有两种方式① 在xml 文件中配置指定包扫描:在xml 文件中添加context 名称空间,然后使用标签指定注解进行扫描排除某种注解进行扫描② 创建配置类使用:创建一个类,在类的上面添加和注解,并在注解中添加属性(对应xml 配置中的属性),属性值的写法与属性一样作用:脱离xml文件配置,实现完全注解开发获取工厂对象:实现完全注解开发说明不能通过加载xml 配置文件获取工厂对象,而是需要加载配置

2022-12-07 16:32:04 256

原创 Spring学习 | Bean管理-基于xml

💬概述:Bean管理就是对象管理,指的就是两个操作🔑Bean管理操作的两种方式在spring配置文件(spring.xml)使用标签并添加对应属性2.2 注入属性2.2.1 普通类型属性🔑使用set() 方法进行注入定义一个类,添加setProperty() 方法在xml 文件中的标签中添加标签,并添加相应属性🔑p名称空间注入:set() 方法注入的简化操作(了解即可)在配置文件中的标签中创建p名称空间:直接在标签的属性栏上添加属性 进行属性的注入🔑使用有参构

2022-12-07 11:03:45 755

原创 Spring学习 | Spring简介&IOC简介

💬概述:Spring 是轻量级的开源的JavaEE框架,IOC和AOP是Spring 的两个核心部分🎯目的:简化企业应用开发🔑特点:💬概述:Inversion Of Control 控制反转,意思就是将对象的创建权反转(交给)了Spring,或者说对象创建的控制权不是"使用者",而是"框架"或者"容器"🎯作用与目的:🔑底层实现技术:xml 解析、工厂模式、反射🔑IOC 实现过程:IOC思想基于IOC容器完成,IOC容器底层就是对象工厂创建对象(以xml 配置为例):在xml 配置文件中配置将要

2022-12-06 15:18:25 209

原创 编译原理实验 | 修改和补充PL0编译器(c语言)

对PL0语言编译器程序的修改和补充

2022-12-05 10:23:29 1253

原创 链表相关算法

文章目录1 带环的链表1-1 判断链表是否有环1-2 求带环链表的环入口2 删除指定节点/元素2-1 单链表删除,给出头节点2-2 单链表删除,只给出待删除的节点2-3 双向链表删除2-4 删除重复元素,保留1个重复元素2-5 删除重复元素,不保留重复元素3 反转链表5 链表排序5-1 合并两个有序链表5-2 排序链表1 带环的链表1-1 判断链表是否有环🚀 题目链接:https://leetcode-cn.com/problems/linked-list-cycle/🚀 代码public bo

2022-04-29 20:09:59 754

原创 背包问题算法

文章目录1 01背包2 完全背包3 多重背包4 混合背包5 二维费用背包6 分组背包1 01背包🚀 题目链接:https://www.acwing.com/problem/content/2/🚀 代码二维dp// n为物品数量,maxV为背包容量,v[i]、w[i]分别为第i件物品的容量和价值public int zeroOneKnapsack(int n, int maxV, int[] v, int[] w) { // 动态函数,表示将第i个物品放入容量为j的背包中的最大价值

2022-04-25 14:33:47 261

原创 查找相关算法

文章目录⭐二分查找⭐找出数组中重复的数字⭐不修改数组找出重复的数字⭐二分查找// orderArr是升序数组public int binarySearch(int[] orderArr, int target) { int l = 0, r = orderArr.length - 1; while (l < r) { int mid = (l + r) >> 1; if (target == orderArr[mid]) {

2022-04-23 14:49:07 531

原创 二叉树相关算法

文章目录性质遍历1 中序遍历2 先序遍历3 后序遍历其他性质遍历1 中序遍历2 先序遍历3 后序遍历其他

2022-04-22 20:24:33 314

原创 常见排序算法

文章目录1 冒泡2 选排3 归并4 快排5 直接插入6 希尔7 计数8 计数基数9 堆排PS:以下演示的排序都是升序1 冒泡🚀 代码无优化public void bubbleSort(int[] nums) { for (int i = 0;i < nums.length - 1;i++) { for (int j = 0;j < nums.length - 1 - i;j++) { if (nums[j] > nums[j + 1]) { swap(n

2022-04-21 16:48:24 528

原创 Linux学习 | 网络配置&进程管理

文章目录一、网络配置1.1 相关指令1.2 自定义IP地址1.3 设置主机名和hosts映射1.3.1 关于主机名1.3.2 hosts映射二、进程管理2.1 基本介绍2.2 查看进程的指令2.2.1 ps指令2.2.2 pstree指令2.3 终止进程的指令2.4 服务管理2.4.1 基本介绍2.4.2 service指令2.4.3 setup指令2.4.4 chkconfig指令a. 基本介绍b. 查看服务自启动信息c. 设置服务自启动2.4.5 systemctl指令a. 管理服务b. 查看服务信息c

2022-02-05 17:20:45 726 1

原创 Linux学习 | Linux磁盘分区&挂载

文章目录1 Linux分区1.1 基本介绍1.2 硬盘说明2 分区、挂载实操2.1 添加硬盘2.2 硬盘分区2.3 挂载3 磁盘使用情况查询学习视频????:https://www.bilibili.com/video/BV1Sv411r7vd相关???????? Linux学习 | Linux目录结构&远程登录???? Linux学习 | vim编辑器&关机重启&登录注销 ???? Linux学习 | 用户管理???? Linux学习 | 常用指令???? L

2022-02-03 22:34:13 2005

原创 Linux学习 | 任务调度

文章目录1 crond任务调度1.1 基本介绍1.2 crontab指令1.3 设置任务的具体语法2 at定时任务2.1 基本介绍2.2 at指令学习视频????:https://www.bilibili.com/video/BV1Sv411r7vd相关???????? Linux学习 | Linux目录结构&远程登录???? Linux学习 | vim编辑器&关机重启&登录注销 ???? Linux学习 | 用户管理???? Linux学习 | 常用指令???

2022-02-03 17:16:15 1735

原创 Linux学习 | 组管理和权限管理

文章目录1 Linux组的基本介绍2 文件/目录所有者相关指令2.1 查看所有者2.2 修改所有者3 文件/目录所在组相关指令3.1 查看文件/目录所在组3.2 修改文件/目录所在组4 用户与组相关指令4.1 指定用户所在组4.2 修改用户所在组5 权限管理5.1 ll指令显示内容解释5.2 P1 & P2的具体解释5.2.1 P1——文件/目录类型5.2.2 P2——rwx权限5.3 修改/设置权限-chmod指令5.3.1 使用字符代号设置权限5.3.2 使用数字代号设置权限学习视频??

2022-02-02 19:33:44 881

原创 Linux学习 | 常用指令

文章目录1 运行级别2 重置root密码3 帮助指令4 文件目录相关指令4.1 操作目录4.1.1 pwd指令4.1.2 ls指令c. cd指令d. mkdir指令e. rmdir指令6.4.2 操作文件a. touch指令b. cat指令c. more指令d. less指令e. head指令f. tail指令g. grep指令6.4.3 操作目录和文件a. cp指令b. rm指令c. mv指令6.4.4 其他a. echo指令b. > 指令c. >> 指令d. ln指令e. histor

2022-01-25 18:11:18 583

原创 JavaWeb实现简单的分页功能

文章目录一、创建分页对象1.1 PageDTO1.2 PageVO二、创建测试对象2.1 user表2.2 User实体类2.3 UserDTO2.4 UserVO三、测试3.1 业务层3.2 控制器(Servlet)3.3 测试数据和结果参考博文????:一个基础的SpringBoot项目该包含哪些一、创建分页对象1.1 PageDTOpublic class PageDTO<T extends PageDTO<?>> { /** * 当前页码

2022-01-22 17:57:32 3007

原创 Linux学习 | 用户管理

文章目录一、用户管理1.1 基本介绍1.2 用户操作命令1.2.1 添加/创建用户1.2.2 设置/修改密码1.2.3 删除用户1.2.4 切换用户1.2.5 查看用户信息a. 查看任意用户信息b. 查看当前登录到系统的用户信息c. 查看登录到Linux系统的所有用户信息d. 查看当前用户的用户名1.3 用户组1.3.1 基本介绍1.3.2 具体命令介绍1.4 用户和组相关的文件1.4.1 /etc/passwd1.4.2 /etc/shadow1.4.3 /etc/group学习视频????:ht

2022-01-21 16:30:22 614

原创 Linux学习 | vim编辑器&关机重启&登录注销

文章目录一、vim编辑器1.1 基本介绍1.2 vim编辑器的三种模式1.2.1 一般模式1.2.2 编辑模式1.2.3 命令行模式1.3 vim快捷键二、关机重启&登录注销2.1 关机重启命令2.2 登录注销命令学习视频????:https://www.bilibili.com/video/BV1Sv411r7vd相关????:Linux学习 | Linux目录结构&远程登录一、vim编辑器1.1 基本介绍概述:Linux系统中内置了vi文本编辑器,而vim编辑器就是

2022-01-16 11:17:19 727

原创 SpringMVC实现文件上传和下载

文章目录一、文件上传⬆二、文件下载⬇学习视频????:https://www.bilibili.com/video/BV1Ry4y1574R相关????:后端学习 | JavaWeb实现简单的文件上传和下载一、文件上传⬆概述:Spring MVC中实现文件上传需要导入文件上传的jar包——commons-fileupload.jar,然后在springmvc.xml中配置文件上传解析器(或者在Spring MVC配置类中配置),然后创建对应控制器方法,对上传的文件进行解析,解析需要用到

2022-01-15 17:00:09 518

原创 Linux学习 | Linux目录结构&远程登录

文章目录一、Linux目录结构1.1 基本介绍1.2 具体目录介绍二、远程登录2.1 开发场景2.2 远程登录客户端学习视频:https://www.bilibili.com/video/BV1Sv411r7vd一、Linux目录结构1.1 基本介绍概述:Linux文件系统采用级层式的树状目录结构根目录:树状目录结构中最上层的根目录是/,其他目录都是基于根目录/下创建的特点:Linux会把计算机中所有硬件映射成一个文件(文件夹)来管理,如CPU、磁盘DISK、U盘等硬件在Lin

2022-01-15 16:08:12 368

原创 练手小项目 | JavaWeb实现一个简单的书城项目

文章目录一、项目简介二、功能简介三、页面演示四、源码地址PS:该项目基于尚硅谷教学视频的“书城项目”(换了一些图片并增加了部分功能)视频链接:https://www.bilibili.com/video/BV1Y7411K7zz一、项目简介开发技术:Java、html、css、JS、JQuery数据库:Mysql、druid数据库连接池、DBUtil工具类、SQLyog开发环境:idea环境搭建:maven服务器:tomcat浏览器:Chrome二、功能简介用户模块:

2021-10-03 20:44:45 568 5

原创 Java学习☕ | Java300集课程笔记整理3.0(JDBC)

文章目录一、获取数据库连接的方式二、实现对数据库的增删改三、对数据表的查询操作四、批量插入五、创建BaseDAO六、使用Druid数据库连接池七、使用DBUtils实现CRUD操作学习视频(Java300集):https://www.bilibili.com/video/BV1ct411n7oG一、获取数据库连接的方式基本步骤:获取Driver实现类对象提供要连接的数据库提供连接需要的用户名和密码获取连接测试代码中使用@Test的方式,不用写main函数就可以运行单个类(c

2021-10-01 19:06:44 109

原创 Java学习☕ | Java300集课程笔记整理2.0(IO流)

文章目录一、File类和File对象二、测试编码和解码(Encode&Decode)2.1 编码(Encode)2.2 解码(Decode)三、文件字节输入流3.1 单个字节读取3.2 分段读取四、文件字节输出流五、文件字符输入输出流5.1 实现输入流5.2 实现输出流六、文件拷贝(利用文件字节输入输出流)七、字节数组输入输出流7.1 实现输入流7.2 实现输出流八、对接流学习视频(Java300集):https://www.bilibili.com/video/BV1ct411n7oG一

2021-10-01 19:06:28 82

计网课设_Java实现简单的PING操作

计算机网络课程设计程序:使用Java的InetAddress类实现简单的PING操作;可以PING一个ip地址;也可以批量PING多个ip地址

2021-08-07

一个简单的最小生成树(Prim&amp;Kruskal)演示程序

一个简单的最小生成树演示程序(Java GUI实现)

2021-08-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除