自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spring AOP 浅析

一、AOP——另一种编程思想1.1什么是AOPAOP (Aspect Oriented Programming),翻译过来就是 面向切面编程。AOP是一种编程思想,基于OOP基础之上的新的编程思想;指在程序运行期间,将某段代码动态的切入到指定方法的指定位置进行运行的这种编程方式。在学习AOP前我们需要了解什么是动态代理场景:我们使用计算器运行计算器方法的时候进行日志记录,传统的我们有以下几种方法1.1.1直接写在方法内部方式一定义计算器接口public interface Calculato

2020-05-20 01:10:55 2060 3

原创 java中你可能不知到的那些事-注解

一、什么是注解概念: 说明程序的,给计算机看的。注释: 用文字描述程序,给程序员看的。Annotation是JDK1.5开始引入的新特性使用: 可以标注在方法、变量、参数和包等作用: 可以被其它程序,比如编译器读取格式: 以@注释名在代码中存在,可以添加参数值例: @SupperssWarnings(value=“unchecked”)获取: 通过反射机制变成实现对这些元数据的控制二、内置注解@Override:定义在 java.lang.Override中,此注释可以用于修饰方法,

2020-11-17 21:56:20 161

原创 【Spring Boot】自动配置原理

pom.xml在父工程中的核心依赖 spring-boot-dependencies<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.5.RELEASE</version> &

2020-11-13 16:59:35 358

原创 【Spring Boot】给属性赋值的方式

一:通过yml 给对象赋值 -->推荐通过@ConfigurationProperties注解声明当前类为属性读取类prefix="person"读取属性文件中,前缀为person的值。1.创建Person类@Data@Component@ConfigurationProperties(prefix = "person") //给这个类加一个前缀,在yaml中才能识别public class Person { private String name; private

2020-10-30 17:11:06 814

原创 【Spring Boot】快速搭建一个项目

Spring Boot简介:简化spring应用开发的框架整个spring技术栈的整合J2EE开发的一站式解决方案优点快速创建独立运行的spring项目使用嵌入式的Servlet容器,应用无需打包starter自动依赖与版本控制大量的自动配置,简化开发无需配置XML,无代码生成,开箱即用准生产环境的运行时应用监控首先搭建一个Spring Boot的Hello World 来体验一下Spring Boot的强大。我们以一个功能为例子:浏览器发送hello 请求,服务器接收请求被

2020-10-30 17:09:26 340

原创 IOC容器-静态工厂和实例工厂

前言对于通过类名在配置文件中配置Bean是再普通不过的配置了,Spring的实例工厂方法和静态工厂方法都可以用来实例化bean,接下来我们就来看看相关实例1. bean的创建模式就是框架利用反射new出来的bean实例2. 工厂模式:替代了我们自己去new的过程,有一个专门替我们创建对象的类3 .静态工厂:工厂本身不用创建对象,通过静态方法调用,对象类=工厂类.工厂方法名4. 实例工厂:工厂本身需要创建对象 工厂类工厂类 工厂实例=new 工厂类();工厂实例.工厂方法名;###静态工厂

2020-10-19 22:18:18 1197 2

原创 synchronized 底层原理

我们都知道synchroized可以让线程同步,所谓同步,就是同一时刻,只能有一个线程执行这段代码。synchronized:1.锁对象public class Main { private Main main; public Main(Main main) { this.main = main; } public void method(){ synchronized(main){ Sys

2020-10-19 00:50:03 281 1

原创 Map集合的遍历方式

Map<K,V>:Map是以KV形式存储数据的。K叫做关键字(keyword),V代表键值(Value)。map相比于list的最大又是map具有映射的功能。而实际上,除了 List 和 Map 都在定义 java.util 中外,两者并没有直接的联系。查看 MapentrySet()所有键值对keySet()所有键下面我们来看一下map的几种遍历方式增强for循环import java.util.HashMap;import java.util.I

2020-10-15 18:13:41 367

原创 LInkedList实现队列(Queue)和堆栈(Stack)

LinkedList是用双向链表结构存储数据的,很适合数据的动态插入和删除,随机访问和遍历速度比较慢。底层是一个双向链表,链表擅长插入和删除操作,队列和栈最常用的2种操作都设计到插入和删除通过LinkedList继承关系图我们可以发现,LinedList实现了Queue接口,Queue接口与List、Set同一级别,都是继承了Collection接口。Queue接口窄化了对LinkedList的方法的访问权限(即在方法中的参数类型如果是Queue时,就完全只能访问Queue接口所定义的方法 了,而不能直

2020-09-19 18:07:03 4019

原创 如何删除Java集合中的元素(安全与不安全)

通常在删除Java集合中的元素时有会出现安全删除和不安全删除,本案例以list集合为例,list集合的特点:元素无序、可以出现重复的元素。下面就为大家带来一篇java中循环删除list中元素的方法总结。安全的删除元素:import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class Test { public static void main(String[] args) {

2020-09-11 10:55:42 1490

原创 为什么重写equals()时,必须重写hashCode()

hashCode()方法和equals()方法的作用其实一样,都是用来比较两个对象是否相等,既然equals()方法已经能实现对比的功能,为什么还要用hashCode()呢?首先我们来看Object类java.lang.Object类中有两个非常重要的方法: public int hashCode(); public boolean equals(Object obj);Object类是所有类的父类,所有的对象,包括数组,都实现了在Object类中定义的方法equals()

2020-09-04 15:00:59 1089

空空如也

空空如也

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

TA关注的人

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