自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 Ubuntu20.04 jdk gcc make redis nginx mysql 离线安装

Ubuntu20.04 jdk gcc make redis nginx mysql 离线安装, 命令安装

2023-09-27 16:26:29 3270

原创 单例模式的最佳实践居然是使用枚举 ?

单例模式 枚举 懒汉式 饿汉式 静态变量 静态代码块 静态内部类 双重锁

2023-01-31 00:21:41 294

原创 Vue 生命周期

"beforeDestroy调用""beforeCreate调用""beforeUpdate调用""beforeMount调用""destroyed调用""creaate调用""mounted调用""updated调用"

2023-01-30 22:05:41 131

原创 Vue 常用指令 自定义指令

- v-bind 为单向绑定: 数据只能从data流向页面- v-model 双向绑定: 数据不仅从data流向页面,还可以重页面流向data,

2022-07-26 11:34:43 483

原创 Vue 计算属性 computed 监视(侦听)属性 watch

get函数什么时候执行?

2022-07-16 14:48:23 1222

原创 Vue 的数据代理, 响应式实现原理

通过一个对象代理对另一个对象的属性操作(读/写)

2022-07-15 20:10:42 214

原创 Vue 了解vue, 特点, 优点

每一个组间都是由Html,Css,Js组成。

2022-07-15 20:09:50 870

原创 SpringMVC,常用注解,组件分析

组件分析DispatcherServlet:前端控制器用户请求到达前端控制器,它就相当于 mvc 模式中的 c,dispatcherServlet 是整个流程控制的中心,由它调用其它组件处理用户的请求,dispatcherServlet 的存在降低了组件之间的耦合性。HandlerMapping:处理器映射器HandlerMapping 负责根据用户请求找到 Handler 即处理器,SpringMVC 提供了不同的映射器实现不同的映射方式,例如:配置文件方式,实现接口方式,注解方式等Hand

2021-08-21 17:31:14 173

原创 SpringMVC简单环境搭建

环境搭建执行流程当启动Tomcat服务器的时候,因为配置了load-on-startup标签,所以会创建DispatcherServlet对象,就会加载springmvc.xml配置文件开启了注解扫描,那么HelloController对象就会被创建从index.jsp发送请求,请求会先到达DispatcherServlet核心控制器,根据配置@RequestMapping注解找到执行的具体方法根据执行方法的返回值,再根据配置的视图解析器,去指定的目录下查找指定名称的JSP文件Tomca

2021-08-21 15:53:40 112

原创 Spring 事务控制

基于 XML 的声明式事务控制1.需要的包 <!--事务--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>5.3.9</version> </dependency> &lt

2021-08-20 14:19:40 61

原创 Spring AOP ,通知类型 ,xml配置, 注解配置

AOP概念ioc建立容器,存储对象,降低对象耦合,aop利用动态代理对容器中取出来的对象的方法增强(方法增强)AOP:全称是 Aspect Oriented Programming 即:面向切面编程。简单的说它就是把我们程序重复的代码抽取出来,在需要执行的时候,使用动态代理的技术,在不修改源码的基础上,对我们的已有方法进行增强。作用:在程序运行期间,不修改源码对已有方法进行增强。优势:减少重复代码,提高开发效率,维护方便AOP相关术语Joinpoint(连接点):所谓连接点是指那些被拦截

2021-08-20 11:45:29 167

原创 Spring IOC 基于注解配置 整合Junit

简单搭建

2021-08-11 17:52:08 59

原创 Spring IOC 基于xml配置

简单搭建IOC的作用:削减计算机程序的耦合(解除我们代码中的依赖关系)。1.maven导入spring依赖 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.3.9</version&

2021-08-10 23:00:00 81

原创 代理模式 静态代理,动态代理

