自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (2)
  • 收藏
  • 关注

原创 获取本周的第一天,最后一天

【代码】获取本周的第一天,最后一天。

2023-06-08 15:51:55 568

原创 Result封装实体类

【代码】Result封装实体类。

2023-03-24 09:36:31 263 1

原创 Spring Cloud GateWay

springcloud-gateway的认识

2023-02-20 14:22:48 427

原创 根据当前日期,获取其他日期

时间

2023-01-21 21:32:53 131

原创 element-ui与vue,获取对应el-select的所有属性

获取el-select的所有属性 element+vue

2022-08-09 20:47:10 848

原创 mysql语句

常用sql语句

2022-06-07 22:25:32 78

原创 java中的String类(1.8)

这里写目录标题Array是什么?Array的属性和方法Array是什么?The {@code Array} class provides static methods to dynamically create and access Java arrays.Array类提供静态方法来动态创建和访问 Java 数组。Array的属性和方法...

2022-05-22 15:54:37 742

原创 Java中的Object类

1.Object是什么?*Class {@code Object} is the root of the class hierarchy. Every class has{@code Object} as a superclass. All objects,including arrays, implement the methods of this class.类Object是类层次结构的根。每个类都有Object作为超类。所有对象,包括数组,都实现了这个类的方法2.Object内部属性方法1

2022-05-22 10:34:57 121

原创 MD5生成器和使用

//MD5 生成器public class MD5Utils { public static String md5(String password){ //生成一个md5加密器 try { MessageDigest md = MessageDigest.getInstance("MD5"); //计算MD5 的值 md.update(password.getBytes()); //BigInteger 将8位的字符串 转成16位的字符串 得到的字符串形式是哈希码值

2022-04-29 12:10:06 1769

原创 RESTful-URL规范

@RestController //以下的方法都响应json数据@RequestMapping("/goods")@Api(value = "提供商品添加,修改,删除及查询的相关接口", tags="商品管理")public class GoodController { @PostMapping(value = "/add") public ResultVO addGoods(){ return null; } @DeleteMapping(v

2022-04-29 12:07:29 260

原创 SM框架整合

