自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Lambda表达式和匿名内部类的区别

Lambda表达式和匿名内部类的区别

2022-12-02 17:04:02 152

原创 springboot

SpringBoot是由Privota团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建及开发过程sping程序缺点。

2022-09-09 14:17:54 204

原创 基础框架-Spring

原因耦合度偏高。

2022-09-01 13:36:50 150

原创 Web核心

1、浏览器地址栏路径发送变化2、可以重定向到任意位置的资源(服务器内部、外部均可)3、两次请求,不能在多个资源使用request共享数据浏览器使用:需要加虚拟目录(项目访问路径服务端使用:不用加虚拟目录。......

2022-08-27 13:58:01 140

原创 解决端口号问题

netstat -aon|findstr “8080”

2022-08-20 01:59:57 92

原创 反射

这种动态获取信息以及动态调用对象方法的功能称为Java语言的反射机制。在运行状态中,对任意一个类,都能够直到这个类的所有属性和方法。先获取配置文件中的信息,动态获取信息并创建对象和调用方法。如果是非public,需要临时取消检查,然后再创建对象。setAccessible(boolean) 暴力反射。利用反射可以无视修饰符获取类里面所有的属性和方法。对于任意一个对象,都能够调用它的任意属性和方法。...

2022-08-16 17:59:06 96

原创 类加载器

类加载器:负责将.class文件(存储的物理文件)加载到内存中。

2022-08-14 21:21:06 187

原创 网络编程

网络编程在网络通信协议,不同计算机运行的程序,可以进行数据传输。

2022-08-14 16:20:26 112

原创 I O 流

File:它是文件和目录路径名的抽象表示文件和目录可以通过File封装成对象File封装的对象仅仅是一个路径名。它可以是存在的,也可以是不存在的。

2022-08-13 15:15:44 233

原创 知识点回顾

局部内部类是在方法中定义的类,所以外界是无法直接使用,需要在方法内部创建对象并使用该类可以直接访问外部类中的成员,也可以访问方法内的局部变量。当一个类中的所有方法都是抽象方法的时候,我们就可以将其定义1为接口接口也是一种引用数据类型,它比抽象类还要抽象。具体体现:定义方法的时候,使用父类型作为参数,该方法就可以接收这父类的任意子类对象。概述:匿名内部类本质上是一个特殊的局部内部类(定义在方法内部)-匿名内部类:可以是接口,也可以是抽象类,还可以是具体类。在子类方法中访问一个变量。匿名内部类在开发中的使用。.

2022-08-07 10:48:41 206

原创 集合框架-

因为数组在内存中是连续的,所以取数据可以通过寻址公式很快求出目标元素的内存地址,因为内存是连续的,所以新增或者删除元素,必须需要移动数据,而且数组长度越长,需要移动的元素越多,操作就越慢。pop方法都是取出集合中第一个元素,但两者顺序是相反的,Stack是”先进后出“,所以pop取出的是最后一个元素,LikedList是”先进先出“,所以pop取出的第一个元素。跟List一样,Set是Collection的子接口,Set集合是以散列的形式存储数据,元素是没有顺序的,可以存储一组无序且唯一的数据。...

2022-08-04 20:59:41 120

原创 并发-JUC

并发vs并行的区别并发concurrency多线程同时操作同一个资源,并不是真正的同时操作,而是交替操作,单核CPU的情况下,资源按时间分配给多个线程。并行parallellism是真正的多个线程同时执行,多核CPU,每个线程使用一个CPU资源来运行。并发编程描述的是一种使系统允许多个任务可以在重叠的时间段内执行设计结构,不是指多个任务在同一时间段内执行,而是指系统具备处理多个任务在同一时间内同时执行能力。高并发是指我们设计的程序,可以支持海量任务的执行在时间段上重叠的情况。...

2022-07-30 17:20:52 228

原创 递归练习--台阶问题

n=2,f(2)=f(1)+f(0),如果终止条件只有一个f(1)=1,f(2)就无法求解,因f(0)的值无法确定。所以n个台阶的走法就等于先走1个台阶后,n-1个台阶的走法+先走2个台阶后,n-2个台阶的走法。假设有N个台阶,每次可以跨一个或者两个台阶,请问走完这个台阶有多少种走法?f(1)=1,能否作为终止条件?f(2)=2作为一个终止条件。第一类是第一步走了1个台阶。第二类是第一步走了两个台阶。...

2022-07-30 17:18:49 283

原创 多线程==

多线程是提升程序性能非常重要的一种方式使用多线程可以让程序充分利用CPU资源优点。

2022-07-21 21:15:06 294

原创 springboot---

SpringBoot是一个快速开发框架,可以迅速搭建出一套基于Spring框架体系的应用,是SpringCloud的基础。SpringBoot开启了各种自动装配,从而简化代码开发,不需要编写各种配置文件,只需要引入相关依赖就可以迅速搭建一个应用。特点整合jsp配置文件application.yml创建handlerjspspringboot HTMLSpringBoot 可以结合Thymeleaf 模板来整个HTML,使用原生的HTML作为视图Thymeleaf 模板是面向Web 和

2022-06-09 16:01:53 147

原创 Ajax----

Ajax即Asynchronous Javascript And XML(异步JavaScript和XML)在 2005年被Jesse James Garrett提出的新术语,用来描述一种使用现有技术集合的‘新’方法,包括: HTML 或 XHTML, CSS, JavaScript, DOM, XML, XSLT, 以及最重要的XMLHttpRequest。使用Ajax技术网页应用能够快速地将增量更新呈现在用户界面上,而不需要重载(刷新)整个页面,这使得程序能够更快地回应用户的操作Ajax 不是一

2022-05-31 14:19:57 48

原创 Json是什么

Json是什么?Json是一种轻量级的数据交换格式采用完全独立于编程语言的文本格式来存储和表示数据简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。在javaScript语言中,一切都是对象,故任何javaScript支持的类型都可通过json来表示 (数字、数组、对象)对象表示为键值对,数据由逗号分隔花括号保存对象方括号保存数组JSON键值对是用来保存avaScript对象的一种方式,和javaScript对

2022-05-28 18:28:46 87

原创 spring-mvc

MVC经典MVC模式中,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。其中,View的定义比较清晰,就是用户界面。是一种软件设计规范是将业务逻辑、数据、显示分离的方法来组织代码MVC主要作用是降低了视图与业务逻辑之间的双向耦合MVC不是一种设计模式,MVC是一种架构模式MVC 去做是什么将URL映射到java类或java方法封装用户提交的数据处理请求–调用相关的业务处理-封装响应数据将响应的数据进行渲染

2022-05-28 00:06:46 167

原创 spring-mybatis

SqlSessionTemplateSqlSessionTemplate是Mybatis—Spring核心是用来代替默认Mybatis实现的DefaultSqlSessionFactory主要负责管理Mybatis的SqlSession,调用Mybatis的sql方法,SqlSessionTemplate是线程安全的,通过TransactionSynchronizationManager中的ThreadLocal保存线程对应的SqlSession,可以被多个Dao共享使用。方式①<?xml

2022-05-25 17:46:24 49

原创 AOP****

AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。主要功能日志记录性能统计安全控制事务处理异常处理主要意图将日志记录,性能统计,安全控制,事务处理,

2022-05-23 17:50:42 95

原创 动态代理-

动态代理动态代理和静态代理角色一样动态代理分为两大类①基于接口的动态代理 -基于接口: JDK动态代理②基于类的动态代理基于类: cglibcglib 是一个强大的,高性能,高质量的Code生成类库,它可以在运行期扩展Java类与实现Java接口。Hibernate支持它来实现PO(Persistent Object 持久化对象)字节码的动态生成。基于java字节码实现—》》 JAVAssistJavassist是一个开源的分析、编辑和创建Java字节码的类库。是由东京工业大学的

2022-05-23 16:06:21 170

原创 静态代理模式

静态代理抽象角色:一般使用接口或抽象类真实角色:被代理的角色代理角色:代理真实角色,代理真实角色,一般做一些附属操作客户:访问代理对象的租房//租房public interface Rent { public void rent();}房东//房东public class Host implements Rent{ public void rent() { System.out.println("房东要出租房子"); }}代

2022-05-23 13:53:08 61

原创 Spring-

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans https://ww

2022-05-21 19:28:02 83

原创 Mybatis 笔记

@注解使用注解来映射简单的语句会使代码显得更加简洁public interface UserMapper { @Select("select * from user") List<User> getUsers();}然对复杂一点的语句java注解就会力不从心故 有复杂的语句 最好使用xml来映射使用注解的增删改 public interface UserMapper { @Select("select * from user") Li

2022-05-18 17:55:33 82

原创 单例模式----

单例模式这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式种模式涉及到一个单一的类,该类负责创建自己的对象, 同时确保只有单个对象被创建这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。单例类只能有一个实例单例类必须自己创建自己的唯一实例单例类必须给所有其他对象提供这一实例优点:1、在内存里只有一个实例,减少了内存的开销,尤其是频繁的创建和销毁实例2、避免对资源的多重占用缺点:没有接口,不能继承,与单一职责原则冲突一个类应该只关心内

2022-04-25 20:25:14 325

原创 Mybatis

1.什么是MybatismyBatis是一款优秀的持久层框架它支持定制化SQL、存储过程以及高级映射MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集MyBatis可以使用简单的XML或注解来配置和映射原生类、接口和java的POJO为库中的记录1.2如何获得MyBatismaven仓库Github1.3 持久化数据持久化持久化就是将程序的数据在持久状态和顺势状态转化的过程内存:断电即失数据库(jdbc),io文件持久化1.3-2 -持久层完成

2022-04-22 13:01:38 47

原创 用两个栈实现队列

用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )维护两个栈,第一个栈支持插入操作,第二个栈支持删除操作。根据栈先进后出的特性,我们每次往第一个栈里插入元素后,第一个栈的底部元素是最后插入的元素,第一个栈的顶部元素是下一个待删除的元素。为了维护队列先进先出的特性,我们引入第二个栈,用第二个栈维护待删除的元素,在执行删除操作的时候我们

2022-03-02 23:12:17 178

原创 防止资源加载失败

在build中配置resources,来防止资源导出失败 <build> <resources> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.properties<

2022-03-01 12:22:24 78

原创 SQL学习笔记

什么是数据库DB,DataBase - 存储数据、管理数据数据库分类关系型数据库 (SQL)MySQL、Oracle、 Sql Server 、DB2、 SQLIite通过表之间,行和列之间的关系进行数据的存储非关系型数据库 (NoSOL)Redis 、MongDB非关系型数据库、对象存储、通过对象的自身的属性来决定MySQLMySQL 是最流行的关系型数据库管理系统之一MySQL是一个关系型数据库管理系统MySQL是一种关系型数据库管理系统关

2022-02-23 16:54:48 491

原创 简谈 String StringBuffer StringBulider 的区别

String StringBuffer StringBulider 的区别从两个角度出发一个是性能一个是安全性能每对String类型进行改变时候,都将生成一个新的String对象,然后指针指向新的String对象。StringBuffer每次都会对StringBuffer对象本身进行操作,而不是生成新的对象并改变对象引用。同情况下使用StringBuilder相比使用StringBuffer仅能获得10%~15%左右性能提升,但要冒着多线程不安全的风险线程安全性String中的对象是

2022-02-16 19:50:17 332

原创 Reflection

动态语言是一类在运行时可以改变其结构的语言主要动态语言:Object-C、C#、JavaScript、PHP、Python静态语言*与动态语言相对应,运行时结构不可变的语言就是静态语言–Java、C、C++*Java有一定的动态性我们可以利用反射机制获得类似动态语言的特性Reflection– 反射是java被视为动态语言的关键,反射机制允许程序在执行期借助ReflectionAPI取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。Class C= Class.forN

2022-02-14 20:48:03 124

原创 得到Class类的几种方式

动态语言是一类在运行时可以改变其结构的语言主要动态语言:Object-C、C#、JavaScript、PHP、Python静态语言*与动态语言相对应,运行时结构不可变的语言就是静态语言–Java、C、C++*Java有一定的动态性我们可以利用反射机制获得类似动态语言的特性Reflection– 反射是java被视为动态语言的关键,反射机制允许程序在执行期借助ReflectionAPI取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。Class C= Class.forN

2022-02-08 21:15:52 382

原创 线程----状态

线程方法setPriority(int newPriority) //更改线程优先级线程休眠static void sleep(long millis)等待该线程终止void join()停止当前,执行其他static void yield()中断线程void interrupt()查看线程状态boolean isAlive()*使用标志位停止线程//使用标志位停止线程public class ThreadStop imp

2022-02-04 19:33:10 260

原创 Lambda表达式----“进化论”

Lamda表达式避免匿名内部类定义过多new Thread (()-System.out.println("多线程。。。")).start();a->System.out.println("i like lambda-->" +a)为什么使用lambda表达式精简代码函数式接口–任何接口,如果只包含唯一一个抽象方法,那么他就是一个函数式接口public interface Runnable{ public abstract void run();}

2022-02-03 14:51:18 595

原创 #静态代理

一般来说,静态代理中的代理类和委托类将实现相同界面,或者相同的父类。//真实对象和代理对象都要实现同一接口优点代理对象可做很多真实对象做不了的事情真实对象专注自己的事情public class StaticProxy { public static void main(String[] args) { You you = new You();//你要结婚 new Thread(()-> System.out.println("i love y

2022-02-02 13:00:57 459

原创 # Thread

程序*为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合。 代码只是程序的组成成分线程*线程在操作系统中能够进行运算调度最小单位*被包含与进程之中,是进程中实际运作的单位*一个进程可并发多个线程,每条线程并行执行不同任务进程 Process*进程是程序的一次执行进程是可以和别的计算并行执行*进程是程序在一个数据集合上运行的过程,是系统进行资源分配和调度的一个独立单位多线程 Multithreading多线程是指从软件或者硬件上实现多个线程并发执行技术//创建线程方式

2022-01-29 16:08:19 401

原创 接口可实现多继承

接口(Interface)*是一个抽象类型,是抽象方法的集合— 关键字 interface一个类通过继承接口的方式,从而来继承接口的抽象方法接口不是类接口无法被实例化,但可以被实现。(重写接口中所有的方法)接口与类区别*接口没有构造方法*接口中所有方法必须是抽象方法public interface UserService { //接口中所有定义都是抽象的public static final int age=99;//== int age ==99 // public a

2022-01-29 13:40:53 664

原创 抽象类(abstract)

抽象类(abstract)抽象类存在的意义?理解为一种约定工具,在代码中抽象类在某种情况适合用来写出大体框架,具体实现流程由抽象类事先定义完毕,具体实现过程可以定义抽象方法,而抽象方法交由子类去具体实现。抽象存在构造吗?抽象类可以有构造方法,构造方法不可继承,但是可以供子类用super()或者super(参数,参数。。。。)调用。public abstract class Action{//抽象类 ////抽象方法 public abstract void doSomething(

2022-01-29 12:34:42 385

原创 多态是 ---方法的多态?

1.什么是多态(polymorphism)官方来讲:指为不同数据类型的实体提供统一的接口首先:多态多态可分为变量多态+函数多态还可分为动态多态+静态多态通俗来讲既 一种方法被不同对象使用会产生不同的行为eg:吃饭 可以用筷子 直接用手 用刀叉eg:一个对象的实际类型是确定,可以指向对象的引用类型有很多存在条件有继承关系子类重写父类方法父类引用子类对象一个小案例宠物类...

2022-01-28 20:49:54 854

空空如也

空空如也

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

TA关注的人

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