
java
文章平均质量分 65
The Mutents
一个正在学编程的小白
展开
-
MySql高级学习笔记(八)
MySQL数据库日志1.六大数据库日志6类日志分别为:慢查询日志:记录所有执行时间超过long_query_time的所有查询,方便我们对查询进行优化。通用查询日志:记录所有连接的起始时间和终止时间,以及连接发送给数据库服务器的所有指令,对我们复原操作的实际场景、发现问题,甚至是对数据库操作的审计都有很大的帮助。错误日志:记录MySQL服务的启动、运行或停止MySQL服务时出现的问题,方便我们了解服务器的状态,从而对服务器进行维护。二进制日志:记录所有更改数据的语句,可以用于主从服务器之间的原创 2022-04-07 10:05:59 · 307 阅读 · 2 评论 -
MySQL高级学习笔记(七)
主要内容:InnoDB中MVCC机制的原理及流程原创 2022-02-22 23:05:53 · 507 阅读 · 0 评论 -
MySQL高级学习笔记(六)
MySQL高级学习笔记,主要包含内容:MySQL的锁机制,有锁的分类、锁的内存结构和锁的监控方式原创 2022-02-18 17:38:36 · 296 阅读 · 0 评论 -
MySQL高级学习笔记(五)
mysql高级学习记录:内容包含事务和redo日志和undo日志原创 2022-02-16 11:06:37 · 440 阅读 · 0 评论 -
MySQL高级学习笔记(四)
一、数据库的设计规范如果是槽糕的数据库设计可能会造成以下问题:数据冗余、信息重复、存储空间浪费数据更新、插入.删除的异常无法正确表示信息丢失有效信息程序性能差良好的数据库设计则有以下优点:节省数据的存储空间能够保证数据的完整性方便进行数据库应用系统的开发总之,开始设置数据库的时候,我们就需要重视数据表的设计。为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。1. 范式(Normal Form)第一范式(1st NF)第一范式主要是确保数原创 2022-02-14 22:42:52 · 364 阅读 · 0 评论 -
MySQL高级学习笔记(三)
索引优化与查询优化进行数据库调优的维度:索引失效。没有充分利用到索引 —— 索引建立关联查询太多JOIN (设计缺陷或不得已的需求) —— SQL优化服务器调优及各个参数设置(缓冲、线程数等) —— 调整my.cnγ数据过多 —— 分库分表虽然SQL查询优化的技术有很多,但是大方向上完全可以分成物理查询优化和逻辑查询优化两大块。物理查询优化是通过索引和表连接方式等技术来进行优化,这里重点需要掌握索引|的使用。逻辑查询优化就是通过SQL等价变换提升查询效率,直白一点就是说,换一种查询原创 2022-02-13 17:04:27 · 753 阅读 · 0 评论 -
MySQL高级学习笔记(二)
索引的创建与设计原则原创 2022-02-04 16:44:15 · 1292 阅读 · 0 评论 -
mysql高级学习笔记(一)
mysql高级学习笔记(一)原创 2022-01-25 18:23:22 · 1683 阅读 · 0 评论 -
MySQL8的主要目录结构
MySQL8的主要目录结构查看mysql相关的目录,命令如下find / -name mysql1. 数据库文件的存放路径MySQL数据库文件的存放路径:/var/lib/mysqlMySQL服务器程序在启动时会到文件系统的某个目录下加载一些文件,之后在运行过程中产生的数据也都会存储到这个目录下的某些文件中,这个目录就称为数据目录。该目录对应着mysql中的系统变量datadir2. 相关命令目录存放mysql相关命令目录:/usr/bin 和 /usr/sbin..原创 2022-01-25 15:54:53 · 2313 阅读 · 1 评论 -
Linux搭建javaEE开发环境
Linux搭建javaEE开发环境一、准备工作在Windows里面下载好javaee开发所需要的基本环境,注意软件需要下载Linux操作系统的将这几个软件通过Xftp上传到/opt目录下二、安装JDK解压jdk安装包到/opt/目录下配置环境变量使配置文件生效source /etc/profile配置成功三、安装Tomcat解压tomcat压缩包到/opt/目录下启动tomcat在Linux本地访问成功开放Linux的8原创 2022-01-22 17:03:46 · 1907 阅读 · 4 评论 -
Redis6的介绍及常用五大数据类型
redis的五大数据类型的基本语法及使用原创 2022-01-17 13:24:30 · 778 阅读 · 0 评论 -
Redis的安装及启动
Redis的安装及启动1.将Redis安装包移动到Linux中2.安装C语言的编译环境(gcc编译器)安装gcc命令yum install gcc查看gcc版本gcc --version3.解压Redis安装包tar zxvf redis-6.2.6.tar.gz 4. 将解压的文件编译成c文件[root@Lhk001 redis-6.2.6]# cd redis-6.2.6/[root@Lhk001 redis-6.2.6]# make编译完成5.安装Redis原创 2022-01-15 13:05:20 · 434 阅读 · 0 评论 -
IDEA集成Git
IDEA集成Git1.配置忽略文件配置忽略文件主要是用来忽略与项目实际功能无关,不能参与服务器上部署运行的文件在用户目录下创建一个git.ignore文件配置内容和如下# Compiled class file*.class# Log file*.log# BlueJ files*.ctxt# Mobile Tools for Java (J2ME).mtj.tmp/# Package Files #*.jar*.war*.nar*.ear*.zip*.tar.原创 2022-01-15 11:40:39 · 264 阅读 · 0 评论 -
Git与GitHub
代码托管中心GItHub前言:温馨提醒大家在学习的时候最好能够科学上网,不然GitHub很难进去哦1.在GItHub中创建自己的远程仓库获取https连接2.操作远程仓库2. 1创建远程仓库别名由于连接太长,即给远程仓库链接取个别名命令作用git remote -v查看当前别名git remote add 别名 远程库链接给远程库取个别名2.2推送本地分支到远程库命令作用git push 远程库别名 分支名推送本地分支到远程库原创 2022-01-15 11:40:16 · 100 阅读 · 0 评论 -
Git的分支
Git的分支前言(本段来自搜狗百科)直至现在为止,我们的项目版本库一直都是只有一个分支 master。在 git 版本库中创建分支的成本几乎为零,所以,不必吝啬多创建几个分支。下面列举一些常见的分支策略,仅供大家参考:创建一个属于自己的个人工作分支,以避免对主分支 master 造成太多的干扰,也方便与他人交流协作。当进行高风险的工作时,创建一个试验性的分支,扔掉一个烂摊子总比收拾一个烂摊子好得多。合并别人的工作的时候,最好是创建一个临时的分支1.分支的好处同时并行推进多个功原创 2022-01-15 11:39:37 · 239 阅读 · 0 评论 -
Git的常用命令
git的常用命令原创 2022-01-06 23:09:39 · 239 阅读 · 0 评论 -
JDBC核心技术
JDBC一、软件的架构方式B/S架构:Browser Server 浏览器-服务器C/S架构:Client Server 客户端-服务器弊端:需要经常更新客户端来访问到最新修改后的信息优势:有更好的用户体验原创 2021-10-21 23:00:52 · 117 阅读 · 0 评论 -
代码块结构
代码块结构1.代码块的作用:用来初始化类、对象2.代码块如果有修饰的话,只能使用static.3.分类:静态代码块vs非静态代码块4.静态代码块内部可以有输出语句随着类的加载而执行,而且只执行一次作用:初始化类的信息如果一个类中定义了多个静态代码块,则按照声明的先后顺序执行静态代码块的执行要优先于非静态代码块的执行。静态代码块内只能调用静态的属性、静态的方法,不能调用非静态的结构5.非静态代码块内部可以有输出语句随着对象的创建而执行每创建一个对象,就执行一次非静态代码块作原创 2021-05-28 18:02:08 · 180 阅读 · 0 评论 -
单例设计模式
单例设计模式/** * 单例设计模式:所谓类的单例设计模式,就是采取一定的方法保证在整个的 软件系统中, * 对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法。 * @author Lhk * *单例模式饿汉式实现 * */public class Singletons_Test { public static void main(String[] args) { Bank bank1=Bank.getBank(); Bank bank2=Bank.getB原创 2021-05-28 16:56:29 · 91 阅读 · 1 评论 -
IO流
IO流一、IO简介1.什么是IO输入(Input)指的是:可以让程序从外部系统获得数据(核心含义是"读”,读取外部数据)。常见的应用:读取硬盘上的文件内容到程序。例如∶播放器打开一个视频文件、word打开一个doc文件。读取网络上某个位置内容到程序。例如:浏览器中输入网址后,打开该网址对应的网页内容;下载网络上某个网址的文件。读取数据库系统的数据到程序。读取某些硬件系统数据到程序。例如:车载电脑读取雷达扫描信息到程序;温控系统等。输出(Output)指的是:程序输出数据给外部系统从而原创 2021-05-20 22:00:05 · 150 阅读 · 0 评论 -
智能电话本项目
智能电话本项目一、项目介绍项目描述该项目是用于日常生活中记录联系人信息的一款智能小工具。实现了对联系人的姓名、年龄、性别、电话号码、住址的添加及修改、查找、删除、排序等功能。该项目是以 Windows控制台为运行平台,所有的操作都应在控制台上进行。编写目的通过该项目可以对JavaSE的知识点进行统一的复习,将平时所学的内容综合到—起并运用到实际的项目中。该项目能够充分的体现出一些简单的业务流程处理,能够使同学们掌握基本的业务流程处理。进一步理解什么是面相对象设计(0OD: 0bjec原创 2021-05-16 09:58:05 · 226 阅读 · 0 评论 -
Java中的正则表达式
Java中的正则表达式一、正则表达式介绍二、正则表达式的作用三、正则表达式的特点四、Java中正则表达式的使用五、正则表达式的语法规则内容限定:单个字符限定[a]:表示当前内容必须是字母apublic class RegexTest { public static void main(String[] args) { String regex="[a]"; String str1="a"; String str2="b"; System.out.println(s原创 2021-05-14 16:41:35 · 1627 阅读 · 0 评论 -
数据结构:树结构、自定义树结构存储容器
树形结构树形结构简介一对多的关系树的相关术语结点(Node)使用树结构存储的每一个数据元素都被称为“结点”。结点的度(Degree of Node)某个结点所拥有的子树的个数。树的深度(Degree of Tree)树中结点的最大层次数。叶子结点(Leaf Node)度为0的结点,也叫终端结点。分支结点(Branch Node)度不为О的结点,t也叫非终端结点或内部结点。孩子(Child)也可称之为子树或者子结点,表示当前结点下层的直接结点。原创 2021-05-13 23:16:48 · 248 阅读 · 0 评论 -
数据结构线性结构:栈、单向、双向链表
线性结构一、栈结构1.栈的定义2.实现栈结构import java.util.Arrays;import java.util.EmptyStackException;/**自定义栈容器@author Lhk*/public class MyStack {private Object[] arr;//存放元素的物理结构private int stackLength =4;//数组的默认长度private int size;//记录栈容器的元素个数private int原创 2021-05-13 23:14:41 · 215 阅读 · 0 评论 -
数据结构介绍
数据结构介绍一、什么是数据结构二、数据结构的逻辑分类1.线性结构数据结构中的元素存在一对一的相互关系;常见的线性结构:线性表,栈,队列,串(一维数组等)。2.树形结构3.图形结构...原创 2021-05-08 10:22:01 · 85 阅读 · 0 评论 -
Collections工具类
Collections工具类import java.util.ArrayList;import java.util.Collections;import java.util.List;public class Collections_Sort_Test { public static void main(String[] args) { List<String> list=new ArrayList<>(); list.add("b"); list.ad原创 2021-05-07 17:41:44 · 71 阅读 · 0 评论 -
Iterator迭代器
Iterator迭代器一、Iterator迭代器接口介绍二、Iterator容器的使用/** * 迭代List接口类型容器 */import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class Iterator_List_Test { public static void main(String[] args) { //实例化容器 List<String>原创 2021-05-07 17:27:20 · 69 阅读 · 0 评论 -
双例集合
双例集合一、Map接口1.Map接口的特点2.Map与Collection的区别3.Map接口的常用方法其他的方法可自行通过api文档查询二、HashMap容器类/** * 测试HashMap的相关方法 */import java.util.HashMap;import java.util.Map;import java.util.Set;public class HashMap_Test { public static void main(String[] args)原创 2021-05-07 15:38:44 · 121 阅读 · 0 评论 -
产生[1,10]的随机数,将不重复的10个元素分别存储到List容器和Set容器中
产生[1,10]的随机数,将不重复的10个元素分别存储到List容器和Set容器中import java.util.ArrayList;import java.util.List;/** * 产生[1,10]的随机数,将不重复的10个元素存储到List容器中 * @author Lhk * */public class ListDemo { public static void main(String[] args) { List<Integer> list=new原创 2021-05-06 16:41:08 · 431 阅读 · 0 评论 -
容器介绍与单例集合
容器一.简介程序中的容器用来容纳和管理数据。实际上,数组就是一种容器,可以在其中放置对象或基本类型数据Java中很多的容器在底层就是使用数组来实现的容器对数据的存储是基于内存层面,即数据会存储在内存中(临时存储),不是存储在磁盘中二、容器的结构1.结构图2.单例集合单例集合:将数据一个一个的进行存储List接口:存储有序,允许重复,相当于动态数组Set接口:存储无序,不可重复,类似于数学上集合的特性3.双例集合双例集合:基于Key与Value的结构存储数据(类似于数学上的函原创 2021-05-06 15:42:18 · 259 阅读 · 0 评论 -
Java泛型
泛型1.泛型简介2.泛型好处3.类型擦除4.泛型的使用(1)定义泛型(2)泛型类语法结构测试例子:/** * 测试泛型 * @author TheMutens * *//** * 如果一个类不使用泛型,则在该类中所定义的成员变量和方法参数类型、 * 返回值类型都得自己去定义所需要类型;如果使用泛型,则该类中的成员 * 变量,方法参数或者返回值类型都可以使用该类定义的泛型类型 */public class Generic <T> { priva原创 2021-04-21 14:02:03 · 100 阅读 · 0 评论 -
java异常机制
异常异常机制在没有异常机制的情况下,使用if语句处理程序中可能出现的各种情况,但是这种方式并不理想因此,java的异常机制给我们提供了方便的处理异常情况的方式异常机制本质异常(Exception)的概念例:public class Test01 { public static void main(String[] args) { int i=1/0; }}算术异常,除数不能为0用if语句解决此异常 //int i=1/0;//异常情况原创 2021-04-16 15:51:27 · 95 阅读 · 0 评论 -
递归的相关知识
递归递归的缺陷测试代码/** * 递归测试,使用递归秋n!和斐波那契数列 * @author TheMutents * */public class DiGui_Test { public static void main(String[] args) { long d1=System.currentTimeMillis(); System.out.println("20的阶乘:"+factorial(20)); long d2=System.currentTimeMil原创 2021-04-12 14:50:03 · 98 阅读 · 0 评论 -
java枚举类型
枚举测试代码:import java.util.Random;/** * 测试枚举类型 * @author TheMutents * */public class Test01 { public static void main(String[] args) { System.out.println(Week.星期一); //枚举遍历 for(Week k:Week.values())//增强for循环,Week.values()返回一个Week[],里面包原创 2021-04-12 13:55:29 · 81 阅读 · 0 评论 -
java的File类
File类File类用来代表文件和目录可以通过File类读写文件File类常用方法通过File对象创建空文件或目录(在该对象所指的文件或目录不存在的情况下)测试代码/** * 测试File类 */import java.io.File;import java.io.IOException;import java.util.Date;public class File_Test01 { public static void main(String[] args) throws原创 2021-04-12 11:30:37 · 93 阅读 · 0 评论 -
Math类和Random类
Math类package Math_Test;import java.lang.Math;public class Test_01 { public static void main(String[] args) { test(); } public static void test(){ System.out.println(Math.abs(-3.5)); System.out.println(Math.cos(0)+" "+Math.sin(0)+" "+Ma原创 2021-04-11 16:57:07 · 90 阅读 · 0 评论 -
java时间处理相关类
时间处理相关类Date时间类(java.util.Date)/** * 测试Date类常用方法 * @author TheMutents */import java.util.Date;public class DataClass { public static void main(String[] args) { //long类型可以表示的最大年数 long a=Long.MAX_VALUE/(1000l*3600*24*365);//大约292471208个年数,足够原创 2021-04-11 16:05:12 · 122 阅读 · 0 评论 -
java字符串相关类
字符串相关类StringBuilder效率高但是线程不安全StringBuffer效率低但是线程安全String类查看其源码:我们发现字符串内容全部存储到了value[]数组中,而value数组是被final修饰的,即为常量类型(只能被赋值一次),这就是“不可变类型”的典型定义方式。String类常用的方法可在另外一篇文章里面查看添加链接描述public class Test_02 { public static void main(String[] args) {原创 2021-04-08 17:59:37 · 75 阅读 · 0 评论 -
java包装类
包装类在上述八个包装类中,除了Character和Boolean以外,其他的都是“数字型”,“数字型”都是java.lang.Number的子类Number类是抽象类,所以下图中的6个抽象方法所有子类都需要实现,这些方法意味着所有“数字型”包装类可以互相转型Integer i= new Integer(30);//从java9开始被废弃,可以使用但不建议 Integer a= Integer.valueOf(100);//官方建议使用这种方法创建Integer对象,将int类型转化为Int原创 2021-04-07 14:11:59 · 122 阅读 · 0 评论 -
java中的Comparable接口和冒泡排序、折半查找算法
Comparable接口public int compareTo(Object o) {//按折扣进行比较 Commodity good=(Commodity)o; if(this.discount>good.discount){ return 1; }else if(this.discount<good.discount){ return -1; }else return 0; }常见算法推荐学习算法网站:https://visualgo.net/原创 2021-04-05 17:50:45 · 168 阅读 · 2 评论