java
文章平均质量分 85
窝在角落里学习
世界很精彩,热爱学习的同时,也要记得享受生活。
展开
-
安装jar包到本地的Maven仓库
安装jar包到本地的Maven仓库有时我们在开发过程中需要引用一些第三方jar包依赖,这些依赖在不能直接从Maven仓库进行下载,此时需要我们进行手动安装。例如,我现在有一个jar包,详情如下:E:\Develop\code\Java\lib\SSDK-Release-4.0.2.0.jar我需要把这个jar手动添加到我的本地Maven仓库中<!-- 本地jar包的存放路径(如上)--><!-- (参数一):下载到本地的jar包的真实存放路径 --><depen原创 2021-08-03 21:53:57 · 17842 阅读 · 17 评论 -
基于Spring Boot的简易版新闻管理系统
大二时期做的一个小课程设计系统--新闻管理系统技术栈:Spring Boot+SSM+Thymeleaf+MySQL+HTML+CSS+Boot Strap压缩包内包含源代码和报告(大约11000字),需要的小伙伴请自行下载。题目:新闻管理系统基本功能要求:1. 可以实现新闻类别信息的增加、删除、修改2. 可以实现新闻基本信息的增加、删除、修改3. 可以实现新闻列表输出4. 可以浏览新闻详细信息5. 可以按关键字查询新闻信息原创 2022-04-09 16:38:39 · 18433 阅读 · 2 评论 -
数据结构与算法——插值查找
插值查找在学习数据结构与算法的过程中,知道了一种查找算法叫“插值查找”,我们可以将其理解为是“二分查找”的改良版。二分查找:mid = (left + right) /2 = left + 1/2 * right插值查找:mid = left + ((target - a[left]) / (a[right] - a[left])) * (right - left) = left * ((a[right] - target) / (a[right] - a[left])) + right原创 2022-03-27 17:11:31 · 20214 阅读 · 1 评论 -
Spring框架(2) -- Spring中的Bean
文章目录Spring框架中的Bean1、Bean的配置2、Bean的作用域2.1、singleton作用域2.2、prototype作用域3、Bean的装配方式3.1、基于XML的装配3.1.1、构造器注入3.1.2、setter注入3.1.3、拓展注入3.2、基于Annotation的装配3.3、自动装配3.3.1、byType3.3.2、byNameSpring框架中的Bean1、Bean的配置Spring类似于一个工厂,生产和管理Spring容器中的Bean。开发中,最常使用XML文件来注册和管原创 2021-08-07 15:43:59 · 16702 阅读 · 0 评论 -
static关键字与代码块
文章目录static关键字与代码块一、static关键字1、静态属性2、静态方法二、代码块1、普通代码块2、构造代码块3、静态代码块static关键字与代码块一、static关键字static是一个用于声明程序结构的关键字,意为“静态的”,此关键字可以用于全局属性和全局方法,主要特点是可以避免对象实例化的限制,在没有实例化对象的时候直接进行此类结构的访问。1、静态属性在一个类中,主要的组成就是属性和方法,而每一个对象都分别拥有各自的属性内容(不同对象的属性保存在堆内存的不同地址中)。如果想要类中原创 2021-05-15 18:11:06 · 16674 阅读 · 0 评论 -
循循渐进详解内部类和Lambda表达式
文章目录内部类 与 Lambda表达式一、内部类2、实例化内部类3、内部类私有化4、内部接口5、静态内部类6、局部内部类7、匿名内部类二、Lambda表达式1、函数式编程思想概述2、Lambda表达式初体验3、Lambda表达式的标准格式4、Lambda表达式的使用前提5、Lambda表达式的练习5.1、无参无返回值的抽象方法5.2、有参无返回值的抽象方法5.3、有参有返回值的抽象方法6、Lambda表达式的省略模式7、Lambda表达式和匿名内部类的区别内部类 与 Lambda表达式一、内部类程序在原创 2021-05-13 22:35:05 · 19277 阅读 · 0 评论 -
详解Java编码与解码以及常见的编码表,灵活处理乱码问题
编码与解码文章目录编码与解码前言一、什么是编码与解码二、常见的编码表1、ASCII2、ISO-8859-13、windows-12524、GB23125、GBK6、GB180307、Big58、编码表汇总9、乱码和兼容9.1、兼容9.2、乱码10、Unicode10.1、UTF-3210.2、UTF-1610.3、UTF-810.4、BOM11、乱码的原因和可逆性11.1、乱码原因11.2、乱码可逆情况11.3、乱码不可逆情况三、Java的char字符四、String类1、编码的方法1.1、getByte原创 2021-05-09 16:59:35 · 29590 阅读 · 0 评论 -
异常的捕获与处理
异常的捕获与处理1、认识异常在程序开发中,程序的编译与运行是两个不同的阶段,编译主要针对的是语法检测,而在程序运行时却有可能出现各种各样的错误,导致程序中断执行,那么这些错误在Java中统一称为异常。在Java中对异常的处理提供了非常方便的操作。那么何为异常呢?异常是指在程序执行时由于程序处理逻辑上的错误导致程序中断的一种指令流。范例:初始异常package edu.blog.test19.exception01;public class ExceptionDemo01 { publi原创 2021-05-03 13:09:10 · 19981 阅读 · 0 评论 -
请别再使用SimpleDateFormat了,用DateTimeFormatter吧!
DateTimeFormatter类之前我们在《听说你还在用Date类表示时间?》)这篇文章中已经有接触过这个类了,使用旧的Date对象时,我们用SimpleDateFormat进行格式化显示。使用新的LocalDateTime或ZonedLocalDateTim时,我们要进行格式化显示,就要使用DateTimeFormatter。我们先来看看SImpleDateFormat类的部分源码,如图 1所示。图 1接着再来看看DateTimeFormatter类的部分源码,如 图2所示。图 2由上原创 2021-05-02 20:56:52 · 16911 阅读 · 0 评论 -
ZonedDateTime类
ZonedDateTime类我们之前在文章《听说你还在用Date类表示时间?》中提到过**“LocalDateTime无法与时间戳进行转换,因为LocalDateTime没有时区,无法确定某一时刻”**。其实LocalDateTime和ZonedDateTime很相似,区别只是LocalDateTime总是表示本地日期和时间,而ZonedDateTime要表示一个带时区的日期和时间。我们可以简单地把ZonedDateTime理解成LocalDateTime加ZoneId。ZoneId是java.time原创 2021-05-02 20:52:52 · 27379 阅读 · 0 评论 -
听说你还在用Date类表示时间?
LocalDateTime类1、Date类与LocalDateTime类之前我们《日期处理类Date类》这篇文章已经聊过了Date类,但是Date类却遭“嫌弃”了,这是为啥呢?我们先来看几个例子。范例1:创建一个表示“此刻”的日期,打印出来:package edu.blog.test07;import java.util.Date;public class DateTestDemo01 { public static void main(String[] args) {原创 2021-04-30 21:05:17 · 15164 阅读 · 1 评论 -
SpringBoot注解介绍
SpringBoot注解介绍一、注解(annotation)列表1.@SpringBootApplication包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让Spring Boot扫描到Configuration类并把它加入到程序上下文。2.@ComponentScan组件扫描,可自动发现和装配一些Bean。3.@Configuration等同于Spring的XML配置文件;使用Jav转载 2021-04-25 18:51:01 · 16373 阅读 · 0 评论 -
Java中的“构造方法” 真的是 “方法” 吗?它有没有返回值?
前言最近,偶然在网上看到有人在问:“Java的构造方法到底有还是没有返回值?”当我看到这个问题的时候,我首先的反应是“Java的构造方法是没有返回值的”,随后我也便在网上搜索了一番,发现确实是持有两种截然不同观点的人都大有人在。于是我便开始想,一个如此基本的问题,应该是大家早都“统一口径”了才对啊,毕竟Java已经是一个拥有24岁高龄的语言了。伴随着这种疑问,我开始了对这个问题的调研。1、调研对于Java基础的问题,最好的方法当然还是去官方的资料中去寻找。于是找到了Java语言规范的文档(Java转载 2021-04-10 21:37:35 · 19987 阅读 · 2 评论 -
Java I/O流详解
Java I/O流1、Java I/O流概述IO就是输入、输出。Java IO类库基于抽象基础类InputStream和OutputStream构建了一套I/O体系,主要解决从数据源读入数据和将数据写入到目的端的问题。我们可以将数据源和目的地理解为IO流的两端。从一种数据源中通过InputStream流对象读入数据到程序内存中流程如图 1-1所示;从程序内存中通过OutputStream流对象写入到目的地的流程图如图 1-2所示。图 1-1图 1-2然后,除了面向字节流的InputSt原创 2021-04-10 20:58:30 · 19631 阅读 · 0 评论 -
日期处理类
日期处理类1、Date 日期处理类日期时重要的程序单元,在Java中如果先获得到当前的日期时间可以直接通过java.lang.Date类来实现,此类的常用操作方法如表1-1所示。表 1-1方法类型描述public Date()构造实例化Date类对象public Date(long date)构造将数字变为Date类对象,long为日期时间数据public long getTime()普通获取日期对象从1970.1.1 00:00:00到现在的毫秒值,类原创 2021-04-01 23:46:23 · 16566 阅读 · 0 评论 -
CharSequence接口
CharSequence接口为了进行字符串操作标准的统一,JDK提供有CharSequence接口标准。从JDK 1.4喀什提供的一个描述字符串标准的接口,常见的子类有3个:String、StringBuffer、StringBuilder,其继承关系如图 1所示。图 1tips:开发中优先考虑String类StringBuffer类与StringBuilder类在日后主要用于频繁修改字符串的操作上,但是在任何开发中,面对字符串的操作,大部分情况下都先考虑String类。只有在频繁修改这一操作中,原创 2021-03-31 19:22:10 · 19744 阅读 · 0 评论 -
还搞不清楚浅拷贝和深拷贝??那就点进来
浅拷贝&深拷贝在我们的日常的学习或者开发中基本上必须进行的一个操作就是对象拷贝,但是其中也存在着一些小细节,今天我们就来梳理一下。1、值类型与引用类型这两个概念的区分,对于理解深、浅拷贝的理解而言是十分重要的。引用Java圣经的一句话:《Java编程思想》:Java中一切都可以视为对象。所以在学习Java的过程中,我们要习惯用引用去操作对象。接着我们来说一下引用类型和值类型引用类型:基本的数据类型(四类八种)四类:整型、浮点型、字符型、布尔型八种:整型4种——b原创 2021-03-30 15:34:06 · 19020 阅读 · 0 评论 -
创建对象的方式
获得对象的方式先定义一个Programmer类:package com.zrt.pojo;public class Programmer { private int id; private String name; private int age = 18; public Programmer(){ } public Programmer(int id, String name) { this.id = i原创 2021-03-30 15:29:56 · 12281 阅读 · 6 评论 -
AutoCloseable接口
AutoCloseable接口随机互联网的不断发展,资源的使用也越发频繁,同时资源也很紧张,为了合理地保护资源必须进行资源释放处理。而在项目开发中,网络服务器和数据库的资源也是相当宝贵的,在每次操作完后一一定要及时释放才能供更多的用户使用。在最初的JDK版本都是在各个程序中提供相应的资源释放操作,直到JDK 1.7版本开始提供AutoCloseable接口,该接口的主要功能是结合异常处理结构在资源操作完成后实现自动释放功能,接口定义如下。public interface AutoCloseable {原创 2021-03-24 13:23:18 · 16281 阅读 · 0 评论 -
序列化&反序列化
对象序列化1、对象序列化概述序列化是一种对象的传输手段,Java有自己的序列化管理机制。对象序列化,就是把一个对象变为二进制的数据流的一种方法,通过对象的序列化可以方便地实现对象的传输或存储,如图 1-1所示。图 1-1一个类的实例化对象想被序列化,则对象所在的类必须实现java.io.Serializable接口。然而此接口并没有提供任何的抽象方法,所以该接口只是一个标识接口(只是表示一种对象可以被序列化的能力)。范例1:定义序列化对象类Student//实现Serializable接口p原创 2021-03-22 22:10:30 · 15103 阅读 · 0 评论 -
Java虚拟机加载Java类的过程
JVM加载Java类的过程JVM加载Java类的过程可分为三步:加载、链接、初始化。1、加载加载的过程就是查找字节流,并根据找到的字节流来创建类的一个过程。Java语言的数据类型可以分为两大类:基本数据类型和引用数据类型。基本数据类型:由JVM预先定义好的,所以也就没有查找字节流这一说法引用数据类型:可分为四种,即类、接口、数组和泛型参数。因为泛型参数在编译过程中会被擦除,所以JVM中就只有前三种。而数组又是由JVM直接生成的,所以只有类和接口需要查找字节流那么JVM是怎么查找到字节流的原创 2021-03-21 16:41:25 · 18238 阅读 · 0 评论 -
我猜,你很少使用枚举
枚举1、定义枚举类 Java语言从设计之初并没有提供枚举的概念,所以开发者不得不使用多例模式来代替枚举的解决方案,直到JDK 1.5开始,Java支持了枚举结构的定义,提供了一个新的关键字:enum,利用此关键字可以实现枚举类型的定义,并且通过枚举可以简化多例模式设计的实现。public enum UserRole { // 系统管理员 ROLE_ROOT_ADMIN, // 订单管理员 ROLE_ORDER_ADMIN, // 普通用户 ROLE_原创 2021-03-20 16:30:59 · 18025 阅读 · 0 评论 -
大数类
大数类1.大数类基本概述Java在设计的时候就考虑到了一些特殊的应用环境,当一个数字非常大的时候,是无法用基本数据类型接收的,所以专门设计了大数字处理类。在早期开发中如果遇到大数字的时候往往会使用String类进行接收,之后使用拆分的方式进行计算。但是,这一系列的操作过于繁琐,所以为了解决这样的难题,在java.lang.Math包中提供了大数字的操作类:BigInteger(整数)、BigDecimal(浮点数),这两个类都是Number子类。其继承图如下:2.BigInteger类的常用方法原创 2021-03-19 22:09:11 · 17864 阅读 · 0 评论 -
String类的常见问题
String类的常见面试题1.判定定义为String类型的两个对象是否相等(1)public class StringDemo01 { public static void main(String[] args) { String string01 = "zrt"; String string02 = "zrt"; System.out.println(string01 == string02); //true System.ou原创 2021-03-17 22:29:59 · 18236 阅读 · 0 评论 -
位运算
位运算位运算是计算机中的基础运算单元,Java为了提高程序的运行性能,便可直接通过位运算符进行计算操作。Java中提供的位运算符由擦欧总书和位运算符所组成,可以实现对数值类型的二进制数进行运算(在Java中所有数据都是以二进制数据的形式进行运算的),在位运算中提供有两类运算符:逻辑运算符(~、&、|、^)和移位运算符(>>、<<、>>>),如下所示:逻辑运算符描述&按位“与”|按位”或“^异或(相同为0,不原创 2021-03-13 11:31:11 · 18230 阅读 · 0 评论