自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(82)
  • 资源 (2)
  • 收藏
  • 关注

原创 Kerberos认证原理详解

//TODOhttps://baike.baidu.com/item/Kerberos/5561682?fr=aladdinhttps://web.mit.edu/kerberos/krb5-latest/doc/user/index.htmlhttps://blog.csdn.net/sky_jiangcheng/article/details/81070240

2020-09-30 11:16:24 787

原创 springboot+mybatis plus+code generate+mysql + swagger ui简单demo

项目基本介绍该项目使用springboot集成mybatis plus框架,使用mysql数据库,使用maven对代码进行构建,同时引入mybatis plus codegenerate生成entity, service和mapper层的代码。同时集成了swagger ui,可以在没有前端页面的情况下对后端api进行测试。接下面会把详细代码粘贴在这里。其中mysql使用test数据库,table使用user.pom.xml<?xml version="1.0" encoding="UTF-8"

2020-05-09 13:30:30 315

原创 linux sudo su和su -的区别

相同点sudo , su 和su -都能通过root用户权限执行某些命令不同点sudo:不需要用户输入root用户的密码,只是赋予当前用户执行某些命令的root权限。su和su-由于是切换到root账号,所以需要输入root用户的密码,其中su会使用当前用户的环境变量去登录root用户。而su -则会使用root用户的环境变量去登录root用户...

2020-10-19 21:00:39 17

原创 Springboot日志系统工作原理

TODO

2020-10-14 14:34:02 35

原创 SpringBoot配置使用https服务

TODO ~

2020-10-13 20:41:39 34

原创 springboot bean对象生命周期

Bean对象生命周期Bean对象的生命周期主要由3部分组成:bean对象的初始化过程,bean对象在ioc容器中被使用,bean对象的销毁过程,具体可见下图:初始化bean对象过程方法描述bean对象实例化调用构造函数为对象分配内存空间setBeanName方法调用如果对象实现了BeanNameAware接口,则调用该方法setBeanFactory方法调用如果对象实现了BeanFactoryAware接口,则调用该方法setApplicationCont

2020-10-10 22:28:14 27

原创 Springboot中如何自定义init-method和destroy-method

如果我们想在初始化某个bean对象时自定义自己的init-method和destroy-method方法,我们可以使用通过Java配置文件方式注入要自定义自己init-method和destroy方法的bean,然后通过注解指定init-method和destroy-method,具体代码实现上可通过如下两种方式实现:1.创建@Configuration注解类,在该类中初始化Bean对象,同时定义initMethod和destroyMethodpackage com.mary;import org.

2020-10-10 21:49:48 183

原创 用JAVA实现LDAP目录服务器的访问

