![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 86
柯柯不会Java
通过博客总结自己学习的知识,持续更新,欢迎交流指正!
展开
-
Vmware vSphere最实用的入门级教程
vSphere 是在数据中心产品下的一套软件,vSphere 类似微软的 Office 办公套件,Office 办公套件包含了许多软件如 Word, Excel, Access 等,和Office 一样,vSphere 也是一个软件的集合,他包括了 vCenter, ESXi 和vSphere client 等。ESXi 是 vSphere 中最重要的一个组件。ESXi 是虚拟化服务,所有的虚拟机都是运行在 ESXi 服务上面。原创 2022-09-29 11:36:12 · 2369 阅读 · 0 评论 -
设计者模式-单例模式和多例模式的区别
## 1、什么是单例和多例单例:所有请求用同一个对象来处理。通过单例模式,可以保证系统中一个类只有一个实例。,比如我们常用的service和dao层的对象通常都是单例的。多例:每个请求用一个新的对象来处理。比如action。## 2、为什么用单例多例1).之所以用单例,是因为没必要每个请求都新建一个对象,这样子既浪费CPU又浪费内存;2).之所以用多例,是为了防止并发问题;即一个请求改变了对象的状态,此时对象又处理另一个请求,而之前请求对对象状态的改变导致了对象对另一个请求做了错误的处理;原创 2022-09-01 16:11:44 · 388 阅读 · 0 评论 -
从prometheus生态系统组件到集成Java开发
Prometheus是最初在SoundCloud上构建的开源系统监视和警报工具包。于2016年加入了 Cloud Native Computing Foundation,这是继Kubernetes之后的第二个托管项目。Prometheus 其实就是一个数据监控解决方案,它能帮你简单快速地搭建起一套可视化的监控系统。...原创 2022-08-15 14:42:29 · 2508 阅读 · 0 评论 -
spingboot默认日志系统LogBack、Log4j和slf4j使用详解
spingboot默认日志系统LogBack、Log4j和slf4j使用详解spingboot默认日志系统LogBack依赖引入Spring Boot默认使用LogBack日志系统,如果不需要更改为其他日志系统如Log4j2等,则无需多余的配置,LogBack默认将日志打印到控制台上。如果要使用LogBack,原则上是需要添加dependency依赖的<groupId>org.springframework.boot</groupId><artifactId>原创 2022-04-02 16:32:47 · 9892 阅读 · 0 评论 -
MybatisPlus的UpdateWrapper和QueryWrapper的区别
MybatisPlus的UpdateWrapper和QueryWrapper的区别查询测试代码@Testpublic void testWrapper(){ LambdaQueryWrapper<Picture> lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.eq(Picture::getEnterpriseCode, "FASTECH_DEV"); lambda原创 2022-03-21 10:05:33 · 6801 阅读 · 2 评论 -
neo4j实现分布式锁
neo4j实现分布式锁应用场景:分布式环境下,希望能够生成一个唯一自增的序列号,自增序列号的存储使用neo4j问题一:使用neo4j存储,节点的属性使用一个定值,节点的属性值是自增的,首先是节点的创建,分布式环境下,节点的创建无法保证,因为比如两个线程同时创建节点,第一个线程判断neo4j中没有该节点,准备创建;这时,还没有创建成功,第二个线程进入判断该节点不存在,创建节点,这样就会创建两个节点,这样是不对的。解决办法:可以使用一个脚本,将该节点事先创建好问题二:要保证更改节点的属性值的操作是一个原原创 2021-11-18 10:37:00 · 497 阅读 · 0 评论 -
elasticsearch从入门到精通
es从入门到深入ElasticSearch概述Elaticsearch,简称为es ,es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。es也使用ava开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。据国际权威的数据库产品评测机构DB Engines的统计,在2016年1月,ElasticSearch已超过S原创 2021-09-24 22:12:07 · 665 阅读 · 0 评论 -
SpringMVC框架学习总结第二天
SpringMVC框架学习总结第二天响应数据和结果视图返回值分类字符串controller 方法返回字符串可以指定逻辑视图名,通过视图解析器解析为物理视图地址。controller层代码package cn.itcast.controller;import cn.itcast.domain.User;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import or原创 2021-09-04 17:37:35 · 234 阅读 · 0 评论 -
SpringMVC框架学习总结第一天
SpringMVC框架学习总结第一天SpringMVC的基本概念关于三层架构和 MVC三层架构我们的开发架构一般都是基于两种形式,一种是 C/S 架构,也就是客户端/服务器,另一种是 B/S 架构,也就是浏览器服务器。在 JavaEE 开发中,几乎全都是基于 B/S 架构的开发。那么在 B/S 架构中,系统标准的三层架构包括:表现层、业务层、持久层。三层架构在我们的实际开发中使用的非常多,所以我们课程中的案例也都是基于三层架构设计的。三层架构中,每一层各司其职,接下来我们就说说每层都负责哪些方面:原创 2021-08-29 00:12:42 · 345 阅读 · 0 评论 -
深度剖析Java多线程,由浅至深
Java多线程引入我们在之前,学习的程序在没有跳转语句的前提下,都是由上至下依次执行,那现在想要设计一个程序,边打游戏边听歌,怎么设计?要解决上述问题,咱们得使用多进程或者多线程来解决。并发与并行并发:指两个或多个事件在同一个时间段内发生。并行:指两个或多个事件在同一时刻发生(同时发生)。在操作系统中,安装了多个程序,并发指的是在一段时间内宏观上有多个程序同时运行,这在单 CPU 系统中,每一时刻只能有一道程序执行,即微观上这些程序是分时的交替运行,只不过是给人的感觉是同时运行,那是因为分时原创 2021-08-03 22:49:22 · 302 阅读 · 0 评论 -
Java异常基础大总结
Java异常什么是异常软件程序在运行过程中,非常可能遇到异常问题,意思就是例外,怎么让我们写的程序做出合理的处理,而不至于程序崩溃异常指程序运行中出现的不期而遇的各种状况,如:文件找不到、网络连接失败、非法参数等异常发生在程序运行期间,它影响了正常的程序执行流程简单分类要理解Java异常处理是如何工作的,要掌握以下三种类型的异常:检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的,例如:要打开一个不存在的文件时,一个异常就发生了,这些异常在编译时原创 2021-07-18 22:01:27 · 98 阅读 · 0 评论 -
Java集合基础大总结
Java集合大总结java集合关系图引用地址:https://blog.csdn.net/sdhgood/article/details/38849477引用地址:https://blog.csdn.net/weixin_44494373/article/details/105898218java集合的概述集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基原创 2021-07-13 17:31:24 · 169 阅读 · 0 评论 -
poi实现导出和导入excel
poi实现导出和导入excel引入需求最近工作上遇到一个功能需求,需要将页面上的数据模板导出为一个excel,和将单个excel导入,页面进行展示。导入有不符合规则的数据时,提供一个错误导出,错误地方用红框标注。分析模板导出十分简单,显示的字段是固定的,模块名称和进程名称,但是导入需要进行判断,判断规则有三种,不符合其中任意一种即标红。一、模块名称或者进程名称对应的字段值没填;二、导入的进程名称的字段值之间存在重复,重复的第二个标红;三、导入的进程名称与数据库存在的进程名称存在重复,重复的标红。二原创 2021-06-29 14:58:45 · 354 阅读 · 0 评论 -
neo4j数据库与mysql对比以及增删改查
neo4j引入neo4j案例假设郭富城希望找向华强拍电影,应该怎么找到他。使用mysql数据库创建数据库和表-- 创建数据库CREATE DATABASE IF NOT EXISTS neo4jDEFAULT CHARACTER SET utf8mb4DEFAULT COLLATE utf8mb4_0900_ai_ci;-- 创建明星表CREATE TABLE star ( id INT ( 11 ) NOT NULL AUTO_INCREMENT, homepage VARC原创 2021-06-23 11:55:14 · 1129 阅读 · 2 评论 -
neo4j整合springboot实现基础的增删改查
neo4j整合springboot实现基础的增删改查项目搭建pom.xml注意:这里使用的springboot2.3.2.RELEASE,jdk1.8,Neo4j Server version:3.5.28 (community),不同版本可能存在冲突问题,需要注意。<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://w原创 2021-06-15 20:44:50 · 1406 阅读 · 10 评论 -
Java将字符串追加换行输出到本地txt文件
/** * @Author keke * @Description 持久化字符串 * @Date 2021/6/9 * @Param [path, content] * @Return void **/ public static void FileWrite(String path, String content) { FileOutputStream writer = null; OutputStrea原创 2021-06-09 22:02:12 · 901 阅读 · 0 评论 -
Spring框架学习总结第四天
Spring框架学习总结第四天Spring中的JdbcTemplate[会用]JdbcTemplate概述它是 spring 框架中提供的一个对象,是对原始 Jdbc API 对象的简单封装。spring 框架为我们提供了很多的操作模板类。操作关系型数据的:JdbcTemplateHibernateTemplate操作 nosql 数据库的:RedisTemplate操作消息队列的:JmsTemplate我们今天的主角在 spring-jdbc-5.0.2.RELEASE.jar 中,原创 2021-06-05 21:58:00 · 118 阅读 · 0 评论 -
Spring框架学习总结第三天
Spring框架学习总结第三天AOP的相关概念[理解]AOP概述什么是AOPAOP:全称是 Aspect Oriented Programming 即:面向切面编程。简单的说它就是把我们程序重复的代码抽取出来,在需要执行的时候,使用动态代理的技术,在不修改源码的基础上,对我们的已有方法进行增强。AOP的作用及优势作用:在程序运行期间,不修改源码对已有方法进行增强。优势:减少重复代码提高开发效率维护方便AOP的实现方式使用动态代理技术AOP的具体应用案例中问题这是我们昨天课原创 2021-05-31 18:23:49 · 164 阅读 · 0 评论 -
Spring框架学习总结第二天
Spring框架学习总结第二天基于注解的IOC配置引入学习基于注解的 IoC 配置,大家脑海里首先得有一个认知,即注解配置和 xml 配置要实现的功能都是一样的,都是要降低程序间的耦合。只是配置的形式不一样。关于实际的开发中到底使用xml还是注解,每家公司有着不同的使用习惯。所以这两种配置方式我们都需要掌握。我们在讲解注解配置时,采用第一天的案例,把 spring 的 xml 配置内容改为使用注解逐步实现。就是将第一天的基于xml的配置改为基于注解的配置环境搭建添加jar包<depe原创 2021-05-26 19:10:59 · 66 阅读 · 0 评论 -
Spring框架学习总结第一天
Spring框架学习总结第一天Spring概述(了解)spring是什么Spring 是分层的 Java SE/EE 应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control:反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核,提供了展现层 Spring MVC 和持久层 Spring JDBC 以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的 Java EE 企原创 2021-05-25 16:55:32 · 244 阅读 · 0 评论 -
mybatis框架学习总结第四天
mybatis框架学习总结第四天mybatis延迟加载策略引入通过前面的学习,我们已经掌握了 Mybatis 中一对一,一对多,多对多关系的配置及实现,可以实现对象的关联查询。实际开发过程中很多时候我们并不需要总是在加载用户信息时就一定要加载他的账户信息。此时就是我们所说的延迟加载。何为延迟加载延迟加载:就是在需要用到数据时才进行加载,不需要用到数据时就不加载数据。延迟加载也称懒加载.好处:先从单表查询,需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。原创 2021-05-24 12:09:43 · 167 阅读 · 0 评论 -
mybatis框架学习总结第三天
mybatis框架学习总结第三天连接池的介绍连接池的好处:我们在实际开发中都会使用连接池,因为它可以减少我们获取连接所消耗的时间。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J2s8OTrA-1621495601192)(E:\tupian\无标题.png)]mybatis中的连接池配置mybatis连接池提供了3种方式的配置:配置的位置:主配置文件SqlMapConfig.xml中的dataSource标签,type属性就是表示采用何种连接池方式。typ原创 2021-05-20 15:27:00 · 94 阅读 · 0 评论 -
mybatis框架学习总结第二天
mybatis框架学习总结第二天简单xml的CRUD创建数据库和表CREATE DATABASE IF NOT EXISTS mybatis_plusDEFAULT CHARACTER SET utf8mb4DEFAULT COLLATE utf8mb4_0900_ai_ci;DROP TABLE IF EXISTS `user`;CREATE TABLE `user` ( `id` int(11) NOT NULL auto_increment, `username` varch原创 2021-05-15 22:48:42 · 138 阅读 · 0 评论 -
mybatis框架学习总结第一天
mybatis框架学习总结第一天快速入门pojo(方法自添)package com.itheima.domain;import java.io.Serializable;public class User implements Serializable { private Integer id; private String username; private Date birthday; private String sex; private Stri原创 2021-05-15 22:47:34 · 159 阅读 · 0 评论 -
Java的Object类小结
Object类总结介绍java.lang.Object是类层次结构的根(父)类。每个类(Person,Student…)都使用 Object 作为超(父)类。所有对象(包括数组)都实现这个类的方法。常用方法Person实体类package com.itheima.demo01Object;import java.util.Objects;public class Person { private String name; private int age;原创 2021-04-19 20:17:52 · 177 阅读 · 0 评论 -
lambda表达式最全总结
lambda表达式一、lambda表达式的引入为什么引入lambda表达式需求环境:线程类的创建解决方案:匿名内部类实现解决方案PLUS:lambda表达式实现代码:package com.imooc.test;/** * @ClassName: Demo01 * @Description: * @Author: keke * @Date: 2021/4/12 */public class Demo01 { public static void mai原创 2021-04-14 22:36:20 · 527 阅读 · 0 评论 -
Java基础篇五_面向对象
Java面向对象面向过程&面向对象面向过程 步骤清晰简单,第一步做什么,第二步做什么… 面向过程适合处理一些较为简单的问题面向对象物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考,最后,才对某个分类下的细节进行面向过程的思索面向对象适合处理复杂的问题,适合处理需要多人协作的问题!对于描述复杂的事物,为了从宏观上把握、从整体上合理分析,我们需要使用面向对象的思路来分析整个系统,但是,具体到微观操作,仍然需要原创 2021-04-11 12:52:02 · 197 阅读 · 0 评论 -
测试Java的访问修饰符
测试Java的访问修饰符访问修饰符public protected default(即不写也不能写) private父类package com.keke.myself.test01;/** * @ClassName: Person * @Description: * @Author: keke * @Date: 2021/4/9 */public class Person { //成员变量 :new一个本类对象才能调用 public int a = 1;原创 2021-04-09 23:13:26 · 66 阅读 · 0 评论 -
Java基础篇四_数组
Java数组数组的定义数组是相同类型数据的有序集合数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们数组声明创建首先必须声明数组变量,才能在程序中使用,声明数组变量的语法如下dataType[] arrayRefVar; //首选的方法或dataType arrayRefVar[]; //效果相同,但不是首选的方法Java语言使用new操作符来创建数组,语法如下:dataType[] a原创 2021-04-06 21:23:49 · 166 阅读 · 0 评论 -
Java基础篇三_方法小结附带值传递和引用传递的讨论和个人以前做过的一道链表题
Java方法何谓方法System.out.println(),它是啥?System:类out:System类中的一个对象println():方法Java方法是语句的集合,它们在一起执行一个功能1、方法是解决一类问题的步骤的有序集合2、方法包含于类或对象中3、方法在程序中被创建,在其他地方被引用设计方法的原则:方法的本意是功能块,就是实现某个功能的语句块的集合,我们设计方法的时候,最好保持方法的原子性,就是一个方法只完成一个功能,这样有利于后期的扩展方法定义方法包含一原创 2021-04-04 23:13:06 · 227 阅读 · 3 评论 -
mybatis_plus总结
mybatis-plus基本介绍**网址:**https://mp.baomidou.com/guide/**作用:**所有的CRUD代码它都自动化了**同类:**JPA、tk-mapper特性:1、无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑2、损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作3、强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各原创 2021-04-03 23:09:52 · 541 阅读 · 0 评论 -
Java基础篇二_流程控制
Java流程控制Scanner对象地址:java.util.Scanner是Java 5的新特性作用:通过Scanner类来获取用户的输入通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()和hasNextLine()判断是否还有输入的数据next():1.一定要读取到有效字符才可以结束输入2.对输入有效字符之前遇到的空白,next()方法会自动将其去掉3.只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符4.ne原创 2021-04-02 22:44:15 · 88 阅读 · 0 评论 -
Java基础篇一_基础小结
Java基础Java初生Java 2标准版J2SE:去占领桌面Java 2移动版J2ME:去占领手机Java 2企业版J2EE:去占领服务器(只有这个成功了)三高概念高性能、高可用、高并发Java特性和优势简单性面向对象可移植性:Write Once、Run Anywhere高性能分布式动态性多线程安全性健壮性Java三大版本JavaSE:标准版(卓面程序、控制台开发…)JavaME:嵌入式开发(手机,小家电…)JavaEE:E企业开发(web端、服务器开发)JDK原创 2021-03-31 22:34:21 · 121 阅读 · 0 评论