自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JVM内存模型

内存模型java内存模型java内存结构和java内存模型是完全不一样的,java内存模型是Java Memory Model(JMM)JMM定义了一套在多线程读写共享数据时(成员变量、数组)时,对数据的可见性、有序性、和原子性的规则和保障权威解释:https://download.oracle.com/otn-pub/jcp/memory_model-1.0-pfd-spec-oth-JSpec/memory_model-1_0-pfd-spec.pdf?AuthParam=15628

2022-04-17 21:45:43 435

原创 JVM类加载器

类加载器与字节码技术[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rruJ5qLA-1650117244977)(C:\Users\maybe3032\AppData\Roaming\Typora\typora-user-images\image-20220331222540931.png)]类文件结构一个简单的HelloWorld.javapackage cn.itcast.jvm.t5;// HelloWorld 示例public class Hello

2022-04-16 21:54:58 1111

原创 JVM-垃圾回收

垃圾回收如何判断对象可以回收引用计数法当一个对象被其他变量引用,该对象计数加一,当某个变量不在引用该对象,其计数减一当一个对象引用没有被其他变量引用时,即计数变为0时,该对象就可以被回收缺点:循环引用时,两个对象的计数都是1,导致两个对象都无法被释放[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-evIq5kGt-1648738836376)(C:\Users\maybe3032\AppData\Roaming\Typora\typora-user-images

2022-03-31 23:00:51 478

原创 JVM-内存结构

内存结构程序计数器[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TGivmdmR-1648738783843)(C:\Users\maybe3032\AppData\Roaming\Typora\typora-user-images\image-20220314214305600.png)]定义Program Counter Register 程序计数器 (寄存器)作用,是记住下一条jvm指令的执行地址特点是线程私有的CPU会为每个线程分配时间片,

2022-03-31 22:59:59 1173

原创 分布式搜索