下面我们以获取所有person objectclass对象为例进行代码编写。通过JNDI访问LDAP目录服务器public List<String> getAllPersonNames() { Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVID

2020-10-10 14:02:00 23

原创 LDAP与Active Directory(AD)的关系

LDAP:是一种目录服务协议,该协议定义了如何去访问目录服务器以及相关的APIAD :是目录服务器中的一种,是Windows 2000网络中的目录服务器。关系:我们可以通过LDAP协议去访问AD目录服务器,同时对AD目录服务器的数据进行操作和查询操作。其他目录服务器还有如OpenLDAP等。...

2020-10-10 13:12:43 11

原创 LDAP基本介绍

什么是目录服务目录服务又叫Directory,是一种特殊的数据库,主要用来对数据库中的数据进行查找和浏览。目录主要存储了对象的基本描述信息和一些属性信息,可根据名字进行查找,也可通过部分过滤条件对数据进行查找,同时目录要求对于查找和搜索都能快速返回。目录不会像数据库管理系统一样提供事物和回滚操作,目录通常只提供一些基本的数据更新操作,而且更新通常都是指全量更新。什么是LDAPLDAP 是轻量目录服务访问协议,英文是 Lightweight Directory Access Protocol,是一个

2020-10-10 10:53:35 73

原创 Java JNDI使用详解

JNDI基本介绍JNDI(Java Naming and Directory Interface–Java命名和目录接口)是Java中为命名和目录服务提供接口的API,通过名字可知道,JNDI主要由两部分组成:Naming(命名)和Directory(目录),其中Naming是指将对象通过唯一标识符绑定到一个上下文Context,同时可通过唯一标识符查找获得对象,而Directory主要指将某一对象的属性绑定到Directory的上下文DirContext中,同时可通过名字获取对象的属性同时操作属性。J

2020-10-09 11:03:32 45 2

原创 JDBC基本介绍以及使用

为什么需要jdbc假设我们有一个用户信息系统,其中用户信息存储在数据库中,而我们的java应用程序需要操纵数据库的数据,那应用程序就需要与数据库管理系统建立链接,JDBC结构图

2020-09-30 14:37:23 17

原创 jdk8函数式编程使用实例

Java函数式编程是从jdk1.8开始引入的,主要是为了提高编程效率。函数式接口函数式接口(Functional Interface)是指有且仅有一个抽象方法,但可以有多个非抽象方法的接口。函数式接口类通常都会在类上添加@FunctionalInterface注解来表示如JDK类库中的Consumer接口, 有且只有一个抽象方法accept(),同时还有一个非抽象方法。所以Consumer接口类就属于函数式接口。实例化函数式接口函数式接口编程的实例化方式主要有三种:lambda表达式,方法引用和

2020-09-28 18:19:42 26

原创 maven构建springboot fat包

什么是fat包呢fat包就是说将所有依赖的包都打包到同一个jar包中,同时也可以将配置文件打包到这个jar包中,所以构建了fat包之后,一键部署就会更容易。当然对于配置文件等修改比较频繁的项目就不太适合了,所以要根据你项目的大小以及部署方式来决定这种方式是否适合你们项目。构建springboot fat包在pom.xml中添加springboot插件,同时指定repackage goal,具体代码如下:<build> <plugins>

2020-09-27 17:42:31 11

原创 springboot中json对象序列化时重命名属性

有时候我们会遇到一些这样的需求,json对象的属性名与java bean类的属性名不一致,由于我们知道Springboot中默认使用的是jackson的框架来对java对象与json对象进行序列化与反序列化,所以我们就需要知道jackson如何在序列化与反序列化过程中对属性进行重命名。具体实例假设我们有个叫User的java类,其中包含了id,name和job几个属性,但是我们在json对象序列化时,我们希望把id属性的值序列化成userId,此时我们就需要对属性进行重命名了。json对象如下...

2020-09-27 15:36:50 139

原创 springboot Json序列化时如何忽略部分字段

由于Springboot中默认的json对象序列化框架是Jackson,所以我们需要去了解一下Jackson框架是如何将java对象与json对象实现序列化与反序列化的。jackson序列化的原理 根据java对象的getter和setter方法,与JSON对象的名字去一一对应,其中会将getter()方法中的属性名的第一个字母改成小写与JSON对象的属性去对象。具体可看下面两个例子json对象java getter/setter对象方法{“name”:“zhangsan”}

2020-09-27 15:18:53 404

原创 java线程几种阻塞方法对比

Java线程生命周期Java中常用的几种阻塞方法通过上图中的线程生命周期图可知,常用的几种阻塞方法主要有: Thread.sleep(), LockSupport.park(), Object.wait阻塞方法对比在这里插入图片描述Object.wait()相关方法描述Object.wait()阻塞当前线程,同时释放锁,并等待另一个线程调用Object.not...

2020-09-27 09:40:29 62

原创 设计模式之单例模式用法详解

定义单例模式是指在一个应用(JVM)中,对于某个类的实例只能有一个,所有对于某个类实例的访问都是对于同一个对象的访问框架实例ServletContext, ServletConfig, ApplicationContext, DBPool常见实现方式实现方式描述饿汉式单例单例类首次加载的时候就会创建实例懒汉式单例在单例类的实例被使用的时候才创建实例对象注册式单例ThreadLocal式单例代码实现饿汉式单例模式package com.ar

2020-09-27 09:31:47 10

原创 maven如何快速查找某个包哪里引入的

描述最近项目中遇到一个问题,有个jar包跟项目的中的代码冲突导致一些奇怪的异常,项目是maven项目。问题查找由maven官网可知道maven的Dependency plugin就有这个问题的解决方案filtering the dependency tree,如我们要查找netty-all的包从哪里导入的。mvn dependency:tree -Dincludes=io.netty:netty-allmaven filter语法格式[groupId]:[artifactId]:[type]:

2020-05-25 22:01:09 1914

原创 java动态代理模式实现原理及实例

代理设计模式代理设计模式就是引入代理类,客户所有的操作都通过代理类类实现,具体ulm图如下:从上图可知,client持有Subject的接口,RealSubject是Subject的真正实现类,而Proxy也实现了Subject,只不过Proxy是通过调用RealSubject去实现相关功能的。java动态代理实现由上面代理模式的UML图我们可以知道,代理模式即所有的业务都由代理类去调用,而代理类内部会持有实际接口实现的对象,当我们调用代理接口的方法时,通过代理类调用实际接口实现对象的实现。那

2020-05-10 14:40:27 93

转载 IDEA中使用Lombok插件

转载自: https://blog.csdn.net/qq_18252605/article/details/72875351背景  我们在开发过程中,通常都会定义大量的JavaBean,然后通过IDE去生成其属性的构造器、getter、setter、equals、hashcode、toString方法,当要对某个属性进行改变时,比如命名、类型等,都需要重新去生成上面提到的这些方法,那Java中有没有一种方式能够避免这种重复的劳动呢?答案是有,我们来看一下下面这张图,右面是一个简单的JavaBea

2020-05-09 16:59:58 57

原创 解决Caused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value

异常错误信息Caused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' confi

2020-05-08 23:03:40 75

转载 java如何优雅的关闭应用程序

文章转载自:2Simple的java如何优雅的关闭应用程序 目录理解停止Java进程的本质应该如何正确地停止Java进程如何注册关闭钩子使用关闭钩子的注意事项信号量机制总结理解停止Java进程的本质我们知道,Java程序的运行需要一个运行时环境,即:JVM,启动Java进程即启动了一个JVM。因此,所谓停止Java进程,本质上就是关闭JVM。那么,哪些情况会...

2020-05-08 11:41:10 524

原创 maven setting.xml详解

常用setting.xml配置文件<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0...

2020-05-07 23:24:05 85

原创 maven使用assembly打包zip文件

在pom文件中引入assembly插件 <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-a...

2020-05-06 20:44:55 389

转载 对于vue的单向绑定与双向绑定理解

概述Vue.js 最显著的特点就是响应式和数据驱动,也就是将Model和View进行单向绑定或者双向绑定。单向绑定:把Model绑定到View,当我们用JavaScript代码更新Model时,View就会自动更新。因此,我们不需要进行额外的DOM操作,只需要进行Model的操作就可以实现视图的联动更新。双向绑定:把Model绑定到View的同时也将View绑定到Model上,这样就既可以通过更...

2020-05-06 08:53:36 79

原创 Axios实例的使用实践

通过npm安装模块npm install axios --save引入axiosimport axios from 'axios'编写request.js创建axios实例import axios from 'axios'import router from '@/router/routers'import { Notification, MessageBox } from 'e...

2020-05-05 21:51:14 92

原创 Axios用法详解

基本介绍Axios是一个异步的http框架,可以在浏览器和nodejs中使用特征从浏览器中创建 XMLHttpRequests从 node.js 创建 http 请求支持 Promise API拦截请求和响应转换请求数据和响应数据取消请求自动转换 JSON 数据客户端支持防御 XSRF全局方法axios.request(config)axios.get(url[, con...

2020-05-05 21:09:26 87

原创 jenkins上传External jar到nexus仓库

使用jenkins的nexus Artifact Uploader pluginstage('upload the jar to nexus') { nexusArtifactUploader nexusVersion: 'nexus2', protocol: 'http', nexusUrl: 'localhost:8080/nexus', ...

2020-05-05 20:23:19 424

原创 npm install相关参数详解

查看当前npm配置全局安装还是本地安装运行npm config ls查看当前配置从红色画线处可知,当前npm配置的是本地安装,即所有install的module都将位于项目的node_modules处。如果此处global为true,但我们又希望本地安装的话我们可以通过修改.npmrc文件的global为false(具体路径见:userconfig后面的绝对路径)安装参数详解命...

2020-05-04 18:09:25 210

原创 Intellij中设置google风格的代码规范

下载google style代码规范xml去以下链接下载intellij-java-google-style.xmlhttps://github.com/google/styleguide/blob/gh-pages/intellij-java-google-style.xml在idea中配置点击File(文件)–>Setting(设置)–>Editor(编辑)–>Cod...

2020-05-04 18:08:52 884

原创 Vue路由懒加载

为啥需要懒加载当一个vue项目很大的时候,使用webpack打包会导致第一次加载时间太快,这样可以导致首次加载白屏情况,给用户更好的体验,即vue路由的懒加载。非懒加载方式实现import HelloWorld from '@/components/HelloWorld' export default new Router({ routes: [ { path: ...

2020-05-03 21:57:07 39

原创 一文了解vue基本概念

Vue实例Vue实例是Vue应用的启动器,对于SPA(Single Page Web Application),只会创建一个Vue根实例。当我们实例化一个Vue实例时,需要传入选项对象,可包含data(数据相关), template(模板),el(挂载元素), methods(方法)与生命周期钩子函数(created, mounted…)等等,具体可见Vue选项对象。new Vue({ ...

2020-05-03 12:30:31 230

原创 Vue Router参数大全

Vue Router对象创建Vue Router构建选项详解参数类型默认值可选值描述routesArray配置路由规则modestring“hash” (浏览器环境) /“abstract” (Node.js 环境)“hash”/“history” / “abstract”配置路由模式basestring/应用的基路径lin...

2020-05-03 10:31:21 393

原创 npm常用命令汇总

1.安装包相关命令描述npm get global查看当前默认的安装模式,如果为true,则为全局安装模式,否则为本地安装模式npm set global=true设置全局安装模式npm install根据package.json文件安装npm install 包名本地安装,在npm运行目录下安装npm install 包名@1.x安装指...

2020-05-01 21:17:14 51

原创 windows环境npm安装

去nodejs官网下载windows版本的包官网: https://nodejs.org/en/download/根据自己电脑的系统选择32-bit或者64-bit的安装包安装nodejs检查nodejs安装成功检查npm安装成功检查npm配置信息...

2020-04-30 12:39:02 108

原创 推荐java程序员的开源框架

EL-ADMIN一个基于 Spring Boot 2.1.0 、 Spring Boot Jpa、 JWT、Spring Security、Redis、Vue的前后端分离的后台管理系统文档路径:https://docs.auauz.net/guide/源码路径:后端前端https://gitee.com/elunez/eladminhttps://gitee.com/...

2020-04-29 22:50:38 74

原创 构建docker镜像(image)

基本介绍我们知道docker镜像(image)是docker中的重要对象,我们可以通过docker镜像定义docker container的文件系统格式等等,而docker容器将用来最终运行我们的应用程序。docker构建命令docker build可通过dockerfile构建docker镜像docker build [OPTIONS] PATH | URL | -常用option...

2020-04-26 20:29:56 65

原创 一文了解docker基本用法

Docker引擎(Engine)结构Docker架构从docker官网可以知道,docker的架构主要由Client, docker damon, container, image和Registry三部分组成。组件描述Client提供用户跟Docker交互的入口,可以通过client跟docker发送各种APIdocker damon用于监听并处理docke...

2020-04-26 11:06:37 34

原创 Java NIO与IO的区别

基本区别IONIOStream OrientedBuffer OrientedBlocking IONIO Blocking IOSelectorStream Oriented vs Buffer OrientedStream OrientedBuffered Oriented面向流表示你可以每次读取一个字节或者读取多个字节到by...

2020-04-24 22:56:49 40

android面试集锦

android开发者的良好的面试资源,欢迎大家下载

2011-08-09

计算机专业操作系统课件

适用于大家进行考试时复习适用,欢迎大家下载

2011-08-09

空空如也

空空如也

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

TA关注的人 TA的粉丝

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