静态代理静态代理的缺点:代理类和目标对象的类都是在编译期间确定下来,不利于程序的扩展。每一个代理类只能为一个接口服务,这样一来程序开发中必然产生过多的代理。1.被代理类和代理类实现的接口public interface ClothFactory { void produceCloth();}2.被代理类public class TeBu implements ClothFactory{ public void produceCloth() { System.out.pr

2021-08-08 19:43:52 76

原创 反射, 获取Class, 创建对象, 调用方法

反射的概述Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。框架 = 反射 + 注解 + 设计模式。反射机制能提供的功能:Class类理解与获取Class类实例Class类理解类的加载过程:程序经过javac.exe命令以后,会生成一个或多个字节码文件(.class结尾)。接着我们使用java.exe命令对某个字节码文件进行解释运行。相当于将某个字节码文件加载到内存

2021-08-08 15:00:04 292

原创 Mybatis 注解开发 ,CURD, 一对一, 一对多

1

2021-08-03 21:11:03 164

原创 Mybatis 一级缓存,二级缓存

通过缓存策略来减少数据库的查询次数,从而提高性能。一级缓存一级缓存是 SqlSession 级别的缓存,只要 SqlSession 没有 flush 或 close,它就存在。一级缓存是 SqlSession 范围的缓存,当调用 SqlSession 的修改,添加,删除,commit(),close()等方法时,就会清空一级缓存。一级缓存的分析第一次发起查询用户 id 为 1 的用户信息,先去找缓存中是否有 id 为 1 的用户信息,如果没有,从数据库查询用户信息。得到用户信息,将用户信息存储

2021-07-24 16:03:35 71

原创 Mybatis 延迟加载策略

Mybatis 延迟加载策略延迟加载:就是在需要用到数据时才进行加载,不需要用到数据时就不加载数据。延迟加载也称懒加载.好处:先从单表查询,需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。坏处:因为只有当需要用到数据时,才会进行数据库查询,这样在大批量数据查询时,因为查询工作也要消耗时间,所以可能造成用户等待时间变长,造成用户体验下降。mybatis实现多表操作时,我们使用了resultMap来实现一对一,一对多,多对多关系的操作。主要是通过 associa

2021-07-24 15:32:15 131

原创 Mybatis 多表查询之 一对多 和 多对多 查询

需求:查询所有用户信息及用户关联的账户信息。分析:用户信息和他的账户信息为一对多关系,并且查询过程中如果用户没有账户信息,此时也要将用户信息查询出来,我们想到了左外连接查询比较合适。1.实体类User加入 List< Account >// get 和 set 方法省略,自己加,还有toString方法public class User implements Serializable { private Integer id; private String userna

2021-07-23 16:49:50 304

原创 Mybatis 多表查询之 一对一(多对一)查询

一对一查询(多对一)需求:查询所有账户信息,关联查询下单用户信息。1.账户信息实体类(方法一)//get 和 set 方法省略,toString省略,自己补public class Account implements Serializable { private Integer id; private Integer uid; private Double money;}2.编写SQL语句SELECT account.id,uid,money,username,a

2021-07-23 12:37:21 1352

原创 Mybatis 的动态 SQL 语句

Mybatis 的映射文件中,前面我们的 SQL 都是比较简单的,有些时候业务逻辑复杂时,我们的 SQL 是动态变化的,此时在前面的学习中我们的 SQL 就不能满足要求了。动态 SQL 之 < if >标签根据传入的实体类的不同取值,使用不同的 SQL 语句来进行查询。比如在 sex 如果不为空时可以根据 sex 查询。这种情况在我们的多条件组合查询中经常会碰到。 <!--根据传入的参数条件查询--> <select id="findUserByCon

2021-07-22 16:31:01 83

原创 Mybatis SqlMapConfig.xml配置文件

SqlMapConfig.xml 中配置的内容和顺序-properties(属性) --property-settings(全局配置参数) --setting-typeAliases(类型别名) --typeAliase --package-typeHandlers(类型处理器)-objectFactory(对象工厂)-plugins(插件)-environments(环境集合属性对象) --environment(环境子属性对象) ---transactionManager(

2021-07-22 14:37:26 73

原创 Mybatis 的输出结果封装

resultType 配置结果类型resultType 属性可以指定结果集的类型,它支持基本类型和实体类类型。同时,当是实体类名称是,还有一个要求,实体类中的属性名称必须和查询语句中的列名保持一致,否则无法实现封装。使用别名查询数据库的列名 username 和实体类的属性名 user 不一致将数据库查询结果的 username 列名改为 name 和实体类匹配 ,实现封装<!--配置查询所有--><select id="findAll" resultType="com.xd

2021-07-16 11:37:04 151

原创 Mybatis 的参数 parameterType 深入

映射配置文件中配置解读<!-- 保存用户--> <insert id="saveUser" parameterType="com.itheima.domain.User">insert into user(username,birthday,sex,address) values(#{username},#{birthday},#{sex},#{address})</insert>parameterType 属性:代表参数的类型,因为我们要传入的是一个类的

2021-07-16 11:03:53 1413

原创 Mybatis的CURD 的简单举例

查询所有操作1.在UserDao接口写入查询所有方法public interface IUserDao { /** * 查询所有操作 * @return */ List<User> findAll();}

2021-07-13 22:40:31 59

原创 Mybatis环境搭建 入门

1.创建Maven工程2.在pom.xml导入项目依赖的jar包 <groupId>org.example</groupId> <artifactId>Mybatis-2-CURD</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <dependencies>

2021-07-12 21:07:30 89

原创 IO流 常用类 常用流

IO流流的分类操作数据单位:字节流,字符流数据的流向:输入流,输出流流的角色:节点流(文件流),处理流异常处理所以IO流异常都用 try-catch-finally常用重点流节点流FileReader()用字符方式读取文件//异常处理:为了保证流资源一定可以执行关闭操作,需要使用try-catch-finally处理public class FileReader1 { public static void main(String[] args){

2021-06-14 23:38:44 155

原创 File类方法和构造器

IO流

2021-06-14 17:47:33 160

原创 Markdown语法学习 基础

Markdown 语法学习标题共有6个等级 ,#数量代表等级#+空格+一级标题(不要忘记空格)字体粗体: ** +文字 +** … 效果:粗体斜体:* +文字 +* … 效果:* 斜体*斜体加粗:*** +文字 +*** …效果:斜体加粗删除线:~~ + 文字 + ~~ …效果:删除线引用前面加一个大于号 >分割线3个减号或者3个*号图片![图片名字](图片地址)超链接[跳转名字]+(跳转链接)例如 :点击跳转百度列表

2021-06-09 10:05:26 72

空空如也

空空如也

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

TA关注的人

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