Java学习
文章平均质量分 93
fucccck_ly
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SpringBoot+React+Mysql+Mybatis+Restful风格接口,前后端分离的健康管理系统详细剖析(二)
SpringBoot+React+Mysql+Mybatis+Restful风格接口,前后端分离的健康管理系统详细剖析(二)写在前面NginxNginx是什么正向代理和反向代理Nginx的作用React前后端分离Restful风格写在前面本篇文章主要是为了简单介绍一下项目开发和部署所用的技术,主要包括Nginx、React、前后端分离和Restful风格。NginxNginx是什么Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务(电子邮件),其特原创 2021-01-29 22:25:06 · 1224 阅读 · 4 评论 -
如何在Linux服务器上部署一个前后端分离的项目
如何在Linux服务器上部署一个前后端分离的项目写在前面后端部署JDK、Tomcat、Mysql的安装后端代码打成jar包运行后端代码前端部署二级目录三级目录写在前面上篇文章刚把一个完整的前后端分离项目给拉到本地跑了起来,SpringBoot+React+Mysql+Mybatis+Restful风格接口,前后端分离的健康管理系统详细剖析(一),之前趁着优惠买了一个阿里云的服务器,总不能浪费,因此这篇文章主要讲述如何把一个前后端分离的项目部署到服务器上去!后端部署JDK、Tomcat、Mysql的安原创 2021-01-28 03:24:06 · 4445 阅读 · 1 评论 -
SpringBoot+React+Mysql+Mybatis+Restful风格接口,前后端分离的健康管理系统详细剖析(一)
SpringBoot+React+Mysql+Mybatis+Restful风格接口,前后端分离的健康管理系统详细剖析(一)写在前面项目介绍简单介绍准备工作项目结构项目运行前端代码的运行后端代码的运行运行效果写在前面不知不觉大学四年就要过去了,在放寒假之后我准备着手毕业设计软件的开发,由于对健康管理系统了解不多,在阅读了一些相关的文献期刊之后,我决定在github上面寻找类似的项目进行学习。在学习过程中,我也想把其中比较关键的技术点记录下来,如上,如果各位看官发现有啥问题的,还请不吝指出!项目介绍简原创 2021-01-23 18:58:36 · 1106 阅读 · 1 评论 -
对guide-rpc-framework的学习(一)
对guide-rpc-framework的学习(一)综述Docker的安装zookeeper的安装跑不起来问题合集找不到主类rebuild找不到包启动成功综述本篇文章主要是记录我对Guide老哥的开源项目guide-rpc-framework的学习过程,记录如何先在自己的电脑上把这个项目跑起来。“guide-rpc-framework 是一款基于 Netty+Kyro+Zookeeper 实现的 RPC 框架。代码注释详细,结构清晰,并且集成了 Check Style 规范代码结构,非常适合阅读和学习。原创 2021-01-12 16:49:55 · 1460 阅读 · 2 评论 -
Java实现快速幂
Java实现快速幂//平平无奇实现法public long normalPower(long base,long power){ long result=1; for(int i=0;i<power;i++){ result*=base; } return result;}//快速幂实现法public long normalPower(long base,long power){ long result=1; while(power>0){ if(power%2=原创 2020-09-20 23:34:34 · 1289 阅读 · 0 评论 -
每日一点JVM---Java内存模型
每日一点JVM---Java内存模型Java内存模型主内存与工作内存栈中和堆中分别存放什么数据大对象放在哪个内存区域堆区如何分类Java内存模型《Java虚拟机规范》中定义了一种“Java内存模型”(Java Memory Model,JMM)来屏蔽各种硬件和操作系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致的内存访问效果。主内存与工作内存Java内存模型的主要目的是定义程序中各种变量的访问规则,即关注在虚拟机中把变量存储到内存和从内存中取出变量值这样的底层细节。此处的变量与Ja原创 2020-08-27 22:03:37 · 271 阅读 · 0 评论 -
教教你怎么用存储过程往数据库里插入大量数据吧!
简单说说,如何使用Mysql的存储过程往数据库里插入大量的数据!最近业务需要,插入数据,调用接口非常慢,因此想到了使用mysql来进行插入。存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。存储过程是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。简单来说,存储过程就是数据库 SQL 语言层面的代码封装与重用。-- 若存在此存储过程 删除drop procedure i原创 2020-08-25 20:49:49 · 2820 阅读 · 0 评论 -
每日一点JVM---类加载相关
每日一点JVM---类加载相关写在前面什么是类加载?何时类加载?Java的类加载过程加载验证准备解析初始化常见类加载器及其之间的关系类加载器的双亲委派机制为什么需要双亲委派机制?Tomcat这种Web容器的类加载器如何设计?写在前面今日份复习的是类加载相关的知识,会分为什么是类加载,何时类加载,Java的类加载过程,常见类加载器及其之间的关系,类加载器的双亲委派机制和为什么需要双亲委派机制来看。什么是类加载?Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,原创 2020-08-20 09:48:30 · 221 阅读 · 0 评论 -
每日一点JVM---JVM内存结构及调优参数
这里写目录标题JVM内存结构***(手画图1.0 待补充)***JVM调优参数JVM内存结构首先我们来看一张图,这张图可能是很多人第一次学JVM看到的图片。通过这个图我们可以看到,JVM内存结构可以大概分为两块,一块是线程共享的(分别是方法区和堆),另一部分是线程私有的(虚拟机栈、本地方法栈和程序计数器)。(手画图1.0 待补充)在类加载的时候,jvm首先会帮助我们把类中的方法存入方法区中,在接下来执行字节码指令的时候,就需要程序计数器来帮助我们记住运行到哪一行字节码,紧接着就是在对应的线程内,原创 2020-08-17 22:41:39 · 383 阅读 · 0 评论 -
常用排序算法(二)---优雅地用Java实现堆排序吧!!
关于堆排序 相信有很多博客都讲得很细很细了堆排序的思路还是比较好理解的 也是面试经常考查的点 因此我觉得把堆排序给啃下来然而 图解堆排序的博客很多 但是堆排序的代码实在是写得太复杂了 我一个菜鸡实在是很难理解花费了一整个下午的时间 把堆排序的代码给整理出来了 附上详尽的注释 相信看着这份代码 对照着图解 很多就能把堆排序掌握下来啦!以下附上代码:(可能不是想象的那么优雅 但力求简单易懂好吧!)package Aug;import java.util.Arrays;/** * 堆排序 *原创 2020-08-14 18:05:51 · 174 阅读 · 0 评论 -
ThreadLocal真那么复杂吗?网抑云年代记
生而为人 我很抱歉网抑云年代平淡的一天 我准备啃下ThreadLocal这块硬骨头 建议打开网抑云 伴随着歌声阅读。ThreadLocal真那么复杂吗?什么是ThreadLocal?ThreadLocal的应用场景ThreadLocal的实现原理ThreadLocalMap内存泄露问题共享线程的ThreadLocal数据什么是ThreadLocal?ThreadLocal对象可以提供当前线程的局部变量,每个线程Thread拥有一份自己的副本变量,多个线程间互不干扰,实现了数据隔离。具体使用如下:原创 2020-08-02 23:39:33 · 178 阅读 · 0 评论 -
Java8新特性之Stream 入门级
Java 8为我们带来了许多提高生产力的新玩意 这次来研究一下流 Stream的具体用法。我们先看看比较官方的说法:流使用一种类似sql语句从数据库查询数据的直观方式来提供一种对Java集合运算和表达的高阶抽象Stream API可以极大提高我们的生产力,让我们写出高效简洁的代码Stream将要处理的集合看做一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选, 排序,聚合等。元素流在管道中经过中间操作(intermediate operation)的处理,最后由最终操作(ter原创 2020-07-30 21:26:38 · 284 阅读 · 0 评论 -
多模块项目的打包及部署
关于如何在多模块项目中对项目进行打包,并部署到服务器上面去。1、将项目打成jar包注意由于父子和子子模块间可能存在较为复杂的依赖关系,为了省事,我们可以直接对父模块进行打包即可。命令行方式win+R打开cmd,进入父模块的目录,使用命令:mvn clean package通过IDEA通过IDEA中的maven插件可达到同样的效果运行成功后会在该项目目录下的target生成jar包2、上传到服务器这里使用的是SecureCRT和SecureFX来连接服务器,这里也有两种方法将本地jar原创 2020-07-07 09:32:00 · 2320 阅读 · 1 评论 -
Java异常浅析及常见异常
Java异常浅析及常见异常Java异常结构ErrorException常见异常Java异常结构在Java语言中,程序执行中发生的不正常情况被称为异常;所有的异常都会继承Throwable接口,而Throwable下一层又分为两类,分别是Error和Exception。ErrorError描述的是Java程序运行时系统内部的错误,通常会比较严重,程序只会被安全地终止,应用程序一般不会去捕获这种异常,通常为虚拟机异常,例如StackOverflowError和OOM。ExceptionExcept原创 2020-06-18 10:25:06 · 287 阅读 · 0 评论 -
记第一个ssm(spring+SpringMVC+Mybatis)转springboot项目
学完了Spring+SpringMVC+Mybatis框架,做了一个简单的oa项目。最近又接触了SpringBoot框架,所以想把这个项目改成SpringBoot框架。原创 2020-06-15 16:38:54 · 2155 阅读 · 5 评论 -
Java虚拟机之Java内存区域
2.1 概述对于Java程序员来说,在虚拟机自动内存管理机制的帮助下,不需要为每一个new操作去写配对的delete/free代码,不容易出现内存泄露和内存溢出问题,看起来有虚拟机管理内存一切都很美好。但一旦出现内存泄露和溢出方面的问题,如果不了解虚拟机是怎样使用内存的,那排查错误,修正问题将会成为一项异常艰难的工作。2.2 运行时数据区Java虚拟机管理的内存将会包括以下几个运行时数据区域:2.2.1 程序计数器程序计数器(Programming Counter Register)是一块较小的原创 2020-05-16 00:30:12 · 203 阅读 · 0 评论 -
Java实现 数组转化为完全二叉树并进行前序、中序和后序遍历
Java实现 数组转化为完全二叉树并进行前序、中序和后序遍历数组转化成完全二叉树前序遍历递归版本非递归版本中序遍历递归版本非递归版本后序遍历递归版本非递归版本运行结果数组转化成完全二叉树/**由数组构建完全二叉树 *一棵由数组构建的完全二叉树,下标为n的节点左右子树分别是2n+1和2n+2 */ public static TreeNode createBinaryT...原创 2020-05-05 18:25:08 · 1035 阅读 · 0 评论 -
JMeter压测接口时,Error率非常高---未解决
最近在接触一个秒杀项目,所以使用JMeter来对秒杀接口进行压测,但是在测试过程中,发现秒杀接口的error率非常高,刚开始以为是业务代码出现问题,结果检查之后发现并没有问题,另外,在更换接口压测时,也同样出现了这个问题:我们从结果树这一栏可以看到其中出现异常的请求是出现了一个名为ConnectionException的异常,具体信息是:地址在本地计算机上无效,或端口在远程计算机上无效。但由于...原创 2020-05-02 12:51:19 · 10908 阅读 · 12 评论 -
Java并发编程之volatile型变量
最近在研究JVM,关于《深入理解Java虚拟机》书中的最后一部分,高效并发,做一些笔记整理,以下是关于volatile关键字的知识点:一、volatile定义关键字volatile可以说是Java虚拟机提供的最轻量级的同步机制,但是他并不容易被完全正确完整地理解。二、两大特性1.可见性当一个变量定义为volatile之后,它将具备两种特性,第一是保证此变量对所有线程的可见性,这里的“可见...原创 2020-04-15 11:09:52 · 292 阅读 · 0 评论 -
Java面试准备之多线程基础
最近在准备实习面试的事情,因此每天都在复习一些基础知识,昨天面试的时候关于多线程的问题回答得不是很好,因此今天决定把多线程基础的知识给复习一下,顺便整理整理。线程与进程进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。系统运行一个程序就是一个进程从创建、运行和消亡的过程。在Java中,当我们启动了main函数时其实就是启动了一个JVM的进程,而main函数所在的线程就是这...原创 2020-04-13 19:26:08 · 197 阅读 · 0 评论 -
web项目中http://www.springframework.org/schema/mvc报红事件--未解决
事件发生于建立一个Spring+Mybatis+Spring整合的项目中,在创建web模块的xml文件时,导入时http://www.springframework.org/schema/mvc和http://www.springframework.org/schema/mvc/spring-mvc.xsd报红,使用IDEA的提示都无法解决。问题如下:解决提示:点击Fetch exter...原创 2020-02-04 18:12:36 · 10690 阅读 · 7 评论 -
JDBC入门--如何10分钟内学会用Java操作数据库
1、概念:Java DataBase Connectivity Java语言操作数据库JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则(接口)。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。原来我们操作数据库是在控制台使用SQL语句来操作数据库,JDBC是用Java语言向数据库发送...原创 2019-12-03 11:56:38 · 231 阅读 · 0 评论 -
Maven工程创建后没有src目录和Pom.xml文件
问题:正常创建maven工程(不适用骨架)之后没有src目录和Pom.xml文件,之前能够正常使用。找了原因,发现是之前修改了Setting->Build,Execution,Deployment->Build Tools->Maven->Runner中的VM options的值的原因,因此把该项清空,apply后保存。注意,如果是修改了其中other setting...原创 2019-12-01 11:33:01 · 3262 阅读 · 1 评论 -
JavaSE基础--多线程入门
多线程1、并发与并行并发:指两个/多个事件在同一时间段发生(交替进行)并行:指两个/多个事件在同一时刻发生(同时发生,同时进行)2、进程和线程硬盘:永久存储ROM内存:临时存储RAM所有应用程序都要进入内存执行,进入到内存的程序叫进程一个程序至少有一个进程,一个进程可以包含多个线程线程属于进程,是进程中的一个执行单元,负责程序执行单核心单线程cpu:在多个线程间做高速切换,效...原创 2019-12-01 00:13:19 · 174 阅读 · 0 评论 -
IDEA2019配置Tomcat出现无法配置的问题--解决方案
如图,在setting里面配置了tomcat成功之后,来到项目的add configuration时,点击+号想要为项目配置Tomcat,却发现出现该问题:单击Tomcat Server下的local后无反应,右边区域也没有弹出Tomcat的设置页面。在经历一个小时的研究查找后,惊觉可能是万恶的汉化包搞的鬼,依稀记得上次也是因为什么问题把汉化包删掉的,而最近重装后又给他安上了。话不多说,关闭...原创 2019-10-29 16:06:20 · 5885 阅读 · 2 评论 -
借多线程初识Lambda
借多线程初识lambda表达式面向对象和函数式冗余的Runnable代码代码的简化总结lambda表达式,作为Java8中的新特性,可以极大地简化原本复杂的代码,再加上其接近自然语言,比较容易理解。(来自百度,容易理解这点实在不敢恭维)作为一个Java初学小菜鸟,第一次接触lambda是在《Java核心技术卷I》里面,当初可谓一脸懵逼,根本不知道从何入手。借着这次对多线程的学习,对lambda...原创 2019-09-22 12:19:46 · 208 阅读 · 0 评论 -
栈的定义以及用java实现栈的API的两种形式--链表和数组
栈的定义以及用java实现栈的API的两种形式–链表和数组最近在学习算法第四版,看网课的同时,才发现之前学数据结构的时候囫囵吞枣,没有领会到其中的精髓,故对栈的相关知识进行略微总结,如有不对之处请指出,谢谢!栈的定义栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,...原创 2019-07-18 20:46:42 · 369 阅读 · 0 评论 -
Java核心技术-对象与类--显式参数和隐式参数
学习Java对象与类的有关知识时,第一次遇到了显式参数和隐式参数的概念,故通过查询资料得知其区别。它们分别是这样定义的:显式参数:平时见到的在方法名后括号中间的参数,即所谓能看得见的参数。隐式参数:在类的方法中调用了类的实例域。这个被调用的实例域就是隐式参数。例子如下:public void raiseSalary(double byPercent){ double raise = s...原创 2019-07-08 15:12:18 · 432 阅读 · 0 评论
分享