- 博客(26)
- 资源 (2)
- 收藏
- 关注
原创 B+树经典结构
一个B+树的节点其实可以分成好多层,规定最下边的那层,也就是存放我们用户记录的那层为第 0 层,之后依次往上加。之前我们做了一个非常极端的假设:存放用户记录的页 最多存放3条记录 ,存放目录项记录的页 最多存放4条记录 。其实真实环境中一个页存放的记录数量是非常大的,假设所有存放用户记录的叶子节点代表的数据页可以存放 100条用户记录 ,所有存放目录项记录的内节点代表的数据页可以存放 1000条目录项记录 ,那么: 如果B+树只有1层,也就是只有1个用于存放用户记录的节点,最多能存放 100 条记录。...
2022-05-14 15:15:39
661
原创 mongodb学习
一、MongoDB简介 1、NoSQL简介 NoSQL(NoSQL = Not Only SQL),意即反SQL运动,指的是非关系型的数据库,是一项全新的数据库革命性运动,早期就有人提出,发展至2009年趋势越发高涨。NoSQL的拥护者们提倡运用非关系型的数据存储,相对于目前铺天盖地的关系型数据库运用,这一概念无疑是一种全新的思维的注入 为什幺使用NoSQL : 1、对数据库高并发读写。 2、对海量数据的高效率存储和访问。 3、对数据库的高可扩展性和高可用性。 弱点: 1、数据库事务一致..
2022-05-10 22:32:31
441
转载 阿里云服务器下在mysql8.0
1、一般CentOS默认安装了mariadb,所以先查看是否安装mariadb,如果安装就需要先卸载mariadb rpm -qa|grep mariadb rpm -e mariadb-libs --nodeps 2、在/usr/local/目录下创建mysql文件夹 cd /cd usr/localmkdir mysql 3、进入mysql文件夹内,下载mysql wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.
2022-05-10 16:19:56
445
1
转载 spring-boot 邮件发送
一.导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> 二.修改properties(QQ邮件需要开启加密验证,其他不需要) spring.mail.username=***@qq.com spring.mail.passwo
2022-04-10 15:15:05
156
转载 发送包含图片的复杂邮件
import com.sun.mail.util.MailSSLSocketFactory; import javax.activation.DataHandler; import javax.activation.FileDataSource; import javax.mail.*; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.intern.
2022-04-10 11:42:26
218
转载 java邮件发送
1、准备一些参数 Properties prop = new Properties(); prop.setProperty("mail.host", "smtp.qq.com"); //设置QQ邮件服务器 prop.setProperty("mail.transport.protocol", "smtp"); // 邮件发送协议 prop.setProperty("mail.smtp.auth", "true"); // 需要验证用户名密码 // 关于QQ邮箱
2022-04-10 11:37:46
208
原创 集合Collection学习(随时更新)
一、三种遍历方法 List list=new ArrayList(); //List list=new LinkedList(); //List list=new Vector(); list.add("..."); list.add("..."); list.add("..."); //1.迭代器 Iterator iterator=list.iterator(); while(iterator.hasNaxt){ Object obj=iterator.next(); Syste
2022-03-19 17:20:43
303
原创 springboot中导入thymeleaf依赖
<dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf-spring5</artifactId> </dependency> <dependency> <groupId>org.thymeleaf.extras</groupId> <artifactId>thymeleaf-extra.
2022-03-09 20:59:17
1267
原创 springboot学习--重点 (2)
一、yaml学习 1.yaml语法学习 语法: SpringBoot使用一个全局的配置文件 , 配置文件名称是固定的 application.properties 语法结构 :key=value application.yml 语法结构 :key:空格 value 配置文件的作用 :修改SpringBoot自动配置的默认值,因为SpringBoot在底层都给我们自动配置好了; 说明:语法要求严格! 1、空格不能省略 2、以缩进来控制层级关系
2022-03-08 22:24:57
138
原创 druid后台监控配置
pom文件 spring: datasource: username: root password: url: jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8 driver-class-name: com.mysql.cj.jdbc.Driver type: com.alibaba.druid.poo.
2022-03-08 20:43:00
333
原创 springboot学习--重点 (1)
一、构建springboot项目 项目创建方式一:使用Spring Initializer 的 Web页面创建项目 1、打开 https://start.spring.io/ 2、填写项目信息 3、点击”Generate Project“按钮生成项目;下载此项目 4、解压项目包,并用IDEA以Maven项目导入,一路下一步即可,直到项目导入完毕。 5、如果是第一次使用,可能速度会比较慢,包比较多、需要耐心等待一切就绪。 项目创建方式二:使用 IDEA 直接创建项目 1、创建一个新项目 2、.
2022-03-07 22:17:39
182
原创 json学习
1.什么是JSON? JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,目前使用特别广泛。 采用完全独立于编程语言的 文本格式 来存储和表示数据。 简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。 2.JSON 和 JavaScript 对象的关系: JSON 是 JavaScript 对象的字符串表示法,它使用文本表示一个 JS 对象的信息,本质是一个字符
2021-12-07 00:56:59
1066
原创 MySQL中MYISAM与INNODB区别
适用场合 : MyISAM : 节约空间及速度较快 InnoDB : 安全性 , 事务处理及多用户操作数据表
2021-12-06 22:40:23
460
原创 MySQL数据库回顾
一、数据库操作学习 1.结构化查询语句分类 2.数据库操作 创建数据库 : create database [if not exists] 数据库名; 删除数据库 : drop database [if exists] 数据库名; 查看数据库 : show databases; 使用数据库 : use 数据库名; 3.创建数据表 属于DDL的一种,语法 : create table [if not exists] `表名`( '字段名1' 列类型 [属性][索引][注释], '字段名2.
2021-11-30 20:33:00
109
原创 JAVASE基础回顾(3)
一、Java String 类 创建字符串 创建字符串的方式如下: 1.直接创建字符串 String str = "Runoob"; 在代码中遇到字符串常量时,这里的值是 "Runoob",编译器会使用该值创建一个 String 对象。 和其它对象一样,可以使用关键字和构造方法来创建 String 对象。 2.用构造函数创建字符串: String str2=new String("Runoob"); String 创建的字符串存储在公共池中,而 new 创建的字符串对象在堆上: S
2021-11-30 10:33:47
96
原创 JAVASE基础回顾(2)
一、循环结构 1.while循环 while是最基本的循环,它的结构为: while( 布尔表达式 ) { //循环内容 } 只要布尔表达式为 true,循环就会一直执行下去。 2.do…while 循环 对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。 do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。 do { //代码语句 }while(布尔表达式)
2021-11-30 00:03:39
192
原创 JavaSE基础回顾(1)
一、Java语言初始 1.JDK和JRE JDK:开发者工具包,提供了Java的开发环境(提供了编译器javac等工具,用于将java文件编译为class文件)和运行环境(提 供了JVM和Runtime辅助包,用于解析class文件使其得到运行)。 JRE:Java运行环境。面向Java程序的使用者,而不是开发者。如果你仅下载并安装了JRE,那么你的系统只能运行Java程序。JRE是运行Java程序所必须环境的集合,包含JVM标准实现及 Java核心类库。 2.javac与java命令 javac
2021-11-27 23:45:01
122
原创 Mybatis作用域理解
SqlSessionFactoryBuilder 的作用在于创建 SqlSessionFactory,创建成功SqlSessionFactoryBuilder 就失去了作用,所以它只能存在于创建 SqlSessionFactory 的方法中,而不要让其长期存在。因此 SqlSessionFactoryBuilder 实例的最佳作用域是方法作用域 (也就是局部方法变量)。 SqlSessionFactory 可以被认为是一个数据库连接池,它的作用是创建 SqlSession 接口对象。因为MyBatis
2021-11-26 20:33:46
321
原创 Mybatis核心配置文件
configuration(配置) properties(属性) 数据库这些属性都是可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素来传递。具体的官方文档 我们来优化我们的配置文件 第一步 ; 在资源目录下新建一个db.properties driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=tr
2021-11-26 20:31:35
645
原创 Mybatis学习笔记1
1.Mybatis定义: MyBatis 是一款优秀的 持久层框架 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程 MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 实体类 【Plain Old,Java Objects,普通的 Java对象】映射成数据库中的记录。 mybatis – MyBatis 3 | 简介http://www.mybatis.org/mybatis-3/zh/index.html 2.持久化 持久
2021-11-26 20:15:00
745
原创 ssm整合依赖pom.xml
<dependencies> <!--Junit--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> .
2021-11-25 21:48:06
109
转载 web.xml中/*与/
< url-pattern > / </ url-pattern > 不会匹配到*.jsp,即:*.jsp不会进入spring的 DispatcherServlet类 。 < url-pattern > /* </ url-pattern > 会匹配*.jsp,会出现返回jsp视图时再次进入spring的DispatcherServlet 类,导致找不到对应的controller所以报404错。 总之,关于web.xml的url映射的小知识: <..
2021-11-25 20:50:29
125
转载 #与$区别
1 #是将传入的值当做字符串的形式,eg:select id,name,age from student where id =#{id},当前端把id值1,传入到后台的时候,就相当于select id,name,age from student where id ='1'. 2 $是将传入的数据直接显示生成sql语句,eg:select id,name,age from student where id =${id},当前端把id值1,传入到后台的时候,就相当于select id,name,age ...
2021-11-25 20:47:58
3916
原创 JDK源码学习——Object
1.registerNatives 通常,为了让JVMfind你的本地函数,它们必须以某种方式命名。 例如,对于java.lang.Object.registerNatives,相应的C函数被命名为Java_java_lang_Object_registerNatives。 通过使用registerNatives(或者说JNI函数RegisterNatives),你可以任意命名你的C函数。 2.native native是与C++联合开发的时候用的!使用native关键字说明这...
2021-11-19 15:35:15
387
原创 静态代理和动态代理
代理模式: 静态代理:类如结婚,我们需要找婚庆公司,而婚庆公司就是代理类,而我们需要结婚的人为被代理类,而结婚就是我们以及婚庆公司共同实现的一个目标。 用代码进行模拟。 首先要有一个接口,类如我们取一个Marry(结婚)作为该接口。 public interface Marry { public void toMarry(); } 然后我们再去实现Marry接口的类,命名为You(你),这也是被代理的类 public class You implements Marry{ @Over
2021-11-15 00:56:18
253
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人