自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 收藏
  • 关注

原创 Hashmap你所应该了解的知识点,面试必备!

hashmap绝对是面试中的高频面试点了!整理以下hashmap你所应该掌握的知识!1. 面试中有些人喜欢从底层结构开始问起你了解hashmap的底层结构吗?hashmap的底层结构在jdk1.7和jdk1.8是不同的。jdk1.7是数组加链表的结构,采用头插法;jdk1.8是数组加链表加红黑树的结构,采用尾插法为什么jdk1.7是数组加链表的结构呢?hashmap采用数组加链表的方式解决哈希冲突,即两个不同的元素,通过哈希函数得出的实际存储地址相同,第二个元素要插入的时候发现位置已经被占用了,

2020-11-30 17:01:23 224

原创 sqlServer或mysql更新date时间类型数据时,数据库变为00:00:00,时间变为当天0点解决

这里bean或者说entity的时间类型应该为Timestampimport java.sql.Timestamp;import java.util.ArrayList;import java.util.Date;// 这样就可以插入当前时间了entity.setDate(new Timestamp(new Date().getTime()));如果使用date类型,时间会变成0点...

2021-04-09 15:50:57 1644

原创 Eureak禁止自我保护和设置不可用服务剔除时间

Eureak禁止自我保护添加如下配置即可eureka: server: # 关闭自我保护 enable-self-preservation: false # 将不可用服务剔除时间改为2s eviction-interval-timer-in-ms: 2000

2020-12-18 11:29:14 253

原创 Java实现简单的单向链表

