
Java基础
文章平均质量分 64
Java基础知识点讲解,包含Java基础、JVM、多线程等
longHARDEN
这个作者很懒,什么都没留下…
展开
-
SpringBoot获取前台传递对象的方法
SpringBoot获取前台传递对象的方法SpringBoot获取前台传递对象并不容易,稍有错误就会报错。这里提供一个大致模板方法:前台代码:let student = { id: 1, name: 'tom', email: '123@qq.com', age: 15};$('#pojoTest').click(function () { $.ajax({ url: getContextPath() + `/test/test3`, type: "post"原创 2022-04-28 17:29:33 · 2658 阅读 · 1 评论 -
Lombok总结
lombok概念Lombok是一款Java开发插件,可以通过它定义的注解来精简冗长和繁琐的代码,主要针对简单的Java模型对象(POJO)。Lombok针对这些内容的处理是在编译期,而不是通过反射机制,这样的好处是并不会降低系统的性能。优缺点缺点:绑定队友代码可读性,可调试性低我们想要知道某个类中的某个属性的getter方法都被哪些类引用的话,就没那么简单了。优点:简化开发,代码简洁动态生成getter/setter常用注解@Data提供getter/sette原创 2021-10-21 08:46:07 · 201 阅读 · 0 评论 -
单链表反转(Java语言实现)
单链表反转1、递归反转递归反转法在反转当前节点之前先反转后续节点。这样从头结点开始,层层深入直到尾结点才开始反转指针域的指向。简单的说就是从尾结点开始,public static Node reverse(Node head) { if (head == null || head.next == null) { return head; } Node pre = reverse(head.next); head.next.next = head; head.next = n原创 2021-09-21 09:32:48 · 2548 阅读 · 0 评论 -
lombok学习笔记
lombok应用概念lombok:lombok是一款Java开发插件,可以通过它定义的注解来精简冗长和繁琐的代码,主要针对简单的Java模型对象(POJO)。好处节省大量重复工作Lombok针对这些内容的处理是在编译期,而不是通过反射机制,这样的好处是并不会降低系统的性能。RetentionPolicy.SOURCElombok使用步骤在IDEA中安装lombok插件添加lombok的maven坐标<dependency> <groupId&g原创 2021-09-20 14:49:03 · 168 阅读 · 0 评论 -
数据结构与算法系列笔记
学习数据结构与算法已经一段时间了,在此记录总结一下自己的学习笔记。既是对以往知识的总结,也是记录笔记,以便以后的查找。笔记内容来自自己的学习总结,包括视频教程,博客教程,书籍总结等。一、算法概述二:排序三、线性表四、符号表五、树六、堆,优先队列七、并查集八、图九、动态规划十、二分查找十一、位运算十二、贪心算法...原创 2021-09-20 14:33:25 · 98 阅读 · 0 评论 -
数据结构与算法笔记系列一:算法概述
一、数据结构与算法概述1、数据结构数据结构:用来组织和存储数据的集合数据结构可分为逻辑结构和物理结构。逻辑结构从数据与数据之间的关系来划分,物理结构从计算机存储角度来分类(又称存储结构)。逻辑结构:集合结构、线性结构、树形结构、图形结构物理结构(存储结构):顺序存储结构、链式存储结构2、算法算法:算法即分步骤解决问题的过程。二、算法分析衡量算法优劣的标准:时间、空间1、算法的时间复杂度分析分析一个算法的运行时间,最重要的就是把核心操作的次数和输入规模关联起来1.1 函数渐进增长原创 2021-09-19 15:48:33 · 384 阅读 · 0 评论 -
微服务概念详解
目录 前言 一、微服务介绍 1.什么是微服务 2. 微服务由来 3. 为什么需要微服务? 3.1 早期的单体架构带来的问题 3.2 微服务与单体架构区别 3.3 微服务与SOA区别 4. 微服务本质 5. 什么样的项目适合微服务 6. 微服务折分与设计 6.1 微服务设计原则 7. 微服务优势与缺点 7.1 特性 7.2 特点 7.3 缺点 8. 微服务开发框架 9. Sprin...转载 2021-09-03 17:09:46 · 3463 阅读 · 0 评论 -
数据结构与算法系列笔记二:排序
文章目录1、简单排序1.1 冒泡排序(Bubble Sort)1.2 选择排序(Selection Sort)1.3 插入排序(Insertion Sort)2、高级排序2.1 希尔排序(Shell)2.2 归并排序(Merge)2.3 快速排序(Quick)3、排序稳定性这里列出常见的六种排序算法简单排序冒泡排序选择排序插入排序高级排序希尔排序归并排序快速排序1、简单排序1.1 冒泡排序(Bubble Sort)排序原理:比较相邻的元素。如果前一个元素比后一个元原创 2021-08-06 14:47:11 · 417 阅读 · 0 评论 -
什么是hashCode 以及 hashCode()与equals()的联系
1、什么是hashCode: hashCode就是对象的散列码,是根据对象的某些信息推导出的一个整数值,默认情况下表示是对象的存储地址。通过散列码,可以提高检索的效率,主要用于在散列存储结构中快速确定对象的存储地址,如Hashtable、hashMap中。 为什么说hashcode可以提高检索效率呢?我们先看一个例子,如果想判断一个集合是否包含某个对象,最简单的做法是怎样的呢?逐一取出集合中的每个元素与要查找的...转载 2021-08-04 14:04:05 · 214 阅读 · 0 评论 -
JAVA读取NC文件的工具包
文章目录1、NC文件netcdf文件的内容2、netcdf包3、NcUtil1、NC文件NetCDF全称为network Common Data Format,中文译法为“网络通用数据格式”,对程序员来说,它和zip、jpeg、bmp文件格式类似,都是一种文件格式的标准。netcdf文件开始的目的是用于存储气象科学中的数据,现在已经成为许多数据采集软件的生成文件的格式。从数学上来说,netcdf存储的数据就是一个多自变量的单值函数。用公式来说就是f(x,y,z,…)=value, 函数的自变量x,原创 2021-04-30 21:23:06 · 4176 阅读 · 22 评论 -
Java读取resources目录下的properties配置文件
在Java中,有时候需要一些固定的配置文件,如连接数据库的druid.properties,等等需要读取在resources下的配置文件。读取配置文件有固定的的步骤。举例:application.propertiesrootDir=D:\\abc想要通过Java读取properties文件夹下的东西。demo.javapublic Demo{ private static String rootDir; //数据根目录 //一般将加载properties写在静态代码块中,方便在原创 2021-04-30 21:08:18 · 3050 阅读 · 1 评论 -
Java 枚举(enum)详解
JDK1.5引入了新的类型——枚举。在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便。 大师兄我【大师兄】又加上自己的理解,来帮助各位理解一下。 用法一:常量 在JDK1.5 之前,我们定义常量都是: public static final.... 。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。&...转载 2021-04-17 11:12:35 · 287 阅读 · 0 评论 -
java操作MySQL封装工具类JDBCUtils
工具类的封装:以数据库的操作为例需导入jar包:mysql-connection-mysql,druid,JDBCTemplate,redis(可选)如果是maven项目,导入jar包如下:pom.xml<!--连接MySQL数据库--> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>原创 2021-03-29 21:50:18 · 1109 阅读 · 0 评论 -
正则表达式学习笔记
文章目录学习资源正则表达式正则表达式(REGEX)(Regular Express)一、概念二、元字符编程语言中的正则表达式JavaScriptJavaC#正则表达式的常见用法ip地址邮箱地址提取标签中的内容:以title为例html注释网址urlQQ号码18位身份证学习资源书籍:正则表达式必知必会正则表达式正则表达式(REGEX)(Regular Express)一、概念正则表达式就是由普通字符以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表原创 2021-03-29 20:18:23 · 445 阅读 · 0 评论 -
Servlet_HTTP_JSP学习笔记
文章目录学习资源TomcatTomcat:web服务器软件静态项目和动态项目将Tomcat集成到IDEA中,并且创建JavaEE的项目,部署项目Servlet快速入门Servlet执行原理Servlet中的生命周期Servlet注解配置IDEA与Tomcat的相关配置Servlet体系结构Servlet相关配置HTTP请求消息数据格式RequestBeanUtils工具类响应消息数据格式ResponeServletContext对象会话技术:Cookie SessionCookieSessionJSPMVC原创 2021-03-24 09:59:00 · 201 阅读 · 0 评论 -
IDEA2020.2创建Maven web项目,并配置Tomcat服务器
IDEA2020.2创建Maven web项目,并配置Tomcat服务器环境IDEA2020.2 Tomcat9(不建议10,后期实现Servlet接口会出现问题)1、新建Java Enterprise,jdk1.8,Build Tool:Maven Test Runner:JUnit2、创建web工程项目结构3、配置Tomcat注意:只能选择Tomcat server --> Local,不能选择TomEE Server4、设置Tomcatdeployment:部署项目原创 2021-03-19 21:42:18 · 1273 阅读 · 0 评论 -
Java数据库连接池学习笔记:C3P0、Druid;Spring JDBC
数据库连接池享元模式connection是Java和数据库两个平行系统的桥梁桥梁构建不易,成本很高,单次使用成本昂贵运用共享技术来实现数据库连接池(享元模式)降低系统中数据库连接connection对象的数量降低数据库服务器的连接响应速度提高Connection获取的响应速度常用的数据库连接池实现技术C3P0Druid(阿里)注意:连接池对象仍然使用完连接后仍然要释放资源eg:C3P0两种使用方式硬编码方式(不推荐)配置文件名称:c3p0.propertie原创 2021-01-07 19:13:19 · 262 阅读 · 0 评论 -
JDBC学习笔记
JDBC一、JDBC基本操作JDBC:官方定义的一套操作所有关系型数据库的接口。各个数据库厂商去实现这套接口,提供接口的实现类jar包。Java连接数据库操作步骤构建连接注册驱动,寻找材质,class.forName();建立连接执行操作Statement(执行者)ResultSet(结果集)释放连接connection.close();StatementStatement执行者类使用executeQuery()执行select语句,返回结果放在Resu原创 2021-01-07 19:10:47 · 214 阅读 · 0 评论 -
Java基础学习笔记(三)_Java核心技术(高阶)
本篇文章的学习资源来自Java学习视频教程:Java核心技术(高阶)_华东师范大学_中国大学MOOC(慕课)本篇文章的学习笔记即是对Java核心技术课程的总结,也是对自己学习的总结文章目录Java核心技术(高阶):深层原理第一章 Java语法糖1、语法糖(Syntax sugar)和环境设置2、语法糖(1)foreach和枚举3、语法糖(2)不定项参数和静态导入4、语法糖(3)自动拆箱和装箱、多异常并列、数值类型和优化5、语法糖(4)接口方法6、语法糖(5)try-with-resource和Resou原创 2020-12-31 10:58:05 · 2114 阅读 · 0 评论 -
Java基础学习笔记(二)_Java核心技术(进阶)
本篇文章的学习资源来自Java学习视频教程:Java核心技术(进阶)_华东师范大学_中国大学MOOC(慕课)本篇文章的学习笔记即是对Java核心技术课程的总结,也是对自己学习的总结文章目录Java核心技术(进阶)第一章:Maven当前主要的Java构建工具Maven基本概念:Maven安装与配置Maven本地仓库配置Maven工程结构常见Maven命令:(与项目构建生命周期相关)Maven坐标(gav)Maven开发流程第二章:单元测试和JUnit1、单元测试2、JUnit :Java单元测试框架第三章原创 2020-12-26 19:52:23 · 1649 阅读 · 0 评论 -
Java基础学习笔记(一)_Java核心技术(基础)
本篇文章的学习资源来自Java入门视频教程:Java核心技术_华东师范大学_中国大学MOOC(慕课)本篇文章的学习笔记即是对Java核心技术课程的总结,也是对自己学习的总结文章目录第一章:Java概述Java简介Java三大分支:Java环境搭建Java从编写到运行第二章:Java类基础知识一、java类结构二、基本类型和运算符三、选择和循环结构四、自定义函数第三章:面向对象和类第四章:继承、接口和抽象类继承抽象类和接口转型、多态和契约设计第五章:static、final和常量设计1、static2、单原创 2020-12-26 19:44:21 · 361 阅读 · 0 评论 -
Java进行冒泡排序并打印输出
Java产生随机数组,进行冒泡排序并打印输出public static void main(String[] args) { Random random = new Random(); byte[] arr=new byte[10]; random.nextBytes(arr); System.out.println("从小到大排序前:"); for (int i = 0; i < arr.length; i++) { int temp = i原创 2020-12-17 21:10:57 · 1069 阅读 · 0 评论 -
Java对图形文件的解析(包括普通图片文件、验证码、统计图、条形码和二维码)
Java对图形文件的解析(包括普通图片文件、验证码、统计图、条形码和二维码)其中,关于统计图、条形码和二维码,jdk本身并没有相关操作的工具包,大多通过在Maven repository中添加第三方库来实现生成与解析1、图形图像及解析图形图像基础概念图形:Graph矢量图,根据几何特性来画的,比如点、直线、弧线等图像:Image由像素点组成格式:jpg,png,bmp,gif,svg,wmf,tiff等Java图形图像关键类图形:Graphjava.awt包(Jav原创 2020-12-13 15:48:40 · 1373 阅读 · 0 评论 -
Java对XML、JSON的操作
Java对XML、JSON的操作文章目录Java对XML、JSON的操作XMLXML简介XML组成元素XML解析XML解析方法JSONJSON简介java的JSON处理JSON主要用途org.json:GSON:(从代码上看,GSON功能更强大,使用更方便,推荐使用GSON解析JSON)XML与JSON的比较XMLXML简介XML:可扩展标记语言纯文本表示,跨系统/平台/语言严格区分大小写XML组成元素1、文档声明2、元素=标签3、属性4、注释5、CDATA区、特殊字符<!原创 2020-12-13 11:28:57 · 205 阅读 · 0 评论 -
Java中正则表达式的简单应用
Java中正则表达式的简单应用正则表达式(REGEX)(Regular Express)一、概念作用**检索:**通过正则表达式,从字符串中获取我们想要的部分**匹配:**判断给定的字符串是否符合正则表达式的过滤逻辑正则表达式就是由普通字符以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式用来描述字符串的特征。正则表达式是脱离语言而存在的,其表达式的写法脱离语言存在正则表达式是非常复杂的,不必过于详细的了解正则表达式的每个字原创 2020-12-13 11:14:09 · 300 阅读 · 0 评论 -
Java中Maven基础详解(包括maven工作原理、安装配置、IDEA建立Maven工程)
Java中Maven基础详解(包括maven工作原理、安装配置、IDEA建立Maven工程)文章目录Java中Maven基础详解(包括maven工作原理、安装配置、IDEA建立Maven工程)当前主要的Java构建工具Maven基本概念:1、项目构建生命周期:2、项目中jar包管理3、Maven项目信息管理Maven安装与配置配置Maven本地仓库配置Maven工程结构**pom.xml**常见Maven命令:(与项目构建生命周期相关)Maven坐标(gav)Maven开发流程IDEA建立Maven工程(原创 2020-12-13 11:08:39 · 7213 阅读 · 11 评论 -
Java对txt文件、二进制文件的基本读写
Java对txt文件、二进制文件的基本读写Java io包概述Java读写文件,只能以(数据)流的形式进行读写java.io流中包括字节流、字符流、其他流(System)、文件处理java.io包中节点类:直接对文件进行读写包装类转化类:字节/字符/数据类型的转化类装饰类:装饰节点类节点类:直接操作文件类InputStream.OutputStream(字节)FileInputStream,FileOutputStreamReader,Writer(字符)F原创 2020-12-13 10:21:47 · 1466 阅读 · 0 评论 -
Java数组转List的三种方法及比较
Java数组转List的三种方法及比较一、最常见方式(未必最佳)二、副本转为List后,支持增删改查的方式三、通过集合工具类Collections.addAll9)方法(最高效)一、最常见方式(未必最佳)通过Arrays.asList(strArray)方式,将列表转换为列表后,不能对列表增删,只能查改,否则抛异常。关键代码:List list = Arrays.asList(strArray);原因:Arrays.asList(strArray)返回值是java.util.Arr原创 2020-12-13 10:12:23 · 463 阅读 · 0 评论 -
Java中List和ArrayList的区别及使用
Java中List和ArrayList的区别List是一个接口,而ArrayList是List接口的一个实现类ArrayList类继承并实现了List接口因此,List接口不能创建实例对象,但是可以为List接口创建一个指向自己的对象引用。而ArrayList实现类的实例对象就在这充当指向List接口的对象引用。List<String> list = new ArrayList<>();这体现了面向对象的多态性List list = new List();//报错原创 2020-12-13 10:11:45 · 13417 阅读 · 3 评论 -
Java基本数据类型与包装类的区别(栈、堆、常量池)
Java基本数据类型与包装类的区别(栈、堆、常量池)基本数据类型基本数据类型(原始数据类型):包括八种基本数据类型:基本数据类型(全部小写)取值范围所占字节长度booleantrue/false理论上占用1bit,1/8字节,实际处理按1byte处理byte-128~1271字节short-32768~327572字节int-21474836482147483647(-2^312^31-1)4字节long-263~263-1(很大就对了)原创 2020-12-13 10:08:35 · 412 阅读 · 0 评论