分布式搜索初识elasticsearch了解elasticsearchelasticsearch的作用elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据中快速找到需要的内容ELK技术栈· elasticsearch结合kibana、Logstash、Beats,也就是elastic stack(ELK)。被广泛应用在日志数据分析、实时监控等领域· elasticsearch是elastic stack的核心,负责存储、搜索、分析数据[外链图片转

2022-03-15 14:48:24 760

原创 Docker

Docker初识Docker什么是Docker微服务虽然具备各种各样的优势,但服务的拆分通用给部署带来了很大的麻烦。分布式系统中,依赖的组件非常多,不同组件之间部署时往往会产生一些冲突。在数百上千台服务中重复部署,环境不一定一致,会遇到各种问题应用部署的环境问题大型项目组件较多,运行环境也较为复杂,部署时会碰到一些问题:依赖关系复杂,容易出现兼容性问题开发、测试、生产环境有差异[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6eH822bQ-

2022-03-13 21:29:18 273

原创 SpringCloud

SpringCloud[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3AHUtDBX-1647160769089)(C:\Users\maybe3032\AppData\Roaming\Typora\typora-user-images\image-20220312143355012.png)]认识微服务服务架构演变· 单体架构· 简单方便,高耦合度,扩展性差,适合小型项目。例如:学生管理系统[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(i

2022-03-13 16:40:03 822

原创 SpringBoot实用开发

SpringBoot实用开发热部署手动启动热部署开启开发者工具后启动热部署<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional></dependency>使用构建项目操作启动热部署

2022-03-11 22:47:22 1473

原创 SpringBoot运维实用篇

SpringBoot运维实用篇打包与运行SpringBoot工程可以基于java环境下独立运行jar文件启动服务SpingBoot工程执行mvn命令package进行打包执行jar命令:java -jar 工程名.jar步骤对SpingBoot项目打包(执行MAven构建指令package)mvn package运行项目(执行启动指令)java -jar 工程名.jar注意事项· jar支持命令行启动需要依赖maven插件支持,请确定打包时是否具有SpringBoot对

2022-03-09 16:46:05 570

原创 基于SpringBoot的SSMP整合案例

基于SpringBoot的SSMP整合案例SSMP案例效果演示SSMP案例制作流程解析先开发基础CRUD功能,做一层测一层调通页面,确认异步提交成功后,制作所有功能添加分页功能与查询功能模块创建勾选SpringMVC与Mysql坐标修改配置文件为yml格式设置端口为80方便访问实体类开发Lombok· Lombok,一个Java类库,提供一组注解,简化POJO实体类开发<dependency> <groupId>org.pro

2022-03-08 21:03:18 363

原创 SpringBoot基础

SpringBoot基础快速上手SpringBoot· SpringBoot目的:简化Spring应用的初始搭建以及开发过程开发步骤创建新模块,选择Spring Initializr,并配置模块相关基础信息[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cGe4syGe-1646724591816)(C:\Users\maybe3032\AppData\Roaming\Typora\typora-user-images\image-2022030716225775

2022-03-08 15:30:10 407

原创 REST风格

REST风格REST简介· REST(Representational State Transfer),表现形式状态转换传统风格资源描述形式​ http://localhost/user/getById?id=1​ http://localhost/user/saveUserREST风格描述形式​ http://localhost/user/1​ http://localhost/user优点· 隐藏资源的访问行为,无法通过地址得知对资源是何种操作· 简化书写行为动作· 按

2022-03-07 20:27:12 204

原创 MyBatis-Plus深入

Mybatis Plus深入ActiveRecord· ActiveRecord也属于ORM(对象关系映射)层,由Rails最早提出,遵循标准的ORM模型:表映射到记录,记录映射到对象,字段映射到对象属性。配合遵循的命名和配置惯例,能够很大程度的快速实现模型的操作,而且简洁易懂。· ActiveRecord的主要思想是:​ 1. 每一个数据库表对应创建一个类,类的每一个对象实例对应于数据库中表的一行记录;通常表的每个字段在类中都有相应的Field;​ 2. ActiveRecord同时负责把自己持

2022-03-07 12:38:49 653

原创 MyBatis-Plus基础

Mybatis-Plus了解Mybatis-PlusMybatis-Plus介绍· Mybatis-Plus简称(MP)是一个Mybatis的增强工具,在Mybatis的基础上只做增强不做改变,为简化开发提高效率而生· 官网:https://mybatis.plus/ 或 https://mp.baomidou.com/代码以及文档文档地址:https://mybatis.plus/guide/源码地址:https://github.com/baomidou/mybatis-plus特性[

2022-03-06 21:14:55 1195

原创 Mybatis

MybatisMybatis的简介原始jdbc操作的分析[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JkwE9uWB-1646468306665)(C:\Users\maybe3032\AppData\Roaming\Typora\typora-user-images\image-20220303113033630.png)]什么是Mybatis· mybatis是一个优秀的基于java的持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要

2022-03-05 16:18:42 1349

原创 Spring事务控制

Spring事务控制编程式事务控制相关对象PlatformTransactionManager[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Bosr4aGD-1646468286423)(C:\Users\maybe3032\AppData\Roaming\Typora\typora-user-images\image-20220303094606497.png)]TransactionDefinition[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来

2022-03-05 16:18:17 290

原创 SpringMVC

SpringMVCSpring与Web环境集成ApplicationContext应用上下文获取方式[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Sg7nKLhD-1646142279947)(C:\Users\maybe3032\AppData\Roaming\Typora\typora-user-images\image-20220226205429135.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DvCGS8TI-1

2022-03-01 21:44:56 154

原创 SpringMVC拦截器

SpringMVC拦截器拦截器(interceptor)的作用Spring MVC的拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理将拦截器按一定的顺序联结成一条链,这条链称为拦截器链(Interceptor Chain。在访问被拦截的方法或字段时,拦截器链中的拦截器就会按其之前定义的顺序被调用。拦截器也是AOP思想的具体实现拦截器和过滤器区别[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HNLjMhzn-1646142226

2022-03-01 21:43:55 249

原创 SpringMVC异常处理机制

SpringMVC异常处理机制异常处理的思路系统中异常包括两类:预期异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息,后者主要通过规范代码开发、测试等手段减少运行时异常的发生系统的Dao、Service、Controller出现都通过throws Exception向上抛出,最后由SpringMVC前端控制器交由异常处理器进行异常处理[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kfFk8KF0-1646142196028)(C:

2022-03-01 21:43:33 172

原创 AOP学习

AOPSpring的AOP简介AOP是什么AOP为Aspect Oriented Programming,意思是面向切面编程,是通过预编译方式和运行期动态代理实现程序工程的统一维护的一种技术AOP是OOP的延续。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高开发效率AOP的作用以及优势作用:在程序运行期间,在不修改源码的情况下对方法进行功能增强优势:减少重复代码,提高开发效率,并且便于维护AOP的底层实现AOP的底层是通

2022-03-01 21:42:18 496

原创 Spring基础

SpringSpring简介· Spring是分层的Java SE/EE应用full-stack轻量级开源框架,以IoC(Inverse Of Control:反转控制)和AOP(Aspect Oriented Programming:面向切面编程)为内核[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KW8Z7dwm-1645797437318)(C:\Users\maybe3032\AppData\Roaming\Typora\typora-user-images\i

2022-02-25 21:57:28 281

原创 Git学习

Git分布式版本控制工具概述Git· 分布式版本控制工具分布式版本控制系统么有“中央服务器”,每个人的电脑都是一个完整的版本库,这样工作的时候,无需要联网了,因为版本库就在自己的电脑上。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-naXbfe1h-1645616659517)(C:\Users\maybe3032\AppData\Roaming\Typora\typora-user-images\image-20220222213643119.png)]Gi

2022-02-23 19:44:55 290

原创 Maven

#Maven##Maven是什么[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x3wZe9if-1645512366718)(])##Mavern的作用1.项目构建:提供标准的、跨平台的自动化项目建构方式2.依赖管理:方便快件的管理项目依赖的资源(jar包),避免资源间的版冲突问题3.统一开发结构:提供标准的、统一的项目结构#Maven基础概念##仓库:用于存储资源,包含各种jar包##仓库分类:###本地仓库###远程仓库:1.中央仓库2.私服

2022-02-22 20:58:30 173

原创 Java常用类

常用类Object类超类、基类,所有类的直接或间接父类,位于继承树的最顶层任何类,如没有书写extends显示继承某个类,都默认直接继承Object类,否则为间接继承Object类中所定义的方法,是所有对象都具备的方法Object类型可以存储任何对象作为参数,可接收任何对象作为返回值,可返回任何对象Object类常用方法getClass()方法public final Class<?> get(){}//返回引用中存储的实际对象类型//应用:通常用于判断两个引用

2021-09-17 17:36:29 162

原创 Java异常机制

异常机制什么是异常异常指程序运行中出现的不期而至的各种状况异常发生在程序运行期间,他影响了正常的程序执行流程分类检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这个是程序员无法预见的运行时异常:运行时异常是可能别程序员避免的异常。与检查性异常相反,运行时异常可以在编译时被忽略错误ERROR:错误不是异常,而是脱落程序员控制的问题。错误在代码中通常被忽略异常体系结构Java把异常当作对象来处理,并定义了一个基类java.lang.Throwable作为所有

2021-09-15 16:56:31 103

原创 Java面向对象

初识面向对象什么是面向对象面向对象编程(Object-Oriented Programming,OOP)面向对象编程的本质是:以类的方式组织代码,以对象的组织(封装)数据三大特性封装继承多态对象的创建和分析使用new关键字创建对象使用new关键字创建的时候,除了分配内存空间外,还会给创建好的对象进行默认的初始化以及对类中构造器的调用package com.MHP.opp;//学生类public class Student { String name;

2021-09-15 16:56:02 132

原创 java方法

何为方法java的方法类似于其他语言的函数,是一段用来完成特定功能的代码方法的定义及调用方法的定义方法包含一个方法头和一个方法体修饰符:可选的,告诉编译器如何调用该方法。定义了该方法的访问类型返回值类型:方法可能会放回值。没有放回值的时候,关键字是void方法名:首字母小写,驼峰原则参数类型:参数像是一个占位符a. 形式参数:在方法被调用时用于接收外界输入的数据b. 实参:调用方法时实际传给方法的数据方法体:方法体包含具体的语句,定义该方法的功能pac

2021-09-11 23:09:23 105

原创 Java数组

数组概述定义数组是相同数据类型的有序集合数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成其中,每一个数据称为一个数组元素,每一数组元素都可以通过一个下标来访问数组声明创建首先必须声明数组变量,才可以在程序中使用数组。/**int[] nums;//首选的方法int nums[];//效果相同,但是不建议选择*/int[] numbers;//声明一个数组int[]numbers=new int[10];//创建一个数组数组的元素是通过索引访问的,数组

2021-09-11 23:08:30 131

原创 Java流程控制

用户交互ScannerScanner对象需要导入import java.util.Scanner基本语法:Scanner s= new Scanner(System.in);通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据import java.util.Scanner;public class Demo1 { public static void main(St

2021-09-10 17:49:39 106

原创 Java基础语法

Java基础语法注释、标识符、关键字注释注释并不会被执行,是给写代码的人看的三种java注释单行注释使用**//**多行注释使用/**/JavaDoc文档注释使用/** */标识符关键字Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Kg6gzss3-1631188075190)(C:\Users\maybe3032\AppData\Roaming\Typora\typora-

2021-09-09 19:48:08 112

原创 Java三大版本

Java三大版本Write Once、Run AnywhereJaveSE标准版(桌面程序,控制台开发)JavaMe嵌入式开发(手机,家电): 现在基本上没有人使用了JaveEE企业级开发(Web端,服务器开发…)JDK、JRE、JVMJDKjava开发者工具:Java Development KitJREJava运行时环境:Java Runtime EnvironmentJVMJava虚拟机[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ryKK

2021-09-09 19:47:28 146

原创 Markdown使用学习

Markdown学习Markdown标题用法##加空格后回车是二级标题###加空格后回车是三级标题####加空格后回车是四级标题字体Hello World! 双星加在前后是加粗Hello World! 单星加在前后是斜体Hello World! 三星加在前后是加粗斜体Hello World 双tab上的键~加在前后是画横线引用Life is Fantastic在前面加大于号是引用分割线三个—就可以形成分割线图片需要打出英文输入法下的!和[]以及一个()可以存入本地的

2021-09-08 16:45:21 105

空空如也

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

TA关注的人

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