数据节点类/** * 创建节点类 每一个节点就是链表上的一个数据 */public class Node { // 指定该节点的下一个节点 Node nextNode = null; // 存储数据 Object data; // 链表长度 不包括头节点 int size = 0; // 提供有参构造方法 public Node(Object data) { this.data = data; } p

2020-12-09 16:00:47 269 1

原创 Java中的list你所应该了解的知识点,面试必备

List问的相对简单一些你知道List的实现有哪几种?ArrayListLinkedListVector他们之间有什么区别?Vector是ArrayList(线程不安全)的线程安全实现,两者底层都是基于数组的,便于查询,不便于增删LinkedList线程不安全,底层基于链表,便于增删,不便于查询如果数据的增加和删除都是在尾部,那么ArrayList的效率是比LinkedList高的,因为不需要移动数据list的线程安全实现你还知道哪些?Collections.synchroni

2020-12-02 13:16:30 230 3

原创 动态代理模式

动态代理模式分类基于jdk的动态代理基于cglib的动态代理区别是基于jdk的动态代理要有实现的接口,而cglib不需要动态代理实现真实角色——房东package com.xiaobai.dynamicproxy.jdk3;/** * 房东 出租角色 */public class Landlord implements Rent { @Override public void rent() { System.out.println("我是房东 我房

2020-12-02 10:07:57 154 1

原创 静态代理模式

首先通过一张图了解一下代理模式在这里:中介就是一个代理人,帮助房东实现出租房屋的功能,这就是静态代理的实现。然后看代码房东类package com.xiaobai.proxy;/** * 房东 出租角色 */public class Landlord implements Rent{ @Override public void rent() { System.out.println("我是房东 我房屋租出"); }}代理类 房屋中介pac

2020-12-01 09:41:27 246

原创 Spring—bean的自动装配

自动装配?自动装配是spring实现bean依赖的一种方式,Spring会在上下文中自动寻找bean,并自动给bean装配属性Spring中有三种装配方式在xml中显式的配置在java中显式配置隐藏的自动装配bean自动装配类型autowire=“byName”: 会自动在容器上下文中查找,和自己对象set方法后面的值对应的bean的id(保证bean的id全局唯一)autowire=“byType”: 会自动在容器上下文中查找,和自己对象属性类型(class)相同的bean(必须保证

2020-11-30 13:34:37 116

原创 Spring—bean的作用域

bean作用域类型分为以下几种singleton 单例模式 唯一beanprototype 原型模式 每次从容器中get的时候都会获取新对象request http的一次请求同一个请求中是同一个对象session http的一次session会话同一个session会话中是同一个对象application 一个应用websocket指的是一个连接...

2020-11-30 10:45:42 64

原创 Spring——优点

优点准备重学Spring,记录一下笔记Spring是一个开源免费的框架(容器)Spring是一个轻量级的(小),非侵入式的框架(不依赖)控制反转(IOC)面向切面编程(AOP)支持事务(声明式事务)的处理支持整合绝大多数框架...

2020-11-27 15:41:42 79

原创 Vue-cli安装

首先要安装node.jscmd安装vue-clinpm install vue-cli -g --registry=https://registry.npm.taobao.org输出如下:npm WARN deprecated [email protected]: This package has been deprecated in favour of @vue/clinpm WARN deprecated [email protected]: request has been deprecated, se

2020-11-26 10:27:13 680 1

原创 Vue——内容分发与自定义事件

内容分发 slot事件 $emit调用具体实例:<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=

2020-11-25 14:54:53 205

原创 Vue计算属性

html文件methods 为方法computed 为属性 会被缓存在浏览器<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0,

2020-11-25 10:55:58 70

原创 Vue——组件

封装了一个my-li 只要引用 页面就会展示hello<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scal

2020-11-25 10:27:24 62

原创 Vue表单输入——数据的双向绑定

html页面数据双向绑定在vue是通过 v-model这个属性来实现的,可以通过修改input里面的值来了解一下<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, ma

2020-11-25 10:11:17 290

原创 Vue——通过axios跨域访问

html页面<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <met

2020-11-25 09:58:46 137

原创 Vue——通过axios请求json数据

html文件:<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <me

2020-11-25 09:19:35 3191

原创 Spring Cloud Alibaba Nacos Docekr安装与启动

参考官方手册Clone 项目git clone https://github.com/nacos-group/nacos-docker.gitcd nacos-docker单机模式 Derby docker-compose -f example/standalone-derby.yaml up单机模式 Mysqldocker-compose -f example/standalone-mysql.yaml up集群模式docker-compose -f example

2020-11-17 11:02:39 117

原创 Docker Compose 网络设置——docker间通信

默认情况下,Compose会为我们的应用创建一个网络,服务的每个容器都会加入该网络中。这样,容器就可被该网络中的其他容器访问,不仅如此,该容器还能以服务名称作为Hostname被其他容器访问。查看存在的网络docker network ls查看docker网络命令# 查看docker网络命令docker network --helpUsage: docker network COMMANDManage networksCommands: connect Connect a

2020-11-12 15:43:23 1070

原创 Docker Compose 部署 Harbor

harbor下载harbor-offline-installer-v1.8.0链接:https://pan.baidu.com/s/1GOHjkX5tSc3UF0IbuL3asQ提取码:dcvhharbor-offline-installer-v2.0.0链接:https://pan.baidu.com/s/1g82RxeBcLYzPaoC3grIpoQ提取码:8wda推荐1.8.0!上传并解压安装包tar zxvf harbor-offline-installer-v1.8.0.tgz

2020-11-11 15:42:40 101

原创 安装harbor时ERROR: for nginx Cannot start service proxy: driver failed programming-markdown

问题现象安装harbor时ERROR: for nginx Cannot start service proxy: driver failed programming external connectivity on endpoint nginx (d55f2dc113ed3cf55606bfb054bf0cee9deec6fe4529e99f2180fddd3d6821e8): Bind for 0.0.0.0:80 failed: port is already allocated这是因为端口被占

2020-11-11 15:34:32 4940

原创 Docker Compose 部署 GitLab——docker-compose.yml配置

Docker Compose 部署 GitLab创建如下目录/usr/local/docker/nexus创建docker-compose.yml文件vim docker-compose.ymldocker-compose.yml配置如下version: '2.0'services: web: image: 'twang2218/gitlab-ce-zh' restart: always hostname: '192.168.84.129' enviro

2020-11-06 16:22:22 1242

原创 Ubuntu使用 APT 安装docker

Ubuntu使用 APT 安装docker1.安装必要的一些系统工具sudo apt-get updatesudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common2.安装 GPG 证书curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -3.写入软件源信息

2020-11-06 16:18:53 1654

原创 Docker Compose 部署 Nexus

Nexus是一个强大的Macen仓库管理器创建如下目录/usr/local/docker/nexus创建docker-compose.yml文件vim docker-compose.yml方法1:需要给文件夹增加权限version: '2.0'services: nexus: restart: always image: sonatype/nexus3 container_name: nexus ports: - 8082:8081

2020-11-06 16:10:19 150

原创 git生成自己的ssh keys

git生成自己的ssh keys找到git的安装路径下的/usr/bin:例如我的:D:\dev_tools\Git\Git\usr\bin在该路径下执行cmd在cmd界面执行命令: 后面的邮箱改成自己ssh-keygen -t rsa -C "[email protected]"到提示的对应路径下找到带.pub的文件打开...

2020-11-06 13:52:33 216

原创 linux修改主机名和IP地址-Ubuntu18.04

Ubuntu18.04修改主机名修改cloud.cfg防止重启后主机名还原vim /etc/cloud/cloud.cfg# 将preserve_hostname的值改为truepreserve_hostname:true修改主机名# 修改主机名hostnamectl set-hostname services# 配置hosts 顺序执行这三行cat >> /etc/hosts << EOF192.168.84.130 servicesEOFU

2020-11-05 16:09:23 2496

原创 Docker Compose 启动mysql

按照如下路径创建文件夹/usr/local/docker/mysql然后进入该文件夹下cd /usr/local/docker/mysql创建docker-compose.yml文件vi docker-compose.yml插入如下内容version: '2.0'services: db: image: mysql:8.0 restart: always container_name: mysql volumes: - ./data:/v

2020-11-05 16:05:20 464

原创 docker-compose部署应用程序到tomcat

docker-compose部署应用程序到tomcat一、创建docker-compose.yml文件# 按照如下路径创建文件夹/usr/local/docker/tomcat# 然后进入该文件夹下cd /usr/local/docker/tomcat# 创建docker-compose.yml文件vi docker-compose.yml插入内容如下: version的版本报错的话换一下它提示的就可以version: '2.0' # 这是docker-compose版本servi

2020-11-05 16:03:05 484

原创 Linux安装docker compose并测试启动一个tomcat容器

安装docker compose下载:直接执行如下脚本sudo curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose添加可执行权限:sudo chmod +x /usr/local/bin/docker-compose测试安装结果:docker-compose v

2020-11-05 15:51:50 133

原创 Linux上不去网的解决办法

问题现象ubuntu apt-get update 失败问题现象如:W: Failed to fetch http://mirrors.aliyun.com/debian/dists/wheezy/InRelease Temporary failure resolving ‘mirrors.aliyun.com’W: Failed to fetch http://mirrors.aliyun.com/debian/dists/wheezy-updates/InRelease Temporary fa

2020-11-05 11:04:51 2219

原创 Springboot整合pagehelper

pom依赖<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.12</version></dependency>application.properties配置pagehelper.hel

2020-11-04 10:33:55 587

原创 XML Parser Error on line 44: 元素类型为 “table“ 的内容必须匹配 “(property*,generatedKey?,domainObjectRenamingRul

XML Parser Error on line 44: 元素类型为 “table” 的内容必须匹配 “(property*,generatedKey?,domainObjectRenamingRule?,columnRenamingRule?,(columnOverride|ignoreColumn|ignoreColumnsByRegex)*)”。找了半天原因!最后竟然是因为:这个property标签不能放在这,要放在generatedKey上面,修改之后重新generate一下就可以了..

2020-11-04 10:29:24 1578

原创 SpringBoot整合HikariCP数据库连接池

配置pom依赖<!-- JDBC连接数据库,因为要用HikariCP,所以需要将SpringBoot中的tomcat-jdbc排除 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> <exclusions>

2020-11-04 10:07:03 536 1

原创 Springboot 整合 TkMyBatis

配置pom依赖<dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper-spring-boot-starter</artifactId> <version>2.1.5</version></dependency>application.yml配置mybatis: type-aliases-package: co

2020-11-04 10:03:27 77

原创 Springboot配置mybatis-generator-plugin插件

pom.xml配置mybatis-generator-plugin插件依赖 <plugin> <!--Mybatis-generator插件,用于自动生成Mapper和POJO--> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactI

2020-11-04 09:11:11 575

原创 Springboot整合thymeleaf

模板引擎依赖<properties> <thymeleaf.version>3.0.11.RELEASE</thymeleaf.version> <thymeleaf-layout-dialect.version>2.1.1</thymeleaf-layout-dialect.version></properties> <dependency> <grou

2020-11-03 17:43:18 60

原创 Springboot页面访问404

问题现象:Whitelabel Error PageThis application has no explicit mapping for /error, so you are seeing this as a fallback.Tue Nov 03 15:13:43 CST 2020There was an unexpected error (type=Not Found, status=404).问题解决:查看有没有添加 @RestController 注解,或者如果返回的是字符串,

2020-11-03 15:19:35 119

原创 JDK1.8——Java对象的创建过程

对象的创建Java是一门面向对象的编程语言,Java程序运行过程中无时无刻都有对象被创建出来。对象创建过程概述对象的创建过程如图:这里解释一下什么是符号引用:符号引用: 符号引用是一个字符串,它给出了被引用的内容的名字并且可能会包含一些其他关于这个被引用项的信息——这些信息必须足以唯一的识别一个类、字段、方法。这样,对于其他类的符号引用必须给出类的全名。对于其他类的字段,必须给出类名、字段名以及字段描述符。对于其他类的方法的引用必须给出类名、方法名以及方法的描述符。这样我们就能根据符号引用锁定

2020-08-16 20:22:20 6789

原创 JDK1.8——Java对象的访问定位:对象的访问方式,句柄访问、指针访问、reference

创建对象自然是为了后续使用该对象,我们的Java程序会通过栈上的reference数据来操作堆上的具体对象。 对象的访问方式是由虚拟机的实现而决定的,主流的访问方式主要有两种:通过句柄 和 使用指针通过句柄访问使用句柄访问,Java堆中将可能会划分出一块内存用来作为句柄池,reference中寸的就是对象的句柄地址,而句柄中包含了对象实例数据与类型数据各自具体的地址信息。具体结构如图:使用直接指针访问(常用)使用直接指针访问,Java堆中对象的内存布局就必须考虑如何防止访问类型数据的相关信息,r

2020-08-15 00:29:10 6957 2

原创 JDK1.8——Java对象在堆内存中的存储布局:对象头(Header)、实例数据(Instance Data)、对齐填充(Padding)

对象在堆内存中的存储布局可以划分为三个部分:对象头(Header)、实例数据(Instance Data)和对齐填充(Padding)。对象头(Header)对象头分为两类信息:一类是用于存储对象自身的运行时数据,一类是类型指针。第一部分是用于存储对象自身的运行时数据,如哈希码(HashCode)、GC分代年龄、锁状态标志、线程持有的锁、偏向线程ID、偏向时间戳等。 这部分数据的长度在32位和64位的虚拟机(未开启压缩指针)中分别为32个比特和64个比特,官方称它为"Mark Word"第二

2020-08-13 23:16:41 7564

空空如也

空空如也

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

TA关注的人

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