自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 问答 (1)
  • 收藏
  • 关注

原创 Kotlin快速入门

Kotlin是由JetBrains公司开发与设计的。2011年,JetBrains公布了Kotlin的第一个版本。并在2012年将其开源。2016年,Kotlin发布了1.0正式版。2017年Google宣布Kotlin正式成为Android一级开发语言。

2024-06-13 16:54:12 598

原创 Explain详解与索引最佳实践

使用EXPLAIN关键字可以模拟优化器执行SQL语句,分析你的查询语句或是结构的性能瓶颈在 select 语句之前增加 explain 关键字,MySQL 会在查询上设置一个标记,执行查询会返回执行计划的信息,而不是执行这条SQL注意:如果 from 中包含子查询,仍会执行该子查询,将结果放入临时表中参考官方文档:https://dev.mysql.com/doc/refman/5.7/en/explain-output.htmlExplain简单示例在查询中的每个表会输出一行,如果有两个表通过 joi

2022-06-27 11:37:36 365 1

原创 浅谈MySQL索引底层数据结构与算法

索引是帮助MySQL高效获取数据的排好序的数据结构

2022-06-19 21:50:26 223

转载 字符的编码与乱码

文章目录1. 常见非Unicode编码1. ASCII2. ISO 8859-13. Windows-12524. GB23125. GBK6. GB180307. Big58.编码汇总2. Unicode编码1. UTF-322. UTF-163. UTF-84. Unicode编码小结编码转换乱码的原因1. 解析错误2.错误的解析和编码转换从乱码中恢复1.使用UltraEdit2.使用Java摘自:《Java编程的逻辑》 马俊昌最近读了这本书,受益匪浅。能够把每一个知识点都讲的很透彻,并且很有趣味

2021-08-04 11:27:17 2739 1

原创 排序算法和二分查找

一、排序算法1. 冒泡排序(Bubble Sort)冒泡排序是一种简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。1.1 原理比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对

2021-07-26 15:31:43 355

原创 MyBatis_06 逆向工程

一、MyBatisGenerator安装在使用mybatis时我们需要重复的去创建pojo类、mapper文件以及dao类并且需要配置它们之间的依赖关系,比较麻烦且做了大量的重复工作,mybatis官方也发现了这个问题,因此给我们提供了mybatis generator工具来帮我们自动创建pojo类、mapper文件以及dao类并且会帮我们配置好它们的依赖关系。但是表连接、存储过程等复杂的SQL还是需要我们手动编写。1. 官网地址:http://mybatis.org/generator/2. 加

2021-07-24 10:43:59 145

原创 MyBatis_05 动态SQL

动态SQL动态 SQL 是 MyBatis 的强大特性之一。如果你使用过 JDBC 或其它类似的框架,你应该能理解根据不同条件拼接 SQL 语句有多痛苦,例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号。利用动态 SQL,可以彻底摆脱这种痛苦。使用动态 SQL 并非一件易事,但借助可用于任何 SQL 映射语句中的强大的动态 SQL 语言,MyBatis 显著地提升了这一特性的易用性。MyBatis的动态SQL是基于OGNL表达式的,它可以帮助我们方便的在SQL语句中实现某些逻

2021-07-23 15:44:13 93

原创 MyBatis_04 一对多、级联查询、缓存

文章目录一、一对一关联(级联查询)二、一对多(级联查询)1、实体类2、接口3、映射配置三、关联操作以新增为例1、新增一名学生信息,并关联以存在的老师。接口:映射配置:测试:2、新增一名学生信息,并关联新的老师。接口:映射配置:测试:四、缓存机制1、概念2、一级缓存示例3、一级缓存失效情况4、二级缓存(全局缓存)完整代码一、一对一关联(级联查询)思路:级联查询自定义association映射配置:<?xml version="1.0" encoding="UTF-8" ?>&lt

2021-07-22 16:24:06 336

原创 MyBatis_03 分页、一对一、延迟加载

文章目录一、#与$的区别二、ResultMap(自定义结果映射)1、在映射配置文件中配置:2、使用:3、Mybatis中javaType和jdbcType对应关系4、RestulType和ResultMap的区别?三、分页查询1、使用SQL的方式2、使用MyBatis的方式三、一对一关联1、关联关系(association)2、MyBatis中使用association标签来解决一对一的关联查询,association标签可用的属性如下:3、创建表和数据4、创建Teacher实体类5、修改Student实体

2021-07-22 12:22:49 217

原创 MyBatis_02 日志、全局配置、CRUD

一、配置日志(LOG4J)使用日志可以监控SQL的执行情况,目前日志框架也非常成熟,如log4j。1、加入依赖<!--log4j--><dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version></dependency>2、加入配置文件,

2021-07-21 23:49:58 142

原创 MyBatis_01 入门

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-07-20 14:43:52 92

原创 使用Docker部署Mysql并实现主从复制

Mysql主从复制1.先建立数据存放目录(/data/)--mysql-master --data --conf --my.cnf--mysql-slave --data --conf --my.cnf2. 准备好 Mysql Master(主库)和Mysql Slave(从库)的my.cnf文件Master my.cnf 配置文件:[mysqld]server_id = 1 #标识服务实例log-bin= mysql-bin read-only=0 #0表示支持可读写、1

2021-06-29 14:22:57 88

转载 在Linux上使用Docker部署ElasticSearch

下载镜像docker pull elasticsearch:7.6.2创建挂载的目录mkdir -p /data/elasticsearch/configmkdir -p /data/elasticsearch/dataecho "http.host: 0.0.0.0" >> /data/elasticsearch/config/elasticsearch.yml创建容器并启动docker run --name elasticsearch -p 9200:9200 .

