自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java多线程基础总结

一、什么是线程?线程是操作系统能够进行运算调度的最小单位,线程是进程中的一个执行单元,被包含在进程之中,是进程中的实际运作单位。一个进程(进程就是应用程序比如qq、微信等)中可以有多个线程,且至少有一个线程。二、java中线程的三种创建方式继承Thread,重写run方法public class MyThread extends Thread{ @Override public void run() { for (int i = 0; i <20 ; i++

2021-08-09 19:47:48 154

原创 java基础复习(数据类型、面向对象、static关键字、内部类、异常、注解、反射)

一、java中的数据类型java中共分为四类八种基本数据类型:整型:byte: -128~127(-2的7次方到2的7次方-1)short:-32768~32767(-2的15次方到2的15次方-1)int:-2147483648~2147483647(-2的31次方到2的31次方-1)long:-9223372036854774808~9223372036854774807(-2的63次方到2的63次方-1)浮点型:float:3.402823e+38~1.401298e-45(

2021-07-28 20:30:25 170

原创 POI技术

一、什么是POIApache POI 是用java编写的免费开源的JAVA API,Apach POI提供了API给Java 程式对 Microsoft Office(Excel、WORD、PowerPoint、Visio 等,主要实现用于 Excel)格式档案读和写的功能,POI 为 “ Poor Obfuscation Implementation ” 的首字母缩写,意为“简洁版的模糊实现”。简单来说就是使用java来对excel文件进行读写操作,POI提供了java操作excel等文件的API。

2021-07-21 20:17:56 976

原创 Git 分布式版本控制系统

git基本使用

2021-07-16 19:40:33 282

原创 前端框架 Vue.js

一、MVC模式和MVVM模式的区别由于vue框架采用的是mvvm模式的开发,这里把MVC模式和MVVM两种模式做一个详细的解释说明。在解释两种模式之前,首先要先理解一个概念,MVC是一种设计模式,这个模式既可以用在前端也可以用在后端,基于这个模式衍生出许多mvc框架,比如SpringMVC、Struts2、Tapestry、JSF等。但是千万不要把mvc错误认为就是SpringMVC,模式是模式,模式是可以复用到很多地方的,框架是框架,框架的出现是为了解决某一特定的问题的。比如springmvc就是为了

2021-07-09 21:10:54 760

原创 大前端进阶(Nodejs、ES6、npm、Babel、模块化、Webpack)

随着前端技术的不断迭代更新,前端已经不仅仅是之前的js、css、jquery就能满足需求的了,前端的开发也逐渐向后端开发的模式迈进,这其中就引入了很多新的技术,作为一个java开发虽然不用深入研究,但是对这些前端中比较重要的几个知识点还是很有必要学习一下的。一、前端开发工具VS Code前端的开发工具很多,例如WebStorm、HBuilder、Sublime等。VScode是微软开发的一款代码编辑器,它的优势在于是一款轻量级编辑器,安装包小,启动速度快。最大的优势在于VScode有着丰富的插件系统。

2021-07-01 19:55:17 656

原创 Nginx(一个高性能的HTTP和反向代理web服务器)

一、什么是Nginx?Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,其特点是占有内存少,并发能力强。中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。在全球活跃的网站中有12.18%的使用比率,大约为2220万个网站。二、为什么需要Nginx?在最初的项目中,由于并发量小,用户少,所以一台服务器就可以满足日常需求,如下图:但是,随着业务的发展,用户越来越多,一台服务器很明显满足不了我们的日常需求了:所以,我们想到一个解决的办法就是横向扩展

2021-06-24 20:53:52 892

原创 安全框架 Shiro & Spring Security

一、什么是Shiro?Apache Shiro 是一个Java 的安全(权限)框架。Shiro可以完成,认证,授权,加密,会话管理,Web集成,缓存等。二、Shiro的主要功能Authentication:身份认证、登录,验证用户是不是拥有相应的身份。Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限,即判断用户能否进行什么操作。Session Manager:会话管理,即用户登录后就是第一次会话,在没有退出之前,它的所有信息都在会话中;会话可以是普通的JavaS

2021-06-24 19:57:35 603 1

原创 RabbitMQ——消息中间件

一、什么是中间件?中间件(Middleware)是处于操作系统和应用程序之间的软件。中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件有很多产品,比如之前学习过的缓存中间件redis,全文搜索引擎中间件ElasticSearch,消息中间件RabbitMQ、ActiveMQ、Kafka,还有数据库中间件MyCat、Sharding-JDBC等。这些统称为中间件。二、为什么需要(消息)中间件呢?像redis、es这些就不说了,都是为了提高搜索速度等,这里重

2021-06-08 21:07:05 1451 2

原创 ElasticSearch——全文搜索引擎

一、为什么需要全文搜索引擎?首先先来了解一个概念,在我们生活中一般来说有两种数据:结构化数据、非结构化数据结构化数据:指具有固定格式或有限长度的数据,如数据库,元数据等。非结构化数据: 非结构化数据又可称为全文数据,指不定长或无固定格式的数据,如邮件,word文档等。对于结构化数据我们可以直接从数据库查询,而对于非结构化的数据此时就要用到全文检索的方式查询,比如对一个文档或者网页中的内容文本每个词建立一个索引,把这些非结构化的变成结构化的方式然后来查询。全文搜索引擎百度百科定义:全文搜索引擎是目前

2021-05-28 19:21:46 9164 6

原创 Redis超详细总结

一、什么是nosql?nosql = not only sql ,不仅仅是sql,泛指非关系型数据库。随着互联网的高速发展,传统的关系型数据库(mysql、oracle…)已无法完全应对用户的需求,特别是大规模、高并发的网站,用传统的数据库来应对已经暴露出很多问题,而非关系型数据库在可以很好的来解决这些问题。nosql数据库的特点:易扩展、大数据量高性能、数据类型多样灵活。常见的nosql数据库:redis、mongoDB、BerkeleyDB、CouchDB、memcache等现在网站基本都是

2021-05-20 19:50:44 274

原创 SpringCloud Netflix & SpringCloud Config

一、什么是微服务?在传统的all in one单体应用架构中,所有的服务和功能都在一个应用中部署,当其中某个服务出现问题时必须停掉当前整个应用,修复后重新发布。微服务是将系统中的每个模块拆分出来(例如订单模块、用户模块、管理模块)做成一个可独立部署的服务组件,根据每个服务的吞吐量的不同,可以选择不同的部署方式。二、什么是SpringCloud?在介绍springcloud之前我们可以先回忆一下之前介绍过的SpringBoot,当时提到springboot本身并没有提供什么新的技术,它是通过约定大于配

2021-04-28 20:05:17 312 1

原创 javaWeb知识点、文件上传和下载

一、tomcattomcat是一个底层由java语言编写的开源的轻量级的中小型Web服务器。下载地址:http://tomcat.apache.org/,进入后选择需要下载的版本下载后解压安装即可(使用前提是JAVA_HOME环境变量已配置好)下面对server.xml配置文件里面的端口号进行些说明:<!-- tomcat服务器关闭端口,也就是shutdown.bat那个程序调用的接口 --><Server port="8007" shutdown="SHUTDOWN">

2021-04-07 08:57:22 211 2

原创 SpringBoot自动装配原理及快速上手

一、什么是SpringBoot ?SpringBoot就是一个javaweb框架,和springmvc类似,官方的说法是简化开发、约定大于配置。SpringBoot最大的特点就是:自动装配!为什么要有springboot?它帮我们解决了什么问题?众所周知,Spring是一个开源框架,从2003年兴起,随着Spring的不断发展,涉及的领域越来越多,项目整合开发需要配置各种各样的文件,配置过程十分繁琐,使得spring的使用变得困难起来。SpringBoot就是在这样的一个背景下被抽象出来的一个开发框架

2021-03-26 19:51:42 432

原创 maven-项目管理工具

一、maven的概念maven是一个项目管理工具。首先他帮我们解决的最大的一个问题就是jar包的依赖管理,我们知道一个项目可能会导入几百上千的jar包,如果每用到一个jar包我们都去手动导入到项目里会非常麻烦,而且项目会占用很大的空间。maven通过一些坐标的导入即可完成,且不占用项目空间。一个项目的生命周期要经过编译、测试、运行、打包、安装 、部署一系列的过程,maven就是帮我们来管理这一系列的过程让我们通过一个命令就可以完成上述过程中的任何一步。二、安装maven2.1 百度maven

2021-03-18 19:14:31 224 2

原创 SSM框架整合

现在市面上基本已经都在使用springboot开发了,虽然ssm用的少了,但是我觉得还是有必要总结一下的,会让自己对三大框架的理解更深些,在之后的对springboot的原理进行解析理解时会更容易搞懂。以下过程中对于创建表、实体类、service、controller等的代码就不怎么详细介绍了(天天在写逻辑,这些已经很熟悉了~)IDEA 新建一个maven项目导入相关依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns

2021-03-11 19:13:34 91

原创 SpringMVC、Spring、 Mybatis三大框架知识点总结

一、Spring1.1 概述Spring是分层的Java SE/EE应用轻量级开源框架,以IOC(Inverse Of Control:控制反转)和AOP(Aspect Oriented Programming:面向切面编程)为内核,提供了展现层 Spring MVC 和持久层 Spring JDBC 以及业务层事务管理等众多的企业级应用技术,还可以整合众多第三方框架。1.2 IOC我们平时开发中如果创建对象需要去new 一个对象,这个动作是我们主动去创建的。Spring中的IOC就是去帮我们

2021-03-05 19:08:23 1975 2

原创 IO流总结

java中的IO流分为字节流和字符流:字节流一般用来处理:图片、视频、PPT等多种文件,字符流只能用来处理纯文本文件如txt文件。字节流可以处理所有文件,包括纯文本文件,但如果处理纯文本文件优先考虑字符流。一、File类java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。 File file = new File("d:\\aaa.txt"); try { System.out.println(fil

2021-01-29 20:11:46 92

原创 Lambda表达式

一、Lambdajdk在1.8版本时引入了Lambda表达式,即函数式编程思想。面向对象编程思想:做一件事情,找一个能解决这个事情的对象,调用对象的方法,完成事情函数式编程思想:只要能获取到结果,谁去做的,怎么做的都不重要,重视的是结果,不重视过程。此思想强调的是做什么,而不是以什么形式做。传统的使用Runnable匿名内部创建线程:new Thread(new Runnable() { @Override public void run() {

2021-01-28 10:05:14 101

原创 java中关于线程Thread的创建和同步总结

一、进程与线程的概念进程是内存中运行的一个应用程序,线程是进程中的一个执行单元。一个程序可以有多个进程,一个进程可以有多个线程且至少有一个线程。二、Java中创建线程的两种方式定义Thread的子类,并重写该类的run方法public class MyThread extends Thread{ @Override public void run() { for (int i=0;i<20;i++){ System.out.prin

2021-01-26 20:57:46 283 1

原创 java中常见的集合总结

今天来简单总结下java中常见的集合,如下图所示:java中的集合主要分为单列集合Collection和双列集合Map一、单列集合Collection接口中定义的是所有单列集合中共性的方法,所以在最顶端。1.1 List接口继承自Collection接口,且List是一个有序、带索引、可重复的一个集合。ArrayList继承了List接口,底层数据结构是数组,查询快、增删慢。(ArrayList也是开发中最常用到的一个集合,但其实用ArrayList去完成所有的需求并不严谨,不太提倡哦~)Li

2021-01-21 20:57:21 514 1

原创 Date、SimpleDateFormat、Calendar日期相关简单总结

删除线格式 ~~吖删除阿萨德萨达## 阿萨德***斜体样式这里是引用`rp != null and corp != null"> AND a.corp like ‘%’||#{corp,jdbcType=VARCHAR}||’%’ AND (a.createUser like ‘%’||#{createUser,jdbcType=VARCHAR}||’%’ or d.operator like ‘%’||#{createUser,jdbcType=VARCHAR}||’%’ )<

2021-01-10 23:36:47 229 3

原创 static关键字、多态、抽象类

构造方法的作用:构造方法作用就是对类进行初始化。 如果你没有定议任何构造方法的形式,程式会为你取一个不带任何参数的构造函数,那么你产生类的对像时只能用不带参数的方法,如:class a {}//没有任何构造函数。简单来说就是一个类要被实例化,例如:Student s = new Student() ,此时Student()其实就是这个类的构造方法,如果你对一个类没有定义构造方法,那java会默认帮你创建个无参的构造方法,即这个Student()就是无参构造方法。new 一个对象的时候要用到构造函数。

2021-01-03 23:03:26 113

原创 乐观锁与悲观锁

乐观锁与悲观锁乐观锁:假设都是最好的情况,每次拿数据都认为别人不会修改。但是在更新操作时会判断在此期间要更新的此条数据有没有被修改。使用场景:多读的类型,可提高吞吐量。主要实现方式:版本号机制、CAS算法版本号机制:数据库表中加version字段,每次修改version+1。线程1更新数据时,会先读取要更新的数据值和此version字段,在提交更新操作时会将version字段+1(a),和新要更新的数据值一起更新的数据库,但是在提交更新操作这个动作之前会将当前数据库的version值(b)和目前a

2020-12-30 14:52:32 121 1

空空如也

空空如也

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

TA关注的人

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