12 2020 档案
发表于 2020-12-26 22:20阅读:206评论:0推荐:0
摘要:(一)java内存区域管理 C/C++每一个new操作都需要自己去delete/free,而java里面有虚拟机自动管理内存,不容易出现内存泄漏或者溢出的问题,但是不容易出现不代表不出现,了解虚拟机怎么使用和管理内存是十分重要的是,对程序优化或者问题排查有帮助。 运行时区域主要分为: 线程私有: 程
阅读全文 »
发表于 2020-12-26 21:55阅读:198评论:0推荐:0
摘要:1.回顾Mybatis执行sql的流程 在之前的代码中我们的运行过程再梳理一下,首先我们执行Test,调用dao接口方法 接口的定义: 调用接口的实现类方法: 最后才是调用真正的sql: 上面的代码是在接口实现类里面自己去执行id,查找并执行mapper文件里面的sql,那么我们想是不是可以减少一步
阅读全文 »
发表于 2020-12-26 21:53阅读:72评论:0推荐:0
摘要:恢复内容开始 1.兴趣 作为一个程序员 👨💻 ,其实我觉得最重要的就是总是怀有疑问和兴趣,不要给自己设置限制,学习本身就是一件有意思的事情。如果你学习一个东西,你就得多问几个问题: 为什么需要这样子? 为什么不那样? 如果不这样做会怎么样? 这样和那样有什么区别?原理到底是什么? 是怎么样演
阅读全文 »
发表于 2020-12-26 21:52阅读:124评论:0推荐:0
摘要:1.简单工厂模式介绍 工厂模式,比较常用,属于创建型模式,也就是主要是用来创建对象的。工厂模式,有三种,主要分为: 简单工厂模式 工厂方法模式 抽象工厂模式 其中,本文要讲的就是,简单工厂模式,但是简单工厂模式,并不是属于GoF讲的23种设计模式中。简单工厂模式,也叫静态工厂方法模式。简单而言,就是
阅读全文 »
发表于 2020-12-26 21:50阅读:479评论:0推荐:0
摘要:我们都知道,饿汉式单例是线程安全的,也就是不会初始化的时候创建出两个对象来,但是为什么呢? 首先定义一个饿汉式单例如下: public class Singleton { // 私有化构造方法,以防止外界使用该构造方法创建新的实例 private Singleton(){ } // 默认是publi
阅读全文 »
发表于 2020-12-26 21:45阅读:126评论:0推荐:0
摘要:1. 单例是什么? 单例模式:是一种创建型设计模式,目的是保证全局一个类只有一个实例对象,分为懒汉式和饿汉式。所谓懒汉式,类似于懒加载,需要的时候才会触发初始化实例对象。而饿汉式正好相反,项目启动,类加载的时候,就会创建初始化单例对象。 前面说过单例模式以及如何破坏单例模式,我们一般情况尽可能阻止单
阅读全文 »
发表于 2020-12-26 21:43阅读:230评论:0推荐:0
摘要:很多时候我们有这样的需求,数据库的字段名与实体类的属性名不一致,这个时候我们需要怎么做呢?有两种解决方案,第一种:直接在查询的时候使用别名,将别名设置成与实体类的属性名一致。第二种:使用resultType,自己定义映射关系。 整个项目的目录如下: 首先,我们需要搭建数据库mysql环境(test.
阅读全文 »
发表于 2020-12-26 21:41阅读:265评论:0推荐:0
摘要:1.单例是什么? 单例模式:是一种创建型设计模式,目的是保证全局一个类只有一个实例对象,分为懒汉式和饿汉式。所谓懒汉式,类似于懒加载,需要的时候才会触发初始化实例对象。而饿汉式正好相反,项目启动,类加载的时候,就会创建初始化单例对象。 1.1 优点 如果只有一个实例,那么就可以少占用系统资源,节省内
阅读全文 »
发表于 2020-12-26 21:40阅读:193评论:0推荐:0
摘要:单例模式,是一种比较简单的设计模式,也是属于创建型模式(提供一种创建对象的模式或者方式)。 要点: 1.涉及一个单一的类,这个类来创建自己的对象(不能在其他地方重写创建方法,初始化类的时候创建或者提供私有的方法进行访问或者创建,必须确保只有单个的对象被创建)。 2.单例模式不一定是线程不安全的。 3
阅读全文 »
发表于 2020-12-26 21:35阅读:250评论:0推荐:0
摘要:代码直接放在Github仓库【https://github.com/Damaer/Mybatis-Learning 】,可直接运行,就不占篇幅了。 1.# 1.#占位符可以用来设置参数,如果传进来的是基本类型,也就是(string,long,double,int,boolean,float等),那么
阅读全文 »
发表于 2020-12-26 21:32阅读:267评论:0推荐:0
摘要:Lambda在jdk1.8里面已经很好用了,在这里不讲底层的实现,只有简单的用法,会继续补全。 首先一个list我们要使用lambda的话,需要使用它的stream()方法,获取流,才能使用后续的方法。 基础类User.java public class User { public long use
阅读全文 »
发表于 2020-12-26 21:31阅读:337评论:0推荐:0
摘要:使用mybatis的时候,经常发现一个需求,我怎么知道自己是不是增加/修改/删除数据成功了? 好像执行sql之后都没有结果的。其实不是的,增删改的sql执行之后都会有一个int类型的返回值,表示的意思是这个操作影响的行数。举个例子,如果我们插入一行成功的话,影响的就是一行。如果我们修改一条数据成功的
阅读全文 »
发表于 2020-12-26 17:34阅读:758评论:0推荐:0
摘要:代码直接放在Github仓库【https://github.com/Damaer/Mybatis-Learning/tree/master/mybatis-05-CURD 】 需要声明的是:此Mybatis学习笔记,是从原始的Mybatis开始的,而不是整合了其他框架(比如Spring)之后,个人认
阅读全文 »
发表于 2020-12-05 23:31阅读:650评论:0推荐:0
摘要:代码直接放在Github仓库【https://github.com/Damaer/Mybatis-Learning/tree/master/mybatis-05-CURD 】 需要声明的是:此Mybatis学习笔记,是从原始的Mybatis开始的,而不是整合了其他框架(比如Spring)之后,个人认
阅读全文 »
发表于 2020-12-05 23:30阅读:153评论:0推荐:0
摘要:前面我们学会了Mybatis如何配置数据库以及创建SqlSession,那怎么写呢?crud怎么写? 代码直接放在Github仓库【https://github.com/Damaer/Mybatis-Learning/tree/master/mybatis-05-CURD 】 需要声明的是:此Myb
阅读全文 »
发表于 2020-12-05 23:27阅读:304评论:0推荐:0
摘要:在jdbc中,有三种方式执行sql,分别是使用Statement(sql拼接),PreparedStatement(预编译),还有一种CallableStatement(存储过程),在这里我就不介绍CallableStatement了,我们来看看Statement与PreparedStatement
阅读全文 »
发表于 2020-12-05 23:23阅读:155评论:0推荐:0
摘要:在java中,通常初学者搞不懂接口与抽象类,这也是面试比较容易问到的一个问题。下面我来谈谈自己的理解。如有不妥之处,还望批评指正,不胜感激。 1.抽象类怎么定义和继承? 我们定义一个抽象类person.class表示类(人): //使用关键字abstract public abstract clas
阅读全文 »
发表于 2020-12-05 23:22阅读:1442评论:0推荐:0
摘要:1. instanceof关键字 如果你之前一直没有怎么仔细了解过instanceof关键字,现在就来了解一下: instanceof其实是java的一个二元操作符,和=,<,>这些是类似的,同时它也是被保留的关键字,主要的作用,是为了测试左边的对象,是不是右边的类的实例,返回的是boolean值。
阅读全文 »
发表于 2020-12-05 23:17阅读:156评论:0推荐:0
摘要:PicGo代替极简图床 之前使用极简床图,但是后来好像挂了,真是一件悲伤的事,最近才发现了一个神器,开源的PicGo,已经有各个平台的版本了。链接如下:https://github.com/Molunerfinn/PicGo/releases 去下载自己的平台即可。虽然你要是Mac,有iPic也是很
阅读全文 »
发表于 2020-12-05 23:16阅读:113评论:0推荐:0
摘要:1.LinkedList介绍 我们除了最最常用的ArrayList之外,还有LinkedList,这到底是什么东西?从LinkedList官方文档,我们可以了解到,它其实是实现了List和Queue的双向链表结构,而ArrayList底层则是数组结构。 下面的讲解基于jdk 1.8: 继承了Abst
阅读全文 »