2021-06-07 16:15:04 370

原创 FastDFS6.0.6在腾讯云单机上部署

FastDFS6.0.6在腾讯云单机上部署文章目录FastDFS6.0.6在腾讯云单机上部署1.下载所需的包2.安装依赖&开放相关端口号2.1 安装依赖2.2 开放端口号3.安装FastDFS3.1 安装libfastcommon3.2 安装fastdfs3.3 单机部署3.3.1 配置tracker3.3.2 配置storage3.3.3 启动、关闭与测试4.安装Nginx4.1 安装nginx4.2 启动与关闭4.3 添加fastdfs-nginx-module4.4 配置Nginx5. 测试

2021-05-28 15:00:16 847

原创 Docker常用命令,命令大全

文章目录Docker命令总结docker常用命令docker命令大全常用命令由个人学习总结。命令大全翻译自官方最新(2021.05.19)文档,如有错误,请参阅官网。感谢纠正!Docker命令总结Docker官方帮助文档docker常用命令#info|versiondocker info #显示docker的系统信息,包括镜像和容器的数量docker version #显示docker的版本信息。#帮助命令docker 命令 --help #帮助命令#镜像命令d

2021-05-19 22:23:29 49763 5

原创 01. Dubbo,Zookeeper简介,安装

文章目录01.1 Dubbo1. SOA2. Apache Dubbo2.1 Apache Dubbo简介2.2 Apache Dubbo架构3. Zookeeper3.1 Zookeeper简介3.2 Zookeepr架构3.3 Zookeeper安装3.3.1 安装3.3.2 配置3.3.3 启动与关闭4. Helloworld4.1 服务提供者4.2 服务消费者5. Dubbo admin01.1 Dubbo1. SOASOA是Service-Oriented Architecture的简称,它

2021-05-13 09:56:06 81

原创 Linux一键安装,卸载MySQL Shell脚本

一键安装卸载mysql脚本使用说明环境和版本操作系统:Centos7mysql版本:MySQL5.7上源码配置configuration.sh#!/bin/bash#下载资源保存路径download=/home/mysql#rpm源文件名。例如:mysql57-community-release-el7-11.noarch.rpmrpmsource=mysql57-community-release-el7-11.noarch.rpmshell脚本onekeyMysql.sh#!

2021-05-12 09:55:57 887 1

原创 SpringMVC

SpringMVC简介在之前,我们曾学过基于MVC思想的struts2框架,而Spring本身对于Web开发也提供了一个非常强大的解决方案。SpringMVC基于模型-视图-控制器(Model-View-Controller,MVC)模式实现,它能够帮助我们构建更为灵活和松耦合的Web应用程序。SpringMVC得益于自身两大核心技术DI和AOP的运用,使得我们可以在Web项目中以更优雅和更健壮的方式引入、整合各类资源。目前,SpringMVC在Web框架的市场份额上,已经遥遥领先于struts2等传统

2021-01-07 11:28:00 81

原创 Spring数据访问-MyBatis

在Spring中整合MyBatis有了Spring JDBC的理论基础,Spring整合MyBatis进行数据访问就比较简单了。添加所需依赖首先为项目做类库准备,由于内容比较多,我们划分成4部分:Spring相关的库<!-- spring-context:Spring基础依赖 --><dependency> <groupId>org.springframework</groupId> <artifactId>spri

2021-01-07 11:21:49 112

原创 Spring数据访问-JDBC

Spring JDBC简介数据是应用程序的血液,鉴于数据的重要地位,以健壮、简单和清晰的方式开发应用程序的数据访问部分就显得举足轻重了。在Java中,JDBC是与关系型数据库交互的最基本方式。但是按照规范,JDBC有些太笨重了。Spring能够解除我们使用JDBC中的大多数痛苦,包括小出样板式代码、简化JDBC异常处理,你所需要做的仅仅是关注要执行的SQL语句。在本章中,我们将学习Spring对数据持久化的支持,以及Spring为JDBC所提供的基于模板的抽象,它能够极大地简化JDBC的使用。JDB

2021-01-07 11:18:18 146

原创 SpringAOP

什么是AOP?Aspect Oritention Programming 面向切面编程。换句话说AOP是一种更高级的动态代理的使用。AOP术语在上一章编写动态代理案例的时候,我们把很多辅助逻辑都封装在了各种Handler中。这些售前服务、售后服务也就是所谓的横切关注点,它是可以被模块化为特殊的类的,这些类被称为切面(aspect)。这样做有两个好处:首先,现在每个关注点都集中于一个地方,而不是分散到多处代码中;其次,模块服务更简洁,因为它们只包含主要关注点(或核心功能)的代码,而次要关注点

2021-01-07 11:13:56 60

原创 AOP之动态代理

什么是AOP在上一章的学习中,我们知道Spring一直致力于简化我们的Java开发,并且用到了依赖注入(Dependency Injection)与AOP(Aspect-Oriented Programming)这两项非常重要的技术:DI主要解决了在类和类之间有依赖关系的时候,如何通过注入的方式(属性注入、构造器注入)形成松耦合而今天要学习的AOP则是考虑如何把散落在应用中多处相同的功能剥离出来,使得这些剥离出来的逻辑与业务逻辑相分离的问题。让我们先来看一个生活中的案例:每家每户都

2021-01-07 11:02:49 2237

原创 Spring入门

来源:note.gogoy.cnWhy Spring?Spring makes programming Java quicker, easier, and safer for everybody. Spring’s focus on speed, simplicity, and productivity has made it the world’s most popular Java framework.为什么使用Spring?Spring使Java编程对每个人来说更快、更容易、更安全。Spr.

2021-01-05 09:59:05 129

空空如也

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

TA关注的人

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