java
文章平均质量分 58
小伙伴00
这个作者很懒,什么都没留下…
展开
-
git常用命令记录
记录常用的git命令1、git的四个工作区域workspace:工作区staging area:暂存区/缓存区local repository:版本库或本地仓库remote repository:远程仓库2、常用命令原创 2021-03-23 21:51:18 · 93 阅读 · 0 评论 -
垃圾回收常见算法
垃圾回收的常见算法垃圾回收常见的算法有:引用计数法、标记清除法、标记压缩法、复制算法、分代算法等1 引用计数法引用计数是历史最悠久的一种算法,最早George E. Collins在1960的时候首次提出,50年后的今天,该算法依然被很多编程语言使用。1.1 原理假设有一个对象A,任何一个对象对A的引用,那么对象A的引用计数器+1,当引用失败时,对象A的引用计数器就-1,如果对象A的计数器的值为0,就说明对象A没有引用了,可以被回收。1.2 优缺点优点:实时性较高,无需等到内存不够的时候,原创 2020-11-17 14:46:00 · 452 阅读 · 0 评论 -
jvm内存模型与运行参数
1 jdk1.8的jvm内存模型1.1 jvm内存区域划分大多数 JVM 将内存区域划分为 Method Area(方法区),Heap(堆) , Program Counter Register(程序计数器) , VM Stack(虚拟机栈),Native Method Stack ( 本地方法栈 ),其中Method Area 和 Heap 是线程共享的 ,VM Stack,Native Method Stack 和Program Counter Register 是非线程共享的。为什么原创 2020-10-09 17:17:01 · 404 阅读 · 0 评论 -
SpringData Jpa学习笔记03
一、Specifications动态查询有时我们在查询某个实体的时候,给定的条件是不固定的,这时就需要动态构建相应的查询语句,在Spring Data JPA中可以通过JpaSpecificationExecutor接口查询。相比JPQL,其优势是类型安全,更加的面向对象。/** * JpaSpecificationExecutor中定义的方法 **/ public interface JpaSpecificationExecutor<T> { //根据条件查询一个对象 T原创 2020-09-03 00:17:47 · 87 阅读 · 0 评论 -
SpringData Jpa学习笔记02
一、Spring Data JPA的概述1.1 Spring Data JPA概述Spring Data JPA 是 Spring 基于 ORM 框架、JPA 规范的基础上封装的一套JPA应用框架,可使开发者用极简的代码即可实现对数据库的访问和操作。它提供了包括增删改查等在内的常用功能,且易于扩展!学习并使用 Spring Data JPA 可以极大提高开发效率!Spring Data JPA 让我们解脱了DAO层的操作,基本上所有CRUD都可以依赖于它来实现,在实际的工作工程中,推荐使用Sp原创 2020-09-02 16:57:59 · 90 阅读 · 0 评论 -
SpringData Jpa学习笔记01
一、ORM概述ORM(Object-Relational Mapping) 表示对象关系映射。在面向对象的软件开发中,通过ORM,就可以把对象映射到关系型数据库中。只要有一套程序能够做到建立对象与数据库的关联,操作对象就可以直接操作数据库数据,就可以说这套程序实现了ORM对象关系映射简单的说:ORM就是建立实体类和数据库表之间的关系,从而达到操作实体类就相当于操作数据库表的目的。1.1 为什么使用ORM当实现一个应用程序时(不使用O/R Mapping),我们可能会写特别多数据访问层的代码,从数据库原创 2020-09-01 16:13:04 · 103 阅读 · 0 评论 -
如何使用Java获取上传图片需要旋转的角度且获取正确方向的图片
一、引言在公司做项目的时候,发现ios端拍的图片会出现宽高不一致的情况,后来才发现其实是需要将其旋转才能获得正确的宽高,下面记录一下解决办法二、 引入依赖compile group: 'com.drewnoakes', name: 'metadata-extractor', version: '2.14.0'三、编写工具类package album;import com.drew.imaging.jpeg.JpegMetadataReader;import com.drew.metada原创 2020-08-25 11:01:00 · 2951 阅读 · 1 评论 -
Spring Boot使用公共异常处理类处理异常
一、引言我们在做后端开发的时候,程序可能会出现各种运行时异常,当用户请求接口之后,会将异常赤裸裸地展示在页面上,使得用户体验极差,那么一个集中的处理异常的类就显得尤为重要。集中处理异常可以使代码容易维护,减少代码的冗余。二、处理异常步骤创建一个Result类,用于封装返回的数据public class Result { /** * 请求是否成功 */ private Boolean flag; /** * 响应状态码 */原创 2020-07-13 15:28:09 · 886 阅读 · 0 评论 -
Netty入门学习笔记
一、初识NettyNetty 是一一个提供了易于使用的API的客户端/服务器框架并发高- NIO (非阻塞IO )传输快-零拷贝二、阻塞与非阻塞线程访问资源,该资源是否准备就绪的一种处理方式阻塞:线程访问资源时,如遇到资源正在处理,则等待该资源处理完毕非阻塞:线程访问资源时,如遇到资源正在处理,则等待访问其它资源,以此类推三、同步与异步同步和异步是指访问数据的一种机制同步:线程在访问数据的时候,等待数据处理完毕返回结果异步:线程在访问数据时,不会等待数据处理结果,直接处理下原创 2020-06-09 22:32:27 · 148 阅读 · 0 评论 -
Spring Boot定时任务的使用方法
一、Scheduled 定时任务器Scheduled 定时任务器:是 Spring3.0 以后自带的一个定时任务器。二、使用方法引入spring坐标<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</a...原创 2020-04-03 16:18:36 · 82 阅读 · 0 评论 -
使用Docker搭建Fastdfs分布式文件管理系统并使用Java实现上传
引言安装过Fastdfs的朋友都知道,过程是非常复杂,有一个步骤错了,可能就要重头来过,最近我在做毕业设计,就想着能不能用docker搭建一个Fastdfs,学过docker不用岂不是浪费了,最后还是安装好了,而且过程非常简单,下面我来分享一下我的安装过程。安装步骤首先拉取最新版的fastdfs镜像docker pull delron/fastdfs下载完成后,先创建一下本地的映...原创 2020-01-09 16:16:59 · 543 阅读 · 0 评论 -
Java多线程概述
1. 并发与并行并发:指两个或多个事件在同一个时间段内发生。并行:指两个或多个事件在同一时刻发生(同时发生)。在操作系统中,安装了多个程序,并发指的是在一段时间内宏观上有多个程序同时运行,这在单 CPU 系统中,每一时刻只能有一道程序执行,即微观上这些程序是分时的交替运行,只不过是给人的感觉是同时运行,那是因为分时交替运行的时间是非常短的。而在多个 CPU 系统中,则这些可以并发执行的...原创 2020-01-07 15:47:28 · 138 阅读 · 0 评论 -
Java数据校验框架hibernate-validate
1、引言在我们做后端开发的时候,如果遇到一些情况是需要进行数据检验的,你如果还使用if-else,就显得很low,而且效率非常低。如果你是校验几个还行,但是校验很多呢,这时候使用if-else就显得非常麻烦。下面介绍一款能够对数据进行校验的框架hibernate-validate2、什么是Hibernate ValidatorHibernate Validator是Hibernate提供的一...原创 2019-12-31 19:22:19 · 534 阅读 · 0 评论 -
Redis介绍及入门
1. Redis介绍1.1 什么是Nosql为了解决高并发、高可扩展、高可用、大数据存储问题而产生的数据库解决方案,就是NoSql数据库。NoSQL,泛指非关系型的数据库,NoSQL即Not-Only SQL,它可以作为关系型数据库的良好补充。1.2 NoSql数据库分类键值(Key-Value)存储数据库相关产品: Tokyo Cabinet/Tyrant、Redis、Voldem...原创 2019-12-13 17:18:30 · 126 阅读 · 0 评论