![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
❀基础知识
xiaoshuo566
这是一个积累的过程,量变成就质变。
展开
-
==和equals()的区别
1、==:(1)基本数据类型(int a = 1; String s = “hello”;)比较的是值。(2)引用数据类型(Integer c = new Integer(2); String str = new String(“world”);)比较的是内存地址2、equals():情况1:类没有覆盖equals()方法。等价于通过“==”比较这两个对象,也就是比较地址情况2:类...原创 2020-04-14 16:53:56 · 187 阅读 · 0 评论 -
java参数传递之值传递与引用(地址)传递
开门见山的说,java参数传递存在两种情况:1\参数为基础类型(int,long,short等)时,本质为值传递,即对参数的任何操作都不会对原数据有影响。2\参数为对象(实例化new出来的)时,本质为引用传递,参数地址指向原数据地址,即任何操作都是在操作原数据。...原创 2019-11-14 16:43:41 · 453 阅读 · 0 评论 -
CRON表达式
cron表达式格式:{秒数} {分钟} {小时} {日期} {月份} {星期} {年份(可为空)}例 “0 0 12 ? * WED” 在每星期三下午12:00 执行(年份通常 省略)先了解每个位置代表的含义,在了解每个位置允许的范围,以及一些特殊写法,还有常用的案例,足够你掌握cron表达式一:每个字段的允许值字段 允许值 允许的特殊字符秒 0-59 , - * /分 0-59 ...原创 2019-10-31 10:54:39 · 409 阅读 · 0 评论 -
nginx,tomcat,apache三者分别用来做什么,有何区别(转载)
原文地址:https://www.cnblogs.com/mpp0905/p/9502856.html1. Nginx和tomcat的区别nginx常用做静态内容服务和代理服务器,直接外来请求转发给后面的应用服务器(tomcat,Django等),tomcat更多用来做一个应用容器,让java web app泡在里面的东西。严格意义上来讲,Apache和nginx应该叫做HTTP Serve...原创 2019-10-21 18:09:20 · 524 阅读 · 0 评论 -
java中使用【apache poi】来创建和解析excel
引入依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.16</version> <...原创 2019-08-01 15:04:55 · 489 阅读 · 0 评论 -
【java8新特性】之lambda表达式
lambda表达式作用:1、用于实现简单的接口。2、遍历集合 重要特征如下: 可选类型声明:不需要声明参数类型,编译器可以统一识别参数值。 可选的参数圆括号:一个参数无需定义圆括号,但多个参数需要定义圆括号。 可选的大括号:如果主体包含了一个语句,就不需要使用大括号。 可选的返回关键字:如果主体只有一个表达式返回值则编译器会自动返回值,大括号需要指定明表达式返回了一个数值。...原创 2019-08-01 15:17:06 · 106 阅读 · 0 评论 -
【IntlliJ IDEA】使用技巧
1、大括号匹配在大括号附近使用ctrl+[ 、 ctrl+] 可以快速匹配开始和结束的一组大括号;2、快速查询变量、类、文件、代码和执行动作等等使用ctrl+n,然后选择你要搜索的内容类型,再输入具体搜索内容(或要执行的动作); 3、查询某方法被调用的位置让光标处于该方法的位置; 使用ctrl+alt+h ,就能显示有哪些地方调用了该方法; 4、跳到父类接口光标处于子类...原创 2019-08-06 17:05:19 · 422 阅读 · 0 评论 -
【java8新特性】之接口的默认方法
声明:(本文章在阅读https://www.runoob.com/java/java8-default-methods.html后,对自己学习内容的记录)在java8中(jdk 1.8 +) 接口中可以定义默认方法和静态方法。这种方法不需要实现类去实现,所以可以避免在接口中添加新方法后,需要修改所有实现类去实现新方法的问题。下面详细讲述;1、默认方法默认方法是一种在接口内已经默认实现的方...原创 2019-08-13 18:27:59 · 190 阅读 · 0 评论 -
【压缩文件】的文件添加和解压、以及文件的【内容追加】
1、依赖引入 <!-- io --> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>...原创 2019-08-09 16:48:55 · 609 阅读 · 0 评论 -
【java】之多线程编程
菜鸟教程:https://www.runoob.com/java/java-multithreading.html原创 2019-08-19 14:42:59 · 104 阅读 · 0 评论 -
【Spring Cloud】实现微服务
转载收藏好文章,供自己学习使用利用Spring Cloud实现微服务(七)- 内部调用利用Spring Cloud实现微服务(六)- 服务网关利用Spring Cloud实现微服务(五)- 负载均衡利用Spring Cloud实现微服务(四)- 微服务实现与注册利用Spring Cloud实现微服务(三)- 业务领域驱动微服务设计利用Spring Cloud实现微服务(二)–领域驱...原创 2019-09-25 15:23:37 · 86 阅读 · 0 评论 -
【Eureka服务注册】与【Zuul路由和过滤器】
包含三大部分(即三个工程):1、Eureka服务注册中心(工程名:Test_Eureka_Server)2、一个服务(工程名:Test_Eureka_Client)3、Zuul路由和过滤器(工程名:Test_Zuul_Filter)1、创建工程** 创建Springboot工程(Spring Cloud微服务)** 三个工程的创建只介绍依赖的选择:Test_Eureka_Ser...原创 2019-09-26 17:11:47 · 232 阅读 · 0 评论 -
【线程同步】之使用【同步锁synchronized】实现
·明确概念线程同步:线程同步是指让多个线程按顺序执行(串行),而不是并行(默认情况)。java内置锁(包括同步锁):Java内置锁是一种互斥锁,通过同一个自定义的线程类开启的线程,不论开启几个,都只有一把锁。先获得锁的线程先执行,当其执行完后会释放锁,该锁由其他线程获得并执行该线程。·代码演示(运行结果,自行测试)package com.imooc.demofirst;/** ...原创 2019-09-29 16:40:20 · 156 阅读 · 0 评论 -
【线程同步】之使用【Thread.join()方法】实现
·明确概念线程同步:线程同步是指让多个线程按顺序执行(串行),而不是并行(默认情况)。·代码演示(运行结果,自行测试)package com.imooc.demofirst;/** * @Author: tongys * @Date: 2019/8/19 */public class ThreadTest { //测试线程同步:线程同步是指让多个线程按顺序执行(串行...原创 2019-09-29 16:58:15 · 481 阅读 · 0 评论 -
【log4j2】日志配置
背景 log4j2相对于log4j 1.x有了脱胎换骨的变化,其官网宣称的优势有多线程下10几倍于log4j 1.x和logback的高吞吐量、可配置的审计型日志、基于插件架构的各种灵活配置等。官方配置文档:http://logging.apache.org/log4j/2.x/manual/configuration.html1、所需jar1)maven配置<dep...原创 2019-08-05 16:38:52 · 237 阅读 · 0 评论 -
数据库查询的内连接与外连接
当一个表有其它表有一对多的关系,需要进行多表关联查询时使用内连接(或外连接)查询。 以两个表关联查询来举例说明: users用户表: orders订单表: 内连接: INNER JOIN : 只返回左右两表匹配的行。 可以看到没有李四和二狗,因为在右表中没有匹配的行。 外连接: LEFT JOIN(左外连接):即使右表没有匹配的行,也返回左表...原创 2019-05-17 20:47:03 · 2896 阅读 · 0 评论 -
几种排序算法代码+动态图(2020/6/11更新)
https://blog.csdn.net/Hodge_Z/article/details/84673439 转载的大佬的博文,有代码和动态图。非常棒。我的理解:1、冒泡排序:(每趟比较都能把未排序元素中最大的沉到最底部)1·依次比较相邻的两个元素,如:若第一个大于第二个,则交换两个元素的位置。2·然后比较第二个和第三个元素,以此类推,直到排序完成。3·每趟排序都会把最大...原创 2019-05-12 19:54:27 · 624 阅读 · 0 评论 -
spring事务的传播机制与事务挂起
·事务的传播机制:(不是JDBC事务管理)用来解决业务层的事务之间调用的问题。 PROPAGATION_REQUIRED :支持(使用)当前事务,如果不存在事务就创建一个新事务 *方法A中调用方法B: 如果方法A有事务,B方法就使用方法A的事务。如果A没有事务,就创建一个新事务。(A,B在同一个事务中) PR...原创 2018-11-10 15:45:04 · 9121 阅读 · 0 评论 -
SSM框架学习总结
Ssm所有相关jar包,包括mybatis,spring,mybatis-spring,数据库的。 相关文件配置①mybatis的核心配置文件mybatis.xml(用到通用Mapper的话在这里配置)·xml内容:配置pojo别名<configuration><typeAliases><package name=”cn.itcast.ssm.p...原创 2018-11-16 09:47:57 · 2085 阅读 · 0 评论 -
关于分布式开发
***什么是分布式开发: 我的理解:分布式开发就是把原本可以放在一个工程中的包,分开创建为对应的工程,即每一个包就是一个工程。这几个工程之间是相互依赖的关系。比如SSM开发,在集中式开发中我们会在一个工程中创建:cn.sjzc.pojo,cn.sjzc.mapper,cn.sjzc.service,cn.sjzc.web 这几个包。那么在分布式开发时,我们就要把这几个包创建成对应的...原创 2018-11-16 10:38:35 · 1919 阅读 · 0 评论 -
hashmap的实现原理
转载自一位大佬的博客:https://blog.csdn.net/qq_40118851/article/details/82804510【hashmap的底层实现原理】图文+源码。写的很棒。我的一些理解:要想知道hashmap的优点,需要知道时间复杂度的概念。hashmap实现了插入、删除、查找的时间复杂度都为O(1),这代表他的执行效率极高。一:为什么哈希表的插入、删除、查...原创 2019-03-01 15:56:39 · 121 阅读 · 0 评论 -
基于注解的aop,实现拦截controller进行登陆校验
·目标:我们想要在跳转到一个页面之前,进行是否登陆的校验,只有已经登陆了,才能进入这个页面。·实现步骤:1、导入aop相关jar包 <!--AOP--> <dependency> <groupId>org.springframework</groupId> <artifactId>s...原创 2019-04-09 21:19:02 · 1453 阅读 · 0 评论 -
Java 最常见 200+ 面试题全解析:面试必备(转载)
序言在本篇文章开始之前,我想先来回答一个问题:我为什么要写这样一篇关于面试的文章?原因有三个:第一,我想为每一个为梦想时刻准备着的“有心人”,尽一份自己的力量,提供一份高度精华的 Java 面试清单;第二,目前市面上的面试题不是答案不准确就是内容覆盖面太窄,所以提供一份经典而又准确的面试题是非常有必要的;第三,本文会对部分面试题提供详细解读和代码案例,让读者知其然并知其所以然,从而学到更多的知...转载 2019-07-17 17:44:52 · 97 阅读 · 0 评论 -
关于Filter过滤器的使用
https://www.cnblogs.com/ygj0930/p/6374212.html 这位Nutty大佬的博客写的很清楚详细了。看起来很明了。特此转载。转载 2019-04-18 21:18:28 · 110 阅读 · 0 评论 -
设计模式三大类和六大原则
一、三大类别设计模式分为三大类:`创建型模式:对对象的实例化过程进行抽象,这使得一个系统可以不用关心这些对象是如何创建,组合,呈现的,对于类创建模式来说通过使用继承改变实例化的类,对于对象创建模式来说通过使用代理来实例化所需要的对象。共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。`结构型模式:通过对多个类和对象进行组合得到复杂结构的类,一般使用继承或者成员变量引用形式来实...转载 2019-04-19 19:22:38 · 178 阅读 · 0 评论 -
关于跨域问题(转载)
http://www.imooc.com/article/40074转载 2019-05-05 18:44:13 · 79 阅读 · 0 评论 -
关于正则表达式
必备知识:较为常用的元字符包括: “+”, “*”,以及 “?”。 “+”元字符规定其前导字符必须在目标对象中连续出现一次或多次。 “*”元字符规定其前导字符必须在目标对象中出现零次或连续多次。 “?”元字符规定其前导对象必须在目标对象中连续出现零次或一次。几种常用的正则表达式形式:分段匹配:^[a-z]+[1,9]{2,}$ ...原创 2019-05-08 17:05:06 · 86 阅读 · 0 评论 -
SSM框架的理解
一、SSM的介绍:SSM框架是 springMVC、spring、mybatis的整合,是标准的MVC模式。 分为四层:view层、controller层(控制层)、service层(业务层)、DAO层(持久层)。 springMVC负责请求转发和视图管理,spring实现业务对象的管理,mybatis负责数据的持久化操作。二、3部分:springMVC:客户端发送请求到Dispa...原创 2019-05-09 20:51:52 · 901 阅读 · 0 评论 -
java三大特征
封装:封装就是将一个对象的属性和操作结合成一个独立的整体,并尽量隐藏其内部的操作细节。 继承:继承就是,子类继承父类的特征和行为,使子类具有父类的一些方法。父类中private修饰的方法,不能被子类具有;父类中static修饰的方法,不能被子类重写,即便子类中有与父类中同名的静态方法,二者也没有任何关联多态:多态就是同一个行为具有不同的表现形式。多态的三个必要条件:继承、重写、父类引...原创 2019-05-15 21:40:15 · 2297 阅读 · 0 评论 -
进程和线程的区别
进程是操作系统为程序运行分配资源的基本单位。 线程是进程的一个执行单元,是进程内部调度的实体。它是比进程更小的独立运行的基本单位。线程也被叫做轻量级进程。一个程序至少有一个进程,一个进程至少有一个线程。...原创 2019-05-16 11:00:05 · 221 阅读 · 0 评论 -
拦截器(intercepter)与过滤器(filter)的区别
拦截器是基于java的反射机制,过滤器是基于函数回调。 拦截器不依赖于servlet,过滤器依赖于servlet 拦截器只能对action请求起作用,过滤器几乎可以对所有请求起作用。所以拦截器不可以拦截能够直接访问的静态资源,而过滤器可以。 对于action请求来说,拦截器可以访问其上下文和值栈,过滤器不可以。 拦截器可以被多次调用,而过滤器只在程序初始化时调用一次。 重点:拦截器可以获...转载 2019-05-16 14:42:55 · 312 阅读 · 0 评论 -
关于this
this表示类实例本身。this的用法1、表示对当前对象的引用!public class A{ public A getA(){ return this;//表示获取当前实例本身 }}2、表示类的成员变量,而非函数参数,注意在函数参数和成员变量同名是进行区分!public class A{ private int a = 0;//位置1 public A getA(int...转载 2018-03-21 19:50:00 · 117 阅读 · 0 评论