一. 测开之Java(自用)
文章平均质量分 78
Java基础知识点,简单练习,遇到的问题...的小汇总,以便于日后查询使用
出处不详,经久不息
学习中......
展开
-
Java的包装类(重点:Integer类的装箱和拆箱)
目录1. Java的8种基本数据类型,以及对应包装类型2. 什么是装箱和拆箱2.1 装箱和拆箱2.2 自动装箱和自动拆箱3. 包装类Integer使用比较运算符== 和 equals()方法时的注意事项3.1 两个包装类Integer进行 == 运算3.2两个包装类Integer进行 equals() 运算3.2基本类型和包装类进行 == 运算4. 其他包装类使用equals()方法时的注意事项之前在做Java语法汇总时,提到过Java包装类。这里单独起一篇文..原创 2022-05-19 15:52:17 · 1070 阅读 · 0 评论 -
Java常用类(七):Common IO 工具库
目录1. 什么是Common IO?2. Common IO 六个部分的内容3. Common IO的常用工具类3.1 IOUtils3.2 FileUtils3.3 FilenameUtils3.4 FileSystemUtils3.5 FileFilterUtils3.6 EndianUtils3.7 SwappedDataInputStream1. 什么是Common IO?Common IO 是一个工具库,用来帮助开发IO功能。2. Com原创 2022-04-14 16:31:09 · 1545 阅读 · 0 评论 -
Java知识点:Specification实现分页动态查询
目录1. 什么是Specification接口?2. Specification接口中定义的方法3. 方法名称和SQL对应关系4. Specification使用示例4.1 首先,对应的Repository需要实现JpaSpecificationExecutor接口4.2 然后,在业务类service中,分页查询的方法如下1. 什么是Specification接口?Spring Data JPA中可以通过JpaSpecificationExecutor接口实现动态/分页查原创 2022-03-15 11:50:47 · 3108 阅读 · 0 评论 -
Java知识点:正则表达式
目录1. 概念2. 用途3. 元字符4. 预定义字符类5. 量词6. 常用类:Pattern,Matcher7. 捕获组group()8. 非捕获组9. 贪婪匹配与非贪婪匹配10. 补充1. 概念正则表达式是一种可以用于模式匹配和替换的规范。一个正则表达式就是由普通字符,以及特殊字符(12个元字符)组成的文字模式。用以描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模版,将某个字符模式与所搜索的字符串进行匹配。2.原创 2022-03-10 14:42:47 · 622 阅读 · 0 评论 -
TestNG的一些常用注解
目录1. 测试用例相关的注解1.1 @BeforeSuite1.2 @AfterSuite1.3 @BeforeClass1.4 @AfterClass1.5 @BeforeTest1.6 @AfterTest1.7 @BeforeGroups1.8 @AfterGroups1.9 @BeforeMethod1.10 @AfterMethod1.11 @Test1.12 @Parameters1.13 @DataProvider1.14 @Fact原创 2022-03-02 15:56:59 · 1735 阅读 · 0 评论 -
JUnit4的一些常用注解
目录1. JUnit4.x 测试类相关的注解1.1 @Before1.2@After1.3@BeforeClass1.4@AfterClass1.5@Test(timeout = xxx)1.6@Test(expected = Exception.class)1.7@Ignore2. 打包测试Suite相关的注解2.1 @RunWith(Suite.class)2.2 @Suite.SuiteClasses(...{xx.calss, xx.cal...原创 2022-03-02 14:37:13 · 3344 阅读 · 0 评论 -
Spring中的一些常用注解
目录1. @Autowired2. @Qualifier3. @Resource4. @Component5. @Value6. @Bean7. 声明bean的几个注解7.1 @Service7.2 @Repository7.3 Controller8. Java配置类的相关注解8.1 @Configuration8.2 @Bean8.3 @ComponentScan8.4 @WishlyConfiguration9. 切面AOP的相关注解原创 2022-03-02 12:20:26 · 933 阅读 · 1 评论 -
Swagger2版本和SpringBoot版本不匹配,报错: Failed to start bean ‘documentationPluginsBootstrapper‘
今天在新建SpringBoot项目时,使用到了Swagger2。启动项目后报如下图错误。排查了一下原因,看到有人说可能是Swagger2和SpringBoot的版本不兼容,SpringBoot的版本太高了。因此选用了比较低版本的SpringBoot,问题解决。...原创 2022-02-28 10:38:38 · 1094 阅读 · 0 评论 -
Java 六种常见的设计模式:单例,工厂,策略,模板方法,适配器,代理
目录1. 单例模式 SingletonPattern1.1 什么是单例模式1.2 简单示例代码2. 工厂模式 FactoryMethod2.1 什么是工厂模式2.2 简单示例代码3. 策略模式3.1 什么是策略模式3.2 示例代码4. 模板方法模式4.1 什么是模板方法模式4.2 示例代码5. 适配器模式5.1 什么是适配器模式5.2 示例代码6. 代理模式6.1 什么是代理模式6.2 示例代码【写在前面】此文是学习笔记。今天复原创 2022-02-11 15:34:40 · 1991 阅读 · 2 评论 -
Java练习(二十七):用两个栈来模拟队列
1. 要求:借助两个栈来实现一个队列的功能,完成队列的Push和Pop操作。 输出的数组顺序,跟输入进程序的数组顺序一致。2. 示例代码://借助两个栈来实现一个队列的功能,完成队列的Push和Pop操作。 输出的数组顺序,跟输入进程序的数组顺序一致。package TwoStackDemo; import java.util.Stack; public class TwoStackAsQueue { static Stack<Integer> stac原创 2022-02-08 16:13:14 · 331 阅读 · 0 评论 -
Java练习(二十六):dom4j解析XML文件, 创建XML文件
目录1. Dom4j知识点1.1 什么是Dom4j1.2 API接口1.3 常见API2. 示例一:用List方式来解析xml2.1 .xml文件2.2Dom4jDemo1类,实现用List的方式解析xml3.示例二:使用Iterator迭代器的方式来解析xml3.1 .xml文件3.2Dom4jDemo2类,实现用Iterator的方式解析xml4.示例三:创建xml文件,并往文件中写入内容4.1 .xml文件4.2Dom4jDemo3类,创...原创 2022-01-26 17:27:10 · 697 阅读 · 0 评论 -
Java练习(二十五):两数相除,求百分比(延伸:Java格式化数字 NumberFormat)
【写在前面】强烈推荐此文:java格式化数字 NumberFormat及DecimalFormat引用:Java对文字和数字的格式化,是有一个公共的父类的Format。NumberFormat和DecimalFormat都是它的子类,关于数字的。DateFormat和SimpleDateFormat也是它的子类,关于文字的。1. 要求:两数相除,求百分比2. 示例代码package com.my.demo;import java.text.NumberForma原创 2022-01-25 12:04:30 · 2188 阅读 · 0 评论 -
SpringBoot项目中常用的几个注解
目录1. @EnableJpaAuditing2. lombok标签之 @Data @AllArgsConstructor @NoArgsConstructor @Builder3.@ApiModel,@ApiModelProperty1. @EnableJpaAuditing项目中每条数据在创建或修改时,如果都需要人为的手动记录它创建人,创建时间,修改人,修改时间,代码冗余且显得很不友好。Spring data JPA 为我们提供了审计功能。Spring JPA中,支持在字段或..原创 2022-01-04 17:08:20 · 1056 阅读 · 1 评论 -
在IDEA中,如何将Java程序打包成jar包
如何在IDEA中将Java程序打包成jar包?具体看下方图示。过程比较简单,直接看图操作即可,所以这里不赘述。原创 2021-12-11 15:05:56 · 1963 阅读 · 0 评论 -
Eclipse和IDEA中,快速生成getter和setter方法的小技巧
目录1.Eclipse中,快速生成getter和setter方法2.IDEA中,快速生成getter和setter方法1.Eclipse中,快速生成getter和setter方法2.IDEA中,快速生成getter和setter方法原创 2021-11-19 15:05:51 · 588 阅读 · 0 评论 -
Java的广度优先遍历和深度优先遍历
目录1. 广度优先遍历1.1 原理1.2 代码示例2. 深度优先遍历2.1 原理1.2 代码示例【写在前面】今天对广度优先遍历和深度优先遍历做了一些了解和汇总,这里做个学习笔记,便于后续深入学习。知识点和思路,参考文章如链接,可直接看原博文:树的广度优先遍历和深度优先遍历,Java实现二叉树的深度优先遍历和广度优先遍历算法示例1. 广度优先遍历1.1 原理英文缩写为BFS,即Breadth FirstSearch。是以广度为优先的,一层一层搜索下去的,就像原创 2021-11-12 14:53:24 · 1937 阅读 · 0 评论 -
Java几种遍历集合的方法(原理,复杂度,适用场合)
目录1. 顺序存储和链式存储1.1顺序存储1.2链式存储1.3 区别2. Java常用的遍历方式2.1 for循环遍历2.2 Iterator迭代器2.3foreach循环3. 实际使用中的最佳推荐【写在前面】今天对集合遍历做了一些了解和汇总,这里做个学习笔记,便于后续深入学习。非原创,主要参考此文,可直接看原博文:Java遍历集合的几种方法分析1. 顺序存储和链式存储1.1顺序存储是存储结构类型中的一种,该结构是把逻辑上相邻的结点存储...原创 2021-11-12 10:59:06 · 2858 阅读 · 0 评论 -
Java几种常见的排序算法(复杂度,算法简介,代码实现)
写在前面:今天,参考了下方文章,自己手动写了几种常见排序算法的代码。此文非常清晰明了,推荐:Java的几种常见排序算法 - 小不点丶 - 博客园 (cnblogs.com)1. 几种常见的排序算法的复杂度图片来自上述文章2. 冒泡排序2.1 什么是冒泡排序?核心思想是:从头开始让相邻的两个元素进行比较,符合条件就交换位置,这样就可以把最大值或者最小值放到数组的最后面了;接着再从头开始两两比较交换,直到把最大值或者最小值放到数组的倒数第二位(即不需要与最后一位.原创 2021-10-28 16:28:33 · 1343 阅读 · 0 评论 -
Java语法汇总二(NK)(更新至2021.10.29)
汇总一链接:(2条消息) Java语法汇总一(NK)(更新至2021.10.25)_sulia1234567890的博客-CSDN博客https://blog.csdn.net/sulia1234567890/article/details/12081664041. 什么是web容器?(1)web容器是一种服务程序,在服务器的一个端口就有一个提供相应服务的程序,而这个程序就是处理从客户端发出的请求,如Java中的tomcat容器,ASP的IIS或PWS都是这样的容器。一个服务器可以有多个容器。原创 2021-10-26 10:51:03 · 375 阅读 · 1 评论 -
如何在IDEA中添加jar包到 External Libraries 库
1. File --> Project Structure2. Project Structure --> Libraries, 添加Java库,然后在本地选择要添加到该库的jar包,重命名库为lib3. Project Structure --> Modules, 添加Libraries, 选择上面新增的lib库。4. 回到IDEA主页面,可以看到项目的 External Libraries 目录下此时已经包含了上面添加的lib库。即导入jar包到...原创 2021-10-21 10:42:08 · 24017 阅读 · 15 评论 -
Java练习(二十四):JUnite4的简单使用流程(IDEA中)
目录1. 什么是JUnit4?2. IDEA中,JUnit4的环境搭建3. JUnit4用例的创建和运行3.1 根据实际需求编写JUnite测试用例3.2 自动生成测试类(模板,带@),非手动3.3 运行,查看结果1. 什么是JUnit4?略2. IDEA中,JUnit4的环境搭建3. JUnit4用例的创建和运行3.1 根据实际需求编写JUnite测试用例原始类,待测试的类3.2 自动生成测试类(模板,带@),非手动选中类名 -...原创 2021-10-20 18:06:55 · 182 阅读 · 0 评论 -
Java练习(二十三):TestNG的简单使用流程(IDEA中)
目录1. 什么是TestNG?2. IDEA中,TestNG的环境搭建3. TestNG用例的创建和运行3.1 根据实际需求编写多个TestNG测试用例3.2 添加TestNG的配置:Add Configuration... -> Add New Configuration -> TestNG3.3 运行,查看结果4. xml配置文件1. 什么是TestNG?略2. IDEA中,TestNG的环境搭建3. TestNG用例的创建和运行..原创 2021-10-20 17:26:22 · 565 阅读 · 0 评论 -
Java语法汇总一(NK)(更新至2021.10.25)
1. 初始化过程(1)父类中的静态成员变量和静态代码块(2)子类中的静态成员变量和静态代码块(3)父类的普通成员变量和代码块,再执行父类的构造方法(4)子类的普通成员变量和代码块,再执行子类的构造方法2. 类实现接口的原则(1)必须实现接口中的所有方法方法的名字+参数的个数和类型+返回值类型都必须与接口中的完全一致。(2)接口实现类相当于子类,子类的访问权限不能小于父类接口中所有方法默认是public,所以实现类的修饰符(访问权限)必须是public。3...原创 2021-10-17 23:05:49 · 702 阅读 · 0 评论 -
Java常用类(六):FilenameUtils类
1. 什么是FilenameUtils类?1.1 Common IO 是一个工具库,用来帮助开发IO功能.包含了:IOUtils的使用,FileUtils的使用,FilenameUtils的使用1.2 添加maven依赖:<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version&g...原创 2021-09-30 17:23:56 · 8300 阅读 · 0 评论 -
Java常用类(五):FileFilterUtils 类
1. 什么是Filters过滤器?1.1基本功能过滤器(1)类型:FileFileFilter 仅接受文件DirectoryFilter 仅接受目录(2)名称:PrefixFileFilter 基于前缀(不带路径的文件名)SuffixFileFilter 基于后缀(不带路径的文件名)NameFileFilter 基于文件名称(不带路径的文件名)WildcardFileFilter 基于...原创 2021-09-30 17:19:45 · 2880 阅读 · 0 评论 -
Java常用类(四):IOUtils类
1. 什么是IOUtils类?1.1 Common IO 是一个工具库,用来帮助开发IO功能.包含了:IOUtils的使用,FileUtils的使用,FilenameUtils的使用1.2 添加maven依赖:<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.6&...原创 2021-09-30 17:11:57 · 13919 阅读 · 0 评论 -
Java常用类(三):FileUtils类
FileUtils类常用方法:1.复制文件夹FileUtils.copyDirectory(File srcDir, File destDir) // 复制文件夹(文件夹里面的文件内容也会复制)FileUtils.copyDirectory(File srcDir, File destDir, FileFilter filter) // 复制文件夹,带有文件过滤功能FileUtils.copyDirectoryToDirectory(File srcDir, File destDir) /.原创 2021-09-30 16:59:28 · 20363 阅读 · 0 评论 -
Java常用类(二):StringUtils类
1. 什么是StringUtils类?org.apache.commons.lang.StringUtils类StringUtils 方法的操作对象是 java.lang.String 类型的对象,是JDK 提供的String类型操作方法的补充。StringUtils 是null安全的,即如果输入参数 String 为 null 则不会抛出 NullPointerException ,而是做了相应处理,例如,如果输入为 null 则返回也是 null 等。2.StringUtils类的...原创 2021-09-30 16:20:53 · 13804 阅读 · 0 评论 -
Java练习(二十二):TestNG的简单使用流程(Eclipse中)
目录1. 什么是TestNG?2. Eclipse中,TestNG的环境搭建3. TestNG用例的创建和运行3.1 创建一个TestNG用例3.2 根据实际需求编写TestNG用例,示例代码如下3.3 运行结果4. xml配置文件(TestNG的打包测试)4.1 TestNG如何实现打包测试?4.2 xml配置文件示例4.3在配置好的xml文件中,右键选择TestNG Suite,完成多用例的执行4.4 补充:xml配置文件中常用的标签1. 什么是Test.原创 2021-09-30 12:37:58 · 1989 阅读 · 0 评论 -
Java练习(二十一):JUnite4的简单使用流程(Eclipse中)
目录1. 思考:作为测试人员,通常我们拿到一些类/ar包后,要进行单元测试,运用什么框架?如何构建?2. JUnit4介绍2.1 概述2.2 特性3. JUnit4 环境搭建4. 示例工程4.1 创建一个带运行的常规类(或者从开发那儿拿到的待测jar包之类)4.2 创建一个Junit Case4.3根据实际需求编写Junit Case类4.4 运行测试类(单个)5. 打包测试Suite5.1 为什么需要打包测试?5.2示例工程5.2.1 需要被测试..原创 2021-09-29 17:48:33 · 824 阅读 · 0 评论 -
Java常用类(一):HttpClient4.2 Fluent API 的简单了解
1. 什么是HttpClient1.1 定义HttpClient是Apache Jakarta Common下的子项目,用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议。HttpClient已经应用在很多的项目中,比如Apache Jakarta上很著名的另外两个开源项目Cactus和HTMLUnit都使用了HttpClient。1.2 基本功能实现了所有 HTTP 的方法(GET、POST、PUT、HEAD、DELETE、...原创 2021-09-29 11:16:45 · 1316 阅读 · 0 评论 -
Java练习(二十):编写代码,模仿一个简易的mockserver,支持post ,get,delete,put ,patch等方法
目录1. 要求2. 示例工程2.1 实体类(Entity): User.java, UrlInfo.java2.2 DAO接口(Repository): UserRepository.java, UrlInfoRepository.java2.3 控制类Controller:UserController.java2.4 启动类:DemoApplication.java2.5. 资源文件:application.yaml2.6. Maven配置文件: pom.xml1.原创 2021-09-27 16:54:31 · 442 阅读 · 0 评论 -
Java练习(十九):编写代码,实现AOP的@Around操作 (两种写法)
目录1. 要求2. 涉及的知识点3.示例工程 (第一种方式)3.1 maven的配置文件: pom.xml3.2 bean配置文件: bean_aop_around.xml3.3 接口和类的代码3.3.1 接口:UserService3.3.2 实现接口的类:UserServiceImpl3.3.3 AroundLog类:AroundLog3.4 测试类4. 示例代码(第二种方式)1. 要求之前完成了通过@Before和@After的方式,完成了...原创 2021-09-26 18:14:16 · 5879 阅读 · 0 评论 -
Java练习(十八):编写代码,简单模拟Spring容器管理实例
目录1. 要求2. 运用到的知识点2.1spring的实例管理思想2.2dom4j解析XML文件3. 示例代码3.1 在IDEA中创建Maven项目,在配置文件pom.xml中配置Spring相关的依赖包3.2 定义bean实体类:Info.java, Car.java, Train.java3.3 定义接口BeanFactory, 接口中有一个getBean方法3.4 定义MyXmlApplicationContext类,用来解析xml文件(bean配置文件)...原创 2021-09-26 16:53:48 · 378 阅读 · 0 评论 -
Java练习(十七):编写代码,设计三个注解@StartTag, @EndTag @MyTag, 实现类似于junit4的@Before, @After, @Test功能
1. 要求如题。运用到注解的定义,反射,模板方法等知识点。2. 示例代码2.1 注解类(自定义):StartTag.java, EndTag.java, MyTag.java(1)StartTag.javapackage MyStartAndEndTag;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.R原创 2021-09-26 12:12:11 · 252 阅读 · 0 评论 -
Java练习(十六):编写代码,自定义标签@,运行标签修饰的无参方法
1. 要求实现自定义标签@MyTag,把其作为测试方法的标识例用反射知识,运行被@MyTag修饰的无参方法2.考查如何自定义标签?如何使用反射?3. 代码示例3.1 标签类: MyTag.javapackage MyTagDemo;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.Retent..原创 2021-09-22 17:52:33 · 353 阅读 · 0 评论 -
Java练习(十五):编写代码,统计字符串中出现的指定字符/子串的个数
1.要求:设计函数,统计字符串中出现的指定字符/子串的个数2. 以下用三种方法实现:import java.util.regex.Matcher;import java.util.regex.Pattern;public class SearchChar0509 { public static void main(String[] args) { String str = "heafbudish哈哈和hudfui哈哈哈fg;;;;;839y49eqy哈哈d...原创 2021-09-20 18:35:50 · 1485 阅读 · 0 评论 -
Java练习(十四):SpringBoot 的 JPA+MVC 的简单实例开发
目录1. 背景概念1.1JPA 定义1.1.1 概述1.1.2 JPA仅仅是一种规范1.1.3 JPA包括三个方面的技术1.1.4 环境搭建(都自动在pom.xml里了)1.1.5 JPA中的注解1.2 JPA Repository1.2.1 定义1.2.2 常见Repository1.2.3JpaRepository2. 示例代码2.1 maven配置文件:pom.xml2.2 SpringBoot配置文件: application.yaml..原创 2021-09-20 17:32:43 · 445 阅读 · 0 评论 -
Spring + Spring MVC + Spring Boot + 微服务 + Spring Cloud 五者之间的关系
1.SpringSpring 是一个基础框架2.Spring MVCSpring MVC 是基于 Spring 的一个 MVC 框架3.Spring BootSpring Boot 是基于 Spring的条件注册的一套快速开发整合包Spring 最初利用“工厂模式”( DI )和“代理模式”( AOP )解耦应用组件。大家觉得挺好用,于是按照这种模式搞了一个 MVC 框架(一些用 Spring 解耦的组件),用开发 web 应用( Spring MVC )。然后有发现每次开...原创 2021-09-20 10:41:55 · 481 阅读 · 0 评论 -
Java练习(十三):SpringBoot和Spring结合使用的简单工程示例
目录1. 思考:SpringBoot如何通过Spring的方式注入bean?2. 示例工程代码2.1 maven配置文件: pom.xml2.2 SpringBoot配置文件:application.yaml2.3 SpringBoot启动文件:SpringBootDemo0919Application.java2.4 bean类: Cat.java, Program.java2.5 Controller类:CatAndDogController.java3. 运行示例,运行原创 2021-09-19 17:02:32 · 756 阅读 · 0 评论