- 博客(101)
- 收藏
- 关注
原创 MYSQL笔记01 数据库概述,SELECT语句,运算符,排序与分页,多表查询
持久化:把数据保存在可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以"固化",而持久化的实现过程大多通过各种关系数据库来完成。持久化的主要作用是将内存中的数据存储在关系型数据库中,当然也可以存储在磁盘文件,XML数据文件中。
2023-04-15 22:31:01
678
原创 Vue3笔记01 创建项目,Composition API,新组件,其他
hook本质是一个函数,把setup函数中使用的Composition API进行了封装。类似与Vue2中的mixin自定义hook的优势,复用代码,让setup中的逻辑更清楚易懂原始写法使用hook抽取公共数据新建hooks文件夹使用hook函数。
2023-03-08 18:16:16
786
1
原创 Vue2笔记05 路由,项目上线部署,element-ui
vue-routervue的一个插件库,专门用来实现SPA应用SPA(单页Web应用:single page web application)整个应用只有一个完整的页面点击页面中的导航链接不会刷新页面,只会做页面的局部更新数据需要通过ajax请求获取路由一个路由就是一组映射关系(key - value)key为路径,value可能是function或component路由分类后端路由:value是function,用于处理客户端提交的请求。
2023-03-02 17:30:37
672
原创 Vue2笔记03 脚手架(项目结构),常用属性配置,ToDoList(本地存储,组件通信)
区别于内置事件(click,keyup,change……),它们是给标签用的,下面写的是给组件用的子->父通信props写法自定义事件写法给组件绑定原生事件需要加native修饰符第二种写法ref(灵活性强)这样绑定时回调方法要求是箭头函数或method中定义的方法解绑涉及方法已弃用,可找这几个方法的替代方案使用用自定义事件改进ToDoListVue3.x推荐使用外部库mitt来代替 $on $emit $off安装npm i mitt。
2023-02-10 17:49:46
685
原创 Vue2笔记02 表单数据,过滤器,常见指令,生命周期,组件
可以看出元素成功绑定与模板被重新解析的时机执行的操作往往是相同的,所以就有了上面的函数式写法全局指令备注。
2023-02-01 16:12:11
307
原创 Vue2笔记01 模板语法,数据代理,事件处理,计算监听属性,绑定样式,列表渲染,数据监测
模板语法,数据代理,事件处理,计算监听属性,绑定样式,列表渲染
2023-01-29 11:52:30
377
原创 Spring事务源码Day02
Spring事务是在数据库事务的基础上进行封装扩展的,其主要特性如下:支持原有数据库事务的隔离级别,加入了事务传播的概念。提供多个事务合并或隔离的功能。提供声明式事务,让业务代码与事务分离,事务变得更易用(AOP)。
2022-10-17 12:53:14
279
原创 Spring事务源码Day01
了解了框架的意义为什么使用框架?框架是开发者定制的可重用应用框架,是模板化的代码帮我们实现很多基础的功能,我们只需要专心于需要实现的业务逻辑,而不需要考虑很多底层功能。事务在不使用框架是如何实现事务?通过连接的层面来处理。为什么不在ORM框架下管理事务?ORM框架只关心绑定参数生成SQL,pojo对象结果映射,SQL的执行。事务是在连接层面的,不是它的职责,它只需在TransactionManager中获取到连接即可。Spring如何管理事务?
2022-10-14 10:43:20
489
原创 设计模式03 行为型模式
行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎么相互协同共同完成单个对象都无法单独完成的任务,它设计算法于对象间职责的分配。行为型模式分为类行为模式和对象行为模式,前者采用继承机制在类间分派行为。由于组合关系或聚合关系比继承关系耦合度低,满足”合成复用原则“,所以对象行为模式比类行为模式具有更大的灵活性。行为型模式分为:模板方法模式,策略模式,命令模式,职责链模式,状态模式,观察者模式,中介者模式,迭代器模式,访问者模式,备忘录模式,解释器模式除了模板方法模式和解释器模式是类行为型
2022-07-06 19:28:54
454
原创 设计模式02 结构型模式
结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者采用组合或聚合来组合对象。对于组合关系或聚合关系比继承关系耦合度低,满足”合成复用原则“,所以对象结构比类结构模式具有更大的灵活性。结构模式分为以下7种:代理模式,适配器模式,装饰者模式,桥接模式,外观模式,组合模式,享元模式由于某些原因需要给某个对象提供一个代理以控制对该对象的访问。这时,访问对象不适合或者不能直接引用目标对象,代理对象作为访问对象和目标对象之间的中介。Java中的
2022-07-04 19:21:33
248
原创 设计模式01 UML图,软件设计原则,创建型模式
“设计模式”最初并不是出现在软件设计中,而是被用于建筑领域的设计中。1995年,由 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides四位作者(GoF)合作出版了《设计模式:可复用面向对象软件的基础》一书,在此书中收录了23个设计模式,这是设计模式领域里程碑的事件,导致了软件设计模式的突破。是一套被反复使用,多数人知晓的,经过分类编目的,代码设计经验的总结。它描述了在软件设计过程中的一些不断重复发生的问题,以及该问题的解决方案。也就是说,它是解决特
2022-07-02 22:57:58
536
原创 GitHub&Gitee笔记 GitHub操作,IDEA集成GitHub,Gitee
GitHub网址:https://github.com/GitHub全球最大同性交友网站一般远程库名字都和本地库一样;描述;公共/私有,创建完成查看远程库链接,复制下来查看当前所有远程库别名创建远程库别名(地址太长不好记)会自动提交本地库用于初始化本地仓库,新建一个目录,在该目录下右键 Git Bash Hereclone成功 查看别名 clone会做三个操作:拉取代码,初始化本地仓库,创建别名编辑代码,添加暂存区,提交本地库 push到远程仓库,但是此时push会被拒绝,因为还没有加入团队需要在gith
2022-06-29 22:41:07
361
原创 Git笔记 概述,安装,常用命令,分支操作,IDEA集成Git
Git是一个免费的,开源的分布式版本控制系统,可以快速高效地从小型到大型地各种项目。 Git易于学习,占地面积小,性能极快,它具有廉价的本地库,方便的缓存区域个多个工作流分支等特性。其性能优于Subversion,CVS,Perforce和ClearCase等版本控制工具 版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统 版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本,方便版本切换。 个人开发过渡到团队协作
2022-06-29 20:52:10
299
原创 Redis6笔记04 主从复制,集群,应用问题,Redis6新功能
主机数据更新后根据配置和策略,自动同步到备机的master/slave机制,Master是以写为主,Slave以读为主能做什么?读写分离,性能扩展容灾快速恢复创建/myredis文件夹复制redis.conf配置文件到该文件夹中修改/myredis/redis.conf关闭AOF配置一主两从,创建三个配置文件新建redis6379.conf,填写如下新建redis6380.conf,redis6381.conf内容一致把数字6379改一下启动三台redis服务器连接指定redis服务器查
2022-06-27 22:59:02
398
原创 Redis6笔记03 SpringBoot整合Redis,事务和锁机制,持久化操作
在pom.xml文件中引入redis相关依赖修改springboot配置文件创建配置类测试成功!Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化,按顺序的执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。Redis事务的主要作用就是串联多个命令防止别的命令插队。输入Multi命令开始,输入的命令都会依次进入命令队列中,但不会执行,直到输入Exec后,Redis会将之前的命令列表中的命令一次执行。组队过程中可以通过discard来放弃组队。组队阶段命令错误报告错
2022-06-25 23:56:18
1231
1
原创 Redis6笔记02 配置文件,发布和订阅,新数据类型,Jedis操作
配置大小单位,开头定义了一些基本的度量单位,只支持bytes,不支持bit大小写不敏感NETWORK下,默认情况如下,表示只能接受本机的访问请求不写的情况下,无限制接受任何ip地址的访问,生产环境下肯定要写你应用服务器的地址;服务器是需要远程访问的,所以需要将其注释掉如果开启protected-mode,那么在没有设定bind ip且没有设密码的情况下,Redis只允许接受本机的响应将其修改为no端口号tcp-backlog设置tcp的backlog,backlog其实是一个连接队列,backlog队列总和
2022-06-23 20:38:53
228
原创 Redis6笔记01 NoSQL数据库,Redis概述安装,常用五大数据类型
NoSQL,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,出现了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,特别是大数据应用难题。解决CPU和内存的压力例:当我们使用分布式部署(有多台服务器),我们可能需要使用Nginx(负载均衡),它会将来自客户端的请求平均分摊到不同服务器中。
2022-06-21 12:13:34
153
原创 Vue快速入门
引入vue.js,显示数据创建Vue实例对象,设置el和data属性el:挂载点Vue实例的作用范围是el选项命中的元素及其内部的元素 建议使用id选择器,不能使用html和body标签data:数据对象Vue指令内容绑定,事件绑定v-text:设置标签的文本值 会替换原有内容,message为在data中的数据,支持字符串拼接v-html如果是普通的内容和v-text相同,为html结构会解析v-on:为元素绑定事件Vue中不需要考虑更改Dom元素,考虑数据补充:传递自定义参数,事件修饰符计数器案例显
2022-06-17 15:49:52
260
1
原创 SpringBoot笔记04 SpringBoot打包,Thymeleaf模板
SpringBoot可以打包为war或jar文件,一两种方式发布应用pom.xml在pom.xml文件中配置内嵌Tomcat对jsp的解析包,并指定将jsp编译到指定目录在main文件夹下新建webapp,并在Project Structure中将其设置为web项目的根目录在webapp下新建index.jsp新建Controllerapplication.properties在pom.xml的build标签中指定打包后的文件名发布war到Tomcat主启动类继承SpringBootS
2022-06-08 23:24:18
996
原创 SpringBoot笔记02 Web组件,整合Mybatis,事务管理,REST风格
拦截器是SpringMVC中的一种对象,能够拦截对Controller的请求。拦截器框架中有系统的拦截器,还可以自定义拦截器,实现对请求预先处理。SpringMVC的方式创建类实现SpringMVC框架的HandlerInterceptor接口需要在SpringMVC的配置文件中,声明拦截器SpringBoot的方式创建类实现HandlerInterceptor接口创建类实现WebMvcConfigurer接口Servlet在SpringBoot框架中使用Servlet对象使用步骤:继
2022-06-05 20:52:03
147
原创 SpringBoot笔记01 XML和JavaConfig,SpringBoot入门
简介为什么要使用SpringBoot因为Spring,SpringMVC需要使用大量的配置文件(xml文件)还需要配置各种对象,把使用的对象放入到spring容器中才能使用对象需要了解其他框架配置规则SpringBoot就相当于 不需要配置文件的Spring+SpringMVC,常用框架和第三方库都已经配置好了,拿来就可以使用。SpringBoot开发效率高,使用方便很多。XML和JavaConfigSpring使用Xml作为容器配置文件,在3.0以后加入了JavaConfi
2022-06-02 23:02:59
336
原创 SpringBoot2笔记02 配置文件,Web开发(SpringMVC自动配置概述,简单功能分析,请求参数处理)
配置文件文件类型properties同以前的properties用法yaml简介YAML是“YAML Ain‘t Markup Language”(YAML不是一种标记语言)的递归缩写。在开发这种语言时,YAML的意思其实是“Yet Another Markup Language”(仍是一种标记语言)非常适合用来做以数据为中心的配置文件基本语法key:value;kv之间有空格大小写敏感使用缩进表示层级关系缩进不允许使用tab,只允许空格缩进的空格数不重要
2022-05-17 23:38:33
606
原创 SpringBoot2笔记01 简介,入门案例,自动配置原理,开发小技巧
Spring能做什么?Spring的能力微服务(Microservices):当一个项目模块众多,每一个模块都可能会成长为一个大型应用,将项目中的所有功能拆分成一个个微小的功能模块,称为微服务。响应式编程(Reactive):基于异步非阻塞的方式,在整个应用之间构建一个异步数据流。允许占用服务器的少量线程、cpu、线程资源,构建一个高吞吐量的应用。分布式云开发(Cloud):将一个大型应用全部拆分成微小模块(分布式应用)的相关解决方案。web应用(Web apps):web开发,例如Sp
2022-05-16 14:28:37
438
原创 MyBatis-Plus笔记03 插件,通用枚举类,代码生成器,MyBatisX插件
插件分页插件MyBatis自带分页插件,只要简单的配置即可实现分页功能 <!-- 此处使用的是MybatisSqlSessionFactoryBean --> <bean class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean"> <!-- 设置MyBatis配置文件的路径(可以不设置) --> <prope
2022-05-09 22:40:35
321
原创 MyBatis-Plus笔记02 常用注解,条件构造器和常用接口
常用注解@TableName在上篇文章中,在使用MyBatis-Plus实现基本的CRUD时,我们并没有指定要操作的表,只是在Mapper接口继承BaseMapper时设置了泛型User,而操作的表是user表。由此得出结论,MyBatis-Plus在确定操作表时,由BaseMapper的泛型决定,即实体类型决定,且默认操作的表明与实体类型的类名一致。那么当实体类型的类名和要操作的表的表名不一致,怎么解决呢?通过@TableName解决通过GlobalConfig解决在开发过程中
2022-05-08 23:57:25
847
原创 MyBatis-Plus笔记01 简介,入门案例,基本CRUD
简介MyBatis-Plus是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变。为简化开发,提高效率而生。MyBatis-Plus提供了通用的mapper和service,可以在不编写任何SQL语句的情况下,快速的实现对单表的CRUD,批量,逻辑删除,分页等操作。主要学习MyBatis-Plus的特性及使用,MyBatis-Plus所提供的优秀的插件,以及多数据源的配置和idea中的快速开发插件MyBatisX的功能。特性无侵入:只做增强不做改变,引入它不会对现有工程产
2022-05-08 17:53:10
822
原创 SSM框架整合项目03 修改,删除功能的实现
修改功能流程:点击编辑,弹出修改页面(显示用户信息),点击更新,完成修改生成修改页面,并回显员工信息↓前端代码index.jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %><html><head> <title>index</title> <!-- jQuery (Boot
2022-05-07 21:32:45
2769
原创 SSM框架整合项目02 查询,新增功能的实现(分页查询、前端数据校验)
查询功能分页查询员工数据流程:访问index.jsp页面,发送出查询员工列表的请求,EmployeeController来接受请求,查出员工数据,来到list.jsp进行展示引入依赖 <!--pageHelper--> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pa
2022-05-06 19:42:56
1121
原创 SSM框架整合项目01 基础环境搭建(关键配置)
SSM整合快速开发CRUD准备工作创建Maven工程,引入依赖 <!--SpringMVC--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.3.7.R
2022-05-05 17:32:47
1180
原创 Mybatis笔记03 动态SQL,缓存,逆向工程,分页插件
动态SQLMyBatis框架的动态SQL技术时一种根据特定条件动态拼接SQL语句的功能,它存在的意义是为了解决拼接SQL语句字符串时的痛点问题。ifif标签可通过test属性的表达式进行判断,若表达式的结果为true,则标签中的内容会执行;否则标签的内容不会执行DynamicSQLMapper.xml <!--List<Emp> getEmpByCondition(Emp emp);--> <select id="getEmpByCondit
2022-05-04 19:20:50
643
原创 Mybatis笔记02 获取参数值,查询功能,特殊SQL的执行,自定义映射resultMap
MyBatis获取参数值的两种方式MyBatis获取参数值的两种方式:${}和#{}${}的本质就是字符串拼接,#{}的本质就是占位符赋值${}使用字符串拼接的方式拼接sql,若为字符串类型或日期类型的字段进行赋值时,需要手动加单引号;但是#{}使用占位符方式拼接sql,此时为字符串类型或日期类型的字段进行赋值时,可以自动添加单引号mapper接口方法的参数为单个字面量类型第一种方式注意单引号!测试第二种方式测试总结:两种获取参数方式和参数
2022-05-03 23:26:46
682
原创 Mybatis笔记01 简介,搭建MyBatis框架,核心配置文件详解
简介MyBatis历史MyBatis最初是Apache的一个开源项目iBatis,2010年6月这个项目由Apache Software Fundation迁移到了Google Code。随着开发团队转投Google Code旗下,iBatis3.x正式更名为MyBatis。代码于2013年11月迁移到Github。iBatis一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBatis提供的持久层框架包括SQLMaps和Data Access Objec
2022-05-02 23:49:50
1556
原创 SpringMVC笔记03 拦截器,异常处理器,注解配置SpringMVC,执行流程
拦截器SpringMVC中的拦截器用于拦截控制器方法的执行SpringMVC中的拦截器需要实现HandlerInterceptor或者继承HandlerInterceptorAdapter类SpringMVC的拦截器必须在SpringMVC的配置文件中进行配置FirstInterceptor拦截器的配置 <!--配置拦截器--> <mvc:interceptors> <!--两种方式 默认对所有请求进行拦截--&g
2022-04-29 18:53:50
915
原创 SpringMVC笔记02 域对象共享数据,视图,RESTFul,HttpMessageConverter,文件上传下载
域对象共享数据使用servletAPI(向request域对象共享数据)使用ModelAndView(向request域对象共享数据)测试:使用Model(向request域对象共享数据)使用Map(向request域对象共享数据)使用ModelMap(向request域对象共享数据)Model,Map,ModelMap的关系通过反射获取方法形参中三者的类型均为class org.springframework.validation.su.
2022-04-28 21:53:14
468
原创 SpringMVC笔记01 简介,@RequestMapping注解,获取请求参数
Spring5新功能整个框架的代码基于java8,运行时兼容JDK9,许多不建议使用的类和方法在代码库中删除。Spring5.0框架自带了通用的日志封装Spring5已经移除Log4jConfigListener,官方建议使用Log4j2。Spring5框架zheng...
2022-04-27 00:18:29
1558
原创 Spring5框架笔记03 事务操作,Spring5新功能
事务什么是事务?事务是数据库操作最基本单元,逻辑上一组操作。要么都成功,如果有一个失败所有操作都失败。事务四个特性(ACID) Atomicity(原子性):一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被恢复(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。 Consistency(一致性):在事务开始之前和事务结束以后,数据库的完整性没有被破坏。这表示写入的资料必须完全符
2022-04-23 21:00:39
1103
原创 Spring5框架笔记02 AOP,jdbcTemplate
AOP什么是AOP面向切面编程,利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。不通过修改源代码方式,在主干功能里面添加新功能。AOP底层原理动态代理有接口的情况,使用JDK动态代理创建接口实现类代理对象,增强类的方法例:使用JDK动态代理,使用Proxy类里面的方法创建代理对象使用newProxyInstance方法创建接口实现类的代理对象三个参数:类加载器;增强方法所在的类,这个
2022-04-23 15:51:27
238
原创 Spring5框架笔记01 框架概述,IOC容器
Spring框架概述Spring是轻量级的开源的JavaEE框架。Spring可以解决企业开发应用的复杂性。Spring有两个核心部分:IOC和AopIOC:控制反转,把创建对象过程交给Spring进行管理Aop:面向切面,不修改源代码进行功能增强Spring特点方便解耦,简化开发Aop编程支持方便程序测试方便和其他框架进行整合方便进行事务操作...
2022-04-21 18:03:12
329
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