文章目录总体结构1.bean对象2.jdbc.properties3.SqlMapConfig.xml4.applicationContext_mapper.xml5.applicationContext_service.xml6.UserMapper.xml7.UserMapper接口8.UsersService接口9.UsersServiceImpl总体结构1.bean对象package com.bjpowernode.pojo;public class Users { privat

2022-04-24 16:58:24 319

原创 MyBatis的搭建

文章目录环境搭建1.创建2.bean对象3.jdbc.properties创建4.SqlMapConfig.xml5.StudentMapper.xml6.测试环境搭建1.创建org.apache.maven.aechetypes:maven-archetype-quickstart2.bean对象package com.bjpowernode.pojo;public class Student { private Integer id; private String name

2022-04-24 12:19:14 717

原创 学习springcloud

文章目录第一章 认识Spring Cloud1.1 Spring Cloud是什么1.2 特征第二章 搭建Spring Cloud2.1搭建和配置一个服务提供者2.2 搭建和配置一个服务者2.3 服务注册中心Eureka2.4 搭建与配置Eureka服务注册中心2.5 向Eureka服务注册中心注册服务2.6 从Eureka服务注册中心发现与消费服务第三章 服务注册中心Eureka3.1 Eureka注册中心高可用集群概述3.2 Eureka注册中心高可用集群搭建3.3 Eureka注册中心高可用集群测试3

2022-04-23 18:50:25 308

原创 SSM整合

文章目录SSM整合的步骤1.新建Maven项目,选择webapp模板2.修改目录3.修改pom.xml文件4.添加jdbc.propertires属性文件5.添加SqlMapConfig.xml文件6.添加applicationContext_mapper.xml文件7.添加applicationContext_service.xml文件8.添加spirngmvc.xml文件9.删除web.xml文件,新建,改名,设置中文编码,并注册spirngmvc框架,并注册Spring框架10.新建实体类user11

2022-04-18 21:18:32 359

原创 并发——任务执行

文章目录1. 在线程中执行任务1.1 串行地执行任务1.2 显式的为任务创建线程1.3 无限制创建线程的不足2.Executor框架2.1 实例:基于Executor的Web服务器2.2 执行策略2.3 线程池2.4 Executor的生命周期2.5 延迟任务与周期任务3. 找出可利用的并行性3.1 实例:串行的页面渲染器3.2 携带结果的任务Callable与Future3.3 实例:使用Future实现页面渲染器3.4 在异构任务并行化中存在的局限3.5 CompletionService:Execut

2022-04-02 23:45:15 482

原创 基础构建模块

1.同步容器类同步容器类包括Vector和Hashtable,二者是早期JDK一部分,此外还包含在JDK 1.2中添加的一些功能相似的类,这些同步的封装器类是由Collections.synchronizedXxx等工厂方法创建的。这些类实现线程安全的方式是:将它们的状态封装起来,并对每个公有方法都进行同步,使得每次只有一个线程能访问容器的状态。1.1 同步容器类的问题同步容器类都是线程安全的,但在某些情况下可能需要额外的客户端加锁来保护复合操作。容器上常见的复合操作包括:迭代以及条件运算。在同步容器

2022-04-01 19:47:41 236

原创 对象的组合

1.设计线程安全的类通过封装技术,可以使得在不对整个程序进行分析的情况下就可以判断一个类是否线程安全。在设计线程安全类的过程中,需要包含以下三个基本要素:找出构成对象状态的所有变量。找出约束状态变量的不可变条件。建立对象状态的并发访问管理策略。对于含有n个基本类型域的对象,其状态就是这些域构成的n元组。如果在对象的域中引用了其他对象,那么给对象的状态将包含被引用对象的域。同步策略定义了如何在不违背对象不变条件的情况下对其状态的访问操作进行协同。同步策略规定了如何将不可变性,线程封闭与

2022-03-30 19:37:40 340

原创 对象的共享

对象的共享3.1 可见性当多个线程在没有同步的情况下共享数据时出现的错误。无法保证主线程写入的ready值和number值对于读线程来说是可见的。public class NoVisibility { private static boolean ready; private static int number; private static class ReaderThread extends Thread { @Override publi

2022-03-29 19:42:45 622

原创 线程安全的认识

线程安全的认识1.什么时线程安全当多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些线程将如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么就称这个类是线程安全的。在线程安全类中封装了必要的同步机制,因此客户端无需进一步采取同步措施。实例:一个无状态的Servlet@ThreadSafepublic class StatelessFactorizer implements Servlet{ public void service

2022-03-27 21:03:54 82

原创 Java并发编程的艺术学习笔记

第一章 并发编程的挑战并发编程的目的:为了让程序运行的更快。但并不是启动的线程越多就能让程序最大限度地并发执行。CPU通过时间片分配算法来循环执行任务,当前任务执行一个时间片后会切换到下一个任务。但是,在切换前会保存上一个任务的状态,以便下一次切换回这个任务时,可以再加载这个任务的状态。所以任务从保存到再加载的过程就是一次上下文切换。如何减少上下文切换?1.无锁并发编程2.CAS算法3.使用最少线程4.使用协程避免死锁的常见方法?1.避免一个线程同时获取多个锁2.避免一个线程在

2022-03-27 10:39:07 292

原创 Java多线程知识点

1.Java多线程技能1.线程的启动继承Thread实现Runnable接口2.如何使线程暂停suspend()与resume()yield()3.如何使线程停止使用退出标志使线程正常退出。使用stop()方法强行终止线程使用interrupt()方法中断线程4.线程优先级CPU优先执行优先级较高的线程对象中的任务,即让高优先级的线程获得更多的CPU时间片。setPriority():设置优先级特点:- 线程优先级的继承特性- 优先级的规律性- 优先级的

2022-03-19 18:15:49 565

原创 学习——Java多线程编程(简要概括)

1.多线程技能1.什么是线程?在进程中独立运行的子任务。2.多线程优点?可以大幅利用CPU的空闲时间来处理其他任务。3.什么场景使用多线程? 1.阻塞 2.依赖。注:1.多线程是异步的。线程被调用时机是随机的。2.多次调用start()方法,则出现异常Exception in thread"main"java.lang.IllegalThreadStateException.1.使用多线程1.继承Thread类2.实现Runnable接口start()方法耗时的原因?1)通过JVM

2022-03-19 14:10:13 1162

原创 JVM--类文件结构

类文件结构字节码是构成平台无关性的基石.实现语言无关性的基础仍然是虚拟机和字节码存储格式.1.Class类文件的结构Class文件是一组以8个字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在文件之中,中间没有添加任何分隔符,这使得整个Class文件地内容几乎全部都是程序运行的必要数据,没有空隙存在.<<Java虚拟机规范>>的规定,Class文件格式采用一种类似与C语言结构体的伪结构来存储数据,这种伪结构中只有两种数据类型:“无符号数"和"表”.无符号数属

2022-03-10 08:40:32 999

原创 JVM--线程安全与锁优化

1.线程安全概括:当多个线程同时访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他的协调操作,调用这个对象的行为都可以获得正确的结果,那就称为这个对象是线程安全的.1.Java语言中的线性安全线性安全的"安全程度"由强制至弱来排序:不可变,绝对线程安全,相对线程安全,线程兼容和线程对立.不可变不可变对象一定是线程安全的,无论是对象的方法实现还是方法的调用者,都不需要再进行任何线程安全保障措施.绝对线程安全绝对线程安全能够完全满

2022-03-10 07:44:35 127

原创 JVM--Java内存模型与线程

1.Java内存模型1.主内存与工作内存Java内存模型的主要目的是定义程序中各种变量的访问规则.即关注在虚拟机中把变量值存储到内存和从内存中取出变量值这样的底层细节.此处的变量包括了实例字段,静态字段,构成数组对象的元素,但不包括局部变量与方法参数,因为后者私有,不会被共享.Java内存模型规定了所有的变量都存储在主内存中.每条线程还有自己的工作内存,线程得工作内存中保存了被该线程使用的变量的主内存副本,线程对变量的所有操作都必须在工作内存中进行,而不能直接读写主内存中的数据.不同的线程之间也无法直

2022-03-09 19:58:26 272

原创 JVM--虚拟机字节码执行引擎

1.概述物理机的执行引擎是直接建立在处理器,缓存,指令集和操作系统层面上的.虚拟机的执行引擎是由软件自行实现的,因此可以不受物理条件的制约地定制指令集与执行引擎的结构体系,能够执行那些不被硬件直接支持的指令集格式.不同虚拟机实现中,执行引擎在执行字节码指令时,通常会有解释执行和编译执行两种选择.执行引擎输入,输出一致的:输入是字节码二进制流,处理过程是字节码解析执行的等效过程,输出的是执行过程.2.运行时栈帧结构"栈帧"是用于支持虚拟机进行方法调用和方法执行背后的数据结构,它也是虚拟机运行时数据

2022-03-09 12:58:36 408

原创 JVM--虚拟机类加载机制

1.概述Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这个过程被称作虚拟机的类加载机制。Java的动态扩展的语言特征就是依赖运行期动态加载和动态链接实现的。2.类加载时机加载生命周期如下:加载,验证,准备,初始化都严格按照顺序执行,解析在一些情况下可以位于初始化后进行,原因是为了支持Java语言的运行时绑定。《Java虚拟机规范》严格规定有且只有六种情况必须立即对类进行“初始化”。这些行为被称为对一

2022-03-09 08:10:18 834

原创 JVM--垃圾收集器与内存分配策略

1.概述垃圾回收器的历史比Java久远,诞生于Lisp(第一门开始使用内存动态分配和垃圾收集技术的语言).2.对象已死?1.引用计数法概述:在对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加一;当引用失效时,计数器值就减一;任何时刻计数器为零的对象就是不可能在被使用的.但主流Java虚拟机并没有采用:当单纯的引用计数就很难解决对象之间的相互循环引用的问题.2.可达性分析算法概述:通过一系列称为"GC Roots"的根对象作为起始节点集,从这些节点开始,根据引用关系向下搜索,

2022-03-07 21:49:00 2931

原创 JVM--Java内存区域与内存溢出异常

1.运行时数据区域1.程序计数器概括:程序计数器是一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器.作用:在Java虚拟机的概念模型里,字节码解释器工作是就是通过改变这个计数器的值爱选取下一条需要执行的字节码指令,它是程序控制流的指示器,分支,循环,跳转,异常处理,线程恢复等基础功能都需要依赖这个计数器来完成线程私有:Java虚拟机的多线程是通过线程轮流切换,分配处理器执行时间的方式来实现的,在任何一个确定的时刻,一个处理器只会执行一条线程中的指令,为了确保线程切换后能

2022-03-06 08:22:05 135

原创 JVM--走进Java

1.1概述Java不仅仅是一门编程语言,他还是一个由一系列计算机软件和规范组成的技术体系,这个技术体系提供了完整的用于软件开发和跨平台部署的支持环境,并广泛应用于嵌入式系统,移动终端,企业服务器,大型机等多种场合.Java语言的优点:摆脱了硬件平台的束缚,实现了"一次编写,到处运行"的理想;它提供了一种相对安全的内存管理和访问机制,避免了绝大部分内存泄漏和指针越界问题;它实现了热点代码检测和运行时编译及优化,使得Java应用能随着运行时间的增长而获得更高的性能;它有一套完善的应用程序接口,还有

2022-03-05 19:38:28 2474

原创 Android第一行代码第二版简要总结

进入安卓的第一本书(简要概括)第一章 了解大体Android1.Android系统架构Linux内核层:为Android设备的各种硬件提供了底层的驱动.系统运行库层:通过c/c++库来提供主要特性支持(数据库,浏览器内核,3D绘图),Android运行时库,Dalvik虚拟机(ART运行环境).应用框架层:提供所需要的各种API.应用层:手机上的应用程序皆属于该层.2.Android应用开发特色四大组件:活动(Activity),服务(Service),广播接收器(Broadcast

2022-02-26 20:55:22 821

原创 Android基于位置的服务

Android基于位置的服务1.基于位置的服务简介基于位置的服务简称LBS,主要的工作原理是利用无线电通讯网络或GSP等定位方式来确定出移动设备所在的位置.GPS定位的工作原理是基于手机内置的GPS硬件直接和卫星交互来获取当前的经纬度信息,精确度高,只能在户外使用.网络定位的工作原理是根据手机当前网络附近的三个基站进行测速,以此计算出手机和每个基站之间的距离,再通过三角形定位确定出一个大概的位置,精度一般,室内可用.2.申请API Keyhttps://lbsyun.baidu.com/inde

2022-01-23 17:02:08 2236

原创 Android探究服务

Android探究服务1.服务是什么       服务(Service)是Android中实现程序后台运行的解决方案,适合执行那些不需要和用户交互而且还要求长期运行的任务.服务的运行不依赖于任何用户界面,及程序被切换到后台,或用户打开了另外一个应用程序,服务仍然能够保持正常运行.       服务并不是运行在一个独立的进程中的,而是依赖于创建服务是所在的应用程序.

2022-01-22 21:19:15 2208

原创 Android使用网络技术

Android使用网络技术1.WebView的用法 <WebView android:id="@+id/web_view" android:layout_width="match_parent" android:layout_height="match_parent"/>public class MainActivity extends AppCompatActivity { @Override protected voi

2022-01-21 15:52:55 2269

原创 运用手机多媒体

运用手机多媒体1.使用通知通知(notification)当某个应用程序希望向用户发出一些提示信息,而该应用程序又不在前台运行时,就可以借助通知来实现.1.创建通知渠道渠道通知:每条通知都要有属于一个对应的渠道.每个应用程序都可以自由的创建当前应用拥有那些通知渠道,但通知渠道的控制权是掌握在用户手上.需要一个NotificationManager对通知进行管理,可以通过调用Context的getSystemService()方法获取.getSystemService()方法接收一个字符串参数用于确

2022-01-20 19:42:37 95

原创 内容提供器

内容提供器1.内容提供器简介内容提供器(Content Provider)主要用于在不同应用程序之间实现数据共享的功能,它提供了一套完整的机制,允许一个程序访问另一个程序中的数据,同时环能保证被访问的数据的安全性.2.运行时权限1.Android权限机制详解AndroidManifest.xml文件 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permis

2022-01-20 13:31:14 821

原创 Android持久化技术

1.持久化简介      数据持久化就是指将那些内存中的瞬时数据保存到储存设备中,保证即使在手机或电脑关机的情况下,这些数据仍然不会丢失.保存在内存中的数据是处于瞬时状态的,而保存在存储设备中的数据是处于持久状态的,持久化技术提供了一种机制可以让数据在瞬时状态和持久状态直接进行状态.      Android系统主要提供了3种方式实现数据持久化功能:文件储存,SharedPrefere

2022-01-19 16:39:54 1134

原创 Android广播机制

Android 广播机制1.广播机制简介Android中的广播主要分为标准广播和有序广播.标准广播(Normal broadcasts)是一种完全异步执行的广播,在广播发出之后,所有的 广播接收器几乎都会在同一时刻接收到这条广播消息,因此它们之间没有任何先后顺序可 言。这种广播的效率会比较高,但同时也意味着它是无法被截断的。有序广播(Orderedbroadcasts)则是一种同步执行的广播,在广播发出之后,同一时刻 只会有一个广播接收器能够收到这条广播消息,当这个广播接收器中的逻辑执行完毕后,广

2022-01-18 11:39:16 563

原创 Fragment

Fragment(碎片)1.概述碎片是活动的一部分,使得活动更加的模块化设计。我们可以认为碎片是一种子活动。(是一种可以嵌入在活动中的UI片段,他让程序更加合理和充分地利用大屏幕空间.)2.Fragment的使用方式...

2022-01-17 15:11:33 402

原创 Android-UI开发

Android的UI开发一.常用控件1.TextView

2022-01-16 21:18:56 515

Vue学习笔记——【尚硅谷Vue2.0+Vue3.0全套教程丨vuejs从入门到精通-哔哩哔哩】 https://b23.tv/

Vue学习笔记——【尚硅谷Vue2.0+Vue3.0全套教程丨vuejs从入门到精通-哔哩哔哩】 https://b23.tv/

2022-08-14

基础安卓自学汇总(网课学习)

基础安卓自学汇总(网课学习)

2022-02-15

IO流------------.docx

IO流------------.docx

2021-09-08

空空如也

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

TA关注的人

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