java
文章平均质量分 53
walker-undef
每天进步一点点
展开
-
Files.walk 与 Files.walkFileTree
文件遍历原创 2024-08-17 16:17:18 · 356 阅读 · 0 评论 -
关于 java.lang.ClassNotFoundException
最近开发项目时依赖了一个比较旧的jar包,启动项目时报java.lang.ClassNotFoundException,但在项目的依赖包中是存在对应的class的。解决方案:1. 采用mvn dependency:tree依赖树, 找到ClassNotFoundException对应的jar的父级依赖2.从该依赖中exclude报错的jar包 (目前我遇到的情况是该jar包的版本老旧,其中的class的编译时使用的java版本较低,当前使用的jdk无法加载导致)3. 单独添加比较新的版本原创 2022-05-28 15:08:11 · 472 阅读 · 0 评论 -
启动Java jar包时找不到resources下静态资源文件
问题描述:启动java jar包时,报jar报指定路径下的文件不存在,而文件事实上是存在的报错代码:Resource resource = new ClassPathResource("static/test.json");File file = resource.getFile(); // 该行拿不到jar包内resources目录下的文件FileInputStream fis = new FileInputStream(file);正常运行代码:import org.spri原创 2022-05-21 16:52:01 · 3579 阅读 · 0 评论 -
wiremock使用笔记
依赖包:<dependency> <groupId>com.github.tomakehurst</groupId> <artifactId>wiremock-jre8</artifactId> <version>2.33.1</version> <scope>test</scope>原创 2022-04-11 14:50:06 · 442 阅读 · 0 评论 -
jdk与cglib动态代理
1. jdk 与 cglib 动态代理对比 1.1 都会将生成的代理类缓存起来,先从缓存中获取,没有才生成,得到代理类后,生成代理类的实例 1.2 jdk动态代理只能生成接口的代理类,cglib可以生成普通类的代理类,但不能生成final类的代理类 1.3 cglib代理类比jdk代理类占用更多的内存空间(通过为同一个实现类生成代理类,然后对比输出的class) 1.4 cglib代理类继承被代理类,jdk代理类继承Proxy并实现被代理类实现的接口2. jdk动态代理使...原创 2022-02-20 16:45:24 · 213 阅读 · 0 评论 -
java线程池实现原理
线程池实现原理-------------------------------------------------------------------------------------------------------------- 线程池是一个能够接受任务提交并将任务交给线程执行的类。 它的功能包括对任务的管理和对线程的管理。 它主要通过以下方式来实现这两个功能: 定义属性: corePoolSize, maxPoolSize,...原创 2021-09-17 17:58:28 · 127 阅读 · 0 评论 -
java.io.Serializable的使用
Serializability of a class is enabled by the class implementing the java.io.Serializable interface. Classes that do not implement this interface will not have any of their state serialized or deserialized. All subtypes of a serializable class are themselve原创 2021-02-02 18:01:20 · 476 阅读 · 1 评论 -
Powermock Practice 4
1. mock new@PrepareForTestYou need to put the class where the constructor is called into the @PrepareForTest annotation instead ofthe class which is being constructed.More info ref: https://github.com/powermock/powermock/wiki/MockConstructor 2. I...原创 2021-01-14 17:17:39 · 229 阅读 · 1 评论 -
PowerMock 实践<三>
1. 对静态方法的mockpom.xml<dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <scope>test</scope></dependency><dependency> <groupId>org.powermock</grou..原创 2020-11-27 09:14:05 · 298 阅读 · 0 评论 -
Unit Test Summary1
测试用例需要根据具体功能进行编写,需要将关注的功能点都测试到。测试的基本策略是,输入一个满足某个业务场景的数据,看得到的输出是否是期望的值。当预期没有达到时,我们修改现有的代码来达到预期。不断重复这个过程,尽最大可能覆盖可以考虑到的功能点。从而为提交的代码提供最基本的验证。最近的单元测试编写,一开始我采用的是@SpringBootTest。但是由于我测试的类所在的package下面有很多其他的类,这些类的依赖比较复杂,当我采用@Autowired注入我测试的类时,需要去处理很多与该类无关的依赖信息。然后原创 2020-09-08 15:47:18 · 196 阅读 · 0 评论 -
excel下载
框架:springboot, poi, freemarker, jquery<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.10....原创 2019-06-18 11:37:43 · 323 阅读 · 0 评论 -
mockito使用笔记
mock void方法:Mockito.doNothing().when(类对象).methodName();Mockito.doThrown(异常).when(类对象).methodName();// 自定义返回内容Mockito.doAnswer(new Answer(){...}).when(类对象).methodName();mock有返回值的方法:Mocki...原创 2019-06-03 14:47:26 · 1562 阅读 · 0 评论 -
springboot+intellij 使用中碰到的问题
2019-05-29最近一直在使用intellij + springboot开发。我使用的是intellij社区版。有个问题一直困惑着我:当我在intellij里面,使用springboot:run启动项目后(debug模式启动,没有禁用断点),访问服务时,总是不会进入断点, 并且有时候在intellij里面关闭应用后,应用的进程并没有关闭,还可以继续访问。而根据我添加的日志来看,断点所在...原创 2019-05-29 17:39:53 · 496 阅读 · 0 评论 -
关于JDBC访问存储过程的问题
最近开发一个应用,需要调用一个入参为List的存储过程。存储过程为: proc_test(p1 OUT Number, p2 IN Number, p3 IN TAB_CUSTOMER);这个List入参是一个在oracle中自定义的类型的表,如下:CREATE OR REPLACE TYPE TAB_CUSTOMER AS TABLE OF TYP_CUSTOMER;CREATE...原创 2019-05-28 10:27:00 · 632 阅读 · 0 评论 -
Java8 lambda函数的应用
java.util.Comparatorpackage test;import java.util.Arrays;import java.util.Comparator;import java.util.List;import org.junit.Before;import org.junit.Test;/** * 测试Java8 lambda 函数的应用:java.util....原创 2018-03-09 15:13:30 · 395 阅读 · 0 评论 -
Java - 采用redis缓存数据[redis客户端开发]
pom.xml依赖: org.springframework.data spring-data-redis 1.8.6.RELEASE biz.paluch.redis lettuce 4.4.0.Final 代码:import org.springframework.cache.CacheManager;import org.sp原创 2018-02-02 18:00:29 · 771 阅读 · 0 评论 -
Java Core II 学习笔记
1.2.4 字符集 字符集名字大小写不敏感;可以通过静态方法forName来获得一个Charset: Charset cs = Charset.forName("UTF-8");或者直接获取 java.nio.charset.StandardCharsets 里面的常量: StandardCharsets.UTF_8 等;1.4 Zip文档 读入Zip文件:原创 2018-01-26 09:40:08 · 427 阅读 · 0 评论 -
Ip获取
公网ip, 本地ip, 服务器ip获取(采用javascript, java)原创 2015-11-10 11:24:30 · 442 阅读 · 0 评论 -
SSH集成实践一:配置
这两天练习Struts2, Spring,Hibernate的整合,碰到了一些问题,整理如下, 以供参考。-------------------------------------------------------------------------------------------------------------------------------------------------原创 2015-10-29 16:39:29 · 333 阅读 · 0 评论 -
SSH集成实践二:问题与解决
问题一 :启动tomcat报错:ClassNotFound : org.springframework.web.context.ContextLoaderListener解决方法: step1 : 按快键ctrl +shift + T, 发现没有类 org.springframework.web.context.ContextLoaderListener.在网上搜索了一下,原来是没有配置s原创 2015-10-29 16:52:37 · 533 阅读 · 0 评论 -
中文乱码处理
如果你使用的是maven,当代码中的中文乱码时, 可以添加以下jar包:plugin> groupId>org.apache.maven.pluginsgroupId> artifactId>maven-resources-pluginartifactId> configuration>原创 2016-03-18 10:28:17 · 280 阅读 · 0 评论 -
采用Mybatis-Generator生成mapper
Mybatis-generator生成Mapper原创 2016-09-21 17:55:00 · 369 阅读 · 0 评论 -
浅尝derby(1)
概述本文讲述我使用derby的实践过程;一. 安装1. 下载压缩包db-derby-版本号-bin.zip,解压文件到你想安装derby的目录,我指定的目录是D:\app;2. 配置环境变量path: 在现有环境变量path的末尾添加 ;D:\app\db-derby-10.12.1.1-bin\bin; 3. 打开cmd, 输入命令ij回车; 出现: ij 版本 版本号(原创 2016-09-24 11:39:47 · 475 阅读 · 0 评论 -
Logback实践
前提: 采用Maven pom.xml构建依赖一. pom.xml ch.qos.logback logback-classic 1.1.3 org.slf4j slf4j-api 1.7.5 二. logback.xml INFO <!-- %d{H原创 2016-11-01 16:29:07 · 265 阅读 · 0 评论 -
Runtime.getRuntime().addShutdownHook(Thread hook)的使用
需求:最近做了个后台运行的jar包应用,没有采用web容器,采用java -jar xxxxx的方式运行。数据库连接池采用c3p0,关闭应用后发现数据库会话依然存在。解决方案:采用Runtime.getRuntime().addShutdownHook(Thread hook)在应用关闭前关闭数据库连接,该方法适用于采用System.exit(0)退出应用的方式。 因为jar包采用的是原创 2016-12-12 16:46:25 · 1648 阅读 · 0 评论 -
itextpdf实践与问题
文章内容: PDF文档的处理以及碰到的问题依赖的jar配置如下: com.itextpdf itextpdf 5.3.2 org.bouncycastle bcprov-ext-jdk15on 1.51 问题一:读取被加密的PDF文档时报错:com.itextpdf.text.exceptio原创 2016-11-11 18:05:32 · 2831 阅读 · 0 评论 -
FileChangedReloadingStrategy的简单使用
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------需求:当采用配置与代码分离时,如果只是修改配置文件(原创 2016-12-08 15:31:10 · 2286 阅读 · 0 评论 -
PowerMockito实践<二>
概述:PowerMockito擅长mock静态类/静态方法/私有方法/构造器1. 当给spy的类设桩时,最好使用doReturn / doThrow / doNothing(只适应于返回void的方法)等,使用thenReturn/thenThrow可能会产生一些错误,参考示例代码:testStub4SpyClass;2. 当给静态方法设桩时,使用thenReturn/ t原创 2016-12-27 16:06:54 · 5379 阅读 · 0 评论 -
创建免认证的HttpClient
目标:构建免SSL认证的HttpClientJDK:Java8依赖jar包: org.apache.httpcomponents httpclient 4.4.1 Java代码:import javax.net.ssl.SSLContext;import org.apache.http.auth.AuthScope;import org.apac原创 2017-02-24 15:55:13 · 589 阅读 · 0 评论 -
浅尝H2数据库<一>
本文主要介绍采用内存模式访问H2数据库。开发环境:JDK,Eclipse, Maven开发实践:1. 在eclipse中创建一个maven工程, 项目结构如下:2. 在pom.xml中添加对h2的依赖,如下:com.h2databaseh21.4.1923. 编写数据访问类(DAO), 如下:import java.原创 2016-09-28 16:04:01 · 2793 阅读 · 1 评论 -
阅读清单
一、设计模式> Erich Gamma(Addison-Wesley出版社,1995年出版)> Frank Buschmann(John Wiley & Sons出版社,1996年出版)原创 2017-06-14 10:53:18 · 413 阅读 · 0 评论 -
前端应用(fingerprint)
1. fingerprint的获取原创 2015-11-10 11:34:41 · 1532 阅读 · 0 评论