- 博客(293)
- 收藏
- 关注
原创 This application requires Visual Studio 2019 X64Redistributable Please install the Redistributable 。
的时候会出现这个报错。那就在这个地址中下载。
2024-04-25 09:03:02 157
原创 Java Future 获取异常
在介绍如何获取异常之前,我们先来了解一下 Future 的基本概念。Future 是 Java 提供的一个接口,它代表一个未完成的异步任务。通过 Future,我们可以提交一个任务给线程池执行,并在需要时获取任务的结果。Future 接口定义了几个重要的方法:get():获取任务的结果,如果任务还未完成,则阻塞等待。isDone():判断任务是否已经完成。cancel():尝试取消任务的执行。
2024-04-23 09:00:03 387
原创 Java生成带数字的图片
在Java中,你可以使用java.awt和等图形库来生成带有数字的图片。下面是一个简单的示例代码,展示了如何创建并保存一张带有数字的图片。
2024-04-16 10:10:40 218
原创 如何使用try-with-resources关闭非自己创建的InputStream
这样,无论try代码块中是否发生异常,当代码块执行完毕后,autoCloseableInputStream(即原始的inputStream)都会被自动关闭。使用try-with-resources的好处是简化了资源管理,减少了因忘记关闭资源而导致的潜在问题。总结来说,不论InputStream的来源如何,只要它是可自动关闭的资源,你都可以利用try-with-resources来确保它在不再需要时被正确关闭。代码块执行完毕后,这些资源会被自动关闭,即使发生异常也是如此。语句来确保它在不再需要时被自动关闭。
2024-04-11 16:45:57 155
原创 Jquery下载静态web文件
请求一个服务器端脚本,该脚本会返回文件的下载链接或者触发文件下载操作。然后,你可以使用JavaScript来模拟点击这个链接,从而触发浏览器的下载功能。主要用于处理服务器返回的数据,而不是直接处理文件下载。方法下载ZIP文件通常不是直接的做法,因为。在jQuery中,使用。
2024-04-11 14:48:42 189
原创 java 读取zip文件的两种方式
以上是两种使用Java读取zip文件的不同实现方法。第一种方法使用ZipInputStream类以流的方式逐个读取zip文件中的项,可以在处理每个zip项时选择性地读取和处理其中的内容,适用于较大的zip文件。第二种方法使用ZipFile类直接获取zip文件中的项和对应的输入流,适用于较小的zip文件。根据具体需求和项目情况,可以选择适合的方法来读取zip文件。方法1:使用java.util.zip.ZipInputStream类。方法2:使用java.util.zip.ZipFile类。
2024-04-10 14:21:32 277
原创 pointcut 中 this 和 target的区别
这里的“代理对象”是指Spring AOP在运行时为被代理对象(即目标对象)创建的代理实例。这里的“目标对象”是指被Spring AOP代理的实际业务对象。由于代理对象可能会实现一些额外的接口(例如,用于支持AOP的接口),所以使用。是两种用于定义切点(Pointcut)的指示符,它们的主要区别在于它们所匹配的对象类型不同。直接关注目标对象,所以它不会匹配到代理对象可能实现的额外接口中的方法。,则可能会因为代理对象实现了额外的接口而导致不期望的匹配。关注的是目标对象的类型,而不是代理对象的类型。
2024-04-09 11:09:08 412
原创 Springboot 启动报错 The bean ‘xxxx‘, defined in class path resource XXX
【代码】Springboot 启动报错 The bean ‘xxxx‘, defined in class path resource XXX。
2024-01-04 09:00:42 666
原创 解决java前台传递时间到后台相差8个小时的时区问题
用于接收 前端传的时间值自动转换 可以是Date 可以是string 注意 格式要一样 如yyyy-MM-dd HH:mm:ss。date-format指定date输出格式为yyyy-MM-dd HH:mm:ss。time-zone指定时区,解决8小时的时间差问题。用于输出的时候解析,并且设置解析时区。个人建议都加上 没毛病。
2024-01-04 08:59:29 769
原创 关于class.getClassLoader().getResourceAsStream()和class.getResourceAsStream()的用法
另外,如果你在整个工程目录下建立一个resource文件,编译之后,它会存到和yx同级的这个目录下,也就是classpath这里,如果建立的是一个test resource 那就会在这一层的上面一层中,这个等以后写了完整的程序出来,在做进一步的整理。getClassLoader是直接从classpath开始查找文件的,因此使用这个就需要定位在classpath这个位置,也就是下面目录中yx这一层。①.不加‘ / ’,直接在包的路径下开始寻找,相当于在已经写好的path前面加了一句 /包名/path。
2024-01-04 08:56:54 548
原创 @Modifying注解和@Transactional注解?
这句话的意思是,默认情况下,repository 接口中的CRUD方法都是被@Transactional注解修饰了的,对于读的操作方法,@Transactional注解的readOnly属性是被设置为true的,即只读;自动清除,即执行完语句后自动清除掉已经过期的实体,比如,我们删除了一个实体,但是在还没有执行flush操作时,这个实体还存在于实体管理器EntityManager中,但这个实体已经过期没有任何用处,直到flush操作时才会被删除掉。使用@Modifying来标注是一个更新类的自定义语句。
2024-01-04 08:53:49 849
原创 java duplicate key_Stream 操作 Duplicate key问题
开发思考:由原先的单次掉用修改为批量调用,店铺方面给的批量查询接口最大支持查询量为20条,对于多条件查询如果修改pageSize 需要多次调用,这边需要获取分销买家单进行数量计算,所以首先需要获取分销买家单数量。list的对象类型为定义的一个bo(拥有店铺id和店铺别名两个属性)最简单的方法是使用两个for循环,将bo中的店铺id和list中每个对象的店铺id 进行匹配,放入特定ordertail中。其实java8已经给我们提供了解决的方式: 方法的第三个参数体现的。多个分销单可能存在同一个供货商情况。
2024-01-04 08:51:38 412
原创 Java8 Duplicate key 异常解决
有这样两个方法,出错的地方我们是用的第一个方法,对于可能存在重复key的转换中,我们要使用第二个方法。产生这个问题的原因时我们参与转换的list中,作为key的属性有重复,没有办法确定使用哪个元素来作为。这个异常就是说,转换map的过程中,有两个key是banana的元素,不知道怎么取舍,因此产生异常。我这里使用的是两个key 相同时,保留先存进去的那个元素。相比第一个方法,主要就是我们要去。解决办法就是我们去提供这样一个策略。
2024-01-04 08:50:50 559
原创 使用 SpringSecurity 发送POST请求出现 403
这个时候就有新的问题出现, "/activiti/definition/readResource"已经是允许匿名访问了,但是在登录状态下访问还是会出现403,不登陆就可以正常获取,这个情况比较奇葩,大概理解的就是这个方法是匿名访问的,你登陆就不是匿名了,所以你没有权限访问。进行了设置, 在用户请求资源时出现了403错误 , 通过检查代码发现请求权限是开放的, 并且切换成 GET 请求也是可以通过, 换成POST 请求就无法通过。在使用 SpringSecurity 时对一些。
2024-01-04 08:49:25 887 1
原创 SpringSecurity Oauth2 解决 The bean ‘metaDataSourceAdvisor‘, defined in null, could not be registered.
【代码】SpringSecurity Oauth2 解决 The bean ‘metaDataSourceAdvisor‘, defined in null, could not be registered.
2024-01-04 08:47:02 358
原创 spring-boot-maven插件repackage(goal)的那些事
classes目录下存放的是项目CLASS_PATH下的内容,包括应用代码和配置文件(比如application.yml等),可以理解为repackage将原始Maven打包的jar文件中的除META-INF以外的内容放置到该目录下打包。可以发现使用spring-boot-maven-plugin插件的比没有使用的场景,多了一个以.original结尾的文件,且该文件的大小与没使用spring-boot-maven插件打包的jar文件大小一样。-plugin来增加Maven功能,在我的上一篇博客。
2024-01-04 08:46:04 912
原创 springboot项目 java -jar xxx.jar 没有主清单属性解决方法
如果上述配置不能成功 请参考下面配置。1.在pom文件中添加如下。
2024-01-04 08:45:01 916
原创 Plugin ‘org.springframework.boot:spring-boot-maven-plugin:‘ not found
idea自动找的插件版本是其他版本的,和自己设置的不同,导致idea在本地maven仓库查找不到对应的插件版本。给spring-boot-maven-plugin指定版本。
2024-01-04 08:43:55 625
原创 Spring事务传播问题 — PROPAGATION_REQUIRES_NEW
仔细查看了日志,没有找到类似creating new transaction的输出,应该是因为在同一个Service类中,spring并不重新创建新事务,如果是两不同的Service,就会创建新事务了。1、当ServiceA.a()方法调用ServiceB.b()方法时,内层事务提交和回滚,都不受外层事务提交或回滚的影响。2、当ServiceA.a()方法调用ServiceA.c()方法时,内层事务不能正确地提交或回滚。内层Service的方法被调用时,外层方法的事务被挂起;
2024-01-04 08:42:07 471
原创 java中查看一个对象占多少字节工具_必知必会的JVM工具系列一,读懂会用jps、jstat、jinfo、jmap...
很多资料在介绍JDK命令行工具时并不是在Java8环境下,因此还在使用过时的永久区系列的参数,给一些读者造成困难。Java8使用Metaspace(元空间)代替永久区,对于64位平台,为了压缩JVM对象中的_klass指针的大小,引入了类指针压缩空间(Compressed Class Pointer Space)。1. JDK命令行工具在JDK的开发包中,除了大家熟知的java.exe和javac.exe外,还有一系列辅助工具。这些工具在JDk安装目录下的bin目录中。
2024-01-04 08:40:40 885
原创 Spring AOP 切面@Around注解的具体使用
需要说明的是,在以下例子中,我们即可以只用@Around注解,并设置条件,见方法run1();也可以用@Pointcut和@Around联合注解,见方法pointCut2()和run2(),这2种用法是等价的。如果我们还想利用其进行参数的修改,则调用时必须用joinPoint.proceed(Object[] args)方法,将修改后的参数进行回传。比如我们想在执行controller中方法前打印出请求参数,并在方法执行结束后来打印出响应值,这个时候,我们就可以借助于@Around注解来实现;
2024-01-03 14:07:58 712
原创 java.util.regex.PatternSyntaxException: Illegal repetition {
参数传递问题,replaceAll(String。
2024-01-03 14:06:35 467
原创 AOP获取方法返回值
Before表示方法请求前执行,@After表示方法请求后执行,一般做记录的时候会使用@After比较多。但是有时候我们需要获取方法的返回值做判断该如何处理呢?首先,我们看@After的注解源码。可以看到@After注解并不能获取到方法的返回值。这个时候我们需要的是@AfterReturning。切面做日志收集或者记录的时候,在springboot中用@Aspect注解。这样就可以获取返回值,然后根据返回值做罗辑处理了。returning表示的就是返回值。我们用Spring的。
2024-01-03 14:05:43 630
原创 转JSON提示No serializer found for class
在调用Json串生成方法时,提示: No serializer found for class com.jeremxy.domain.EpgDetail and no。网上搜索了一般之后,才知道原来如果需要将某个类转成Json串的话,那么必须要求其属性为public,或者提供public的**get()**方法。转载于:https://www.cnblogs.com/game-life/p/4371894.html。
2024-01-03 14:04:13 412
原创 Java---- 静态内部类与非静态内部类的区别
1.是否能拥有静态成员静态内部类可以有静态成员(方法,属性),而非静态内部类则不能有静态成员(方法,属性)。2.访问外部类的成员静态内部类只能够访问外部类的静态成员,而非静态内部类则可以访问外部类的所有成员(方法,属性)。3.静态内部类和非静态内部类在创建时有区别//假设类A有静态内部类B和非静态内部类C,创建B和C的区别为:1234。
2024-01-03 14:02:45 407
原创 参数json序列化报错: (no Creators, like default construct, exist): cannot deserialize from Object value (no
使用jackson对json字符串转对象时报错。通过分析应该时construct构造函数出问题了。
2024-01-03 13:58:36 904
原创 【无标题】idea的lombok插件支持@SuperBuilder注解啦
今早进公司打开idea,弹出更新提示,简单看了下,原来是idea的lombok插件更新了,惊喜的发现update log上写着。为什么说是惊喜呢?因为之前也有用到这个的场景,去官网认认真真看完了的用法以及描述,刚准备大展拳脚,结果发现idea上怎么写都识别不出来,后来去插件的github上看了一下,在issue中发现很多请求插件更新支持注解,而插件作者大概的回复就是已经在开发计划中了,不要催,催也不能提高进度。不得已,在自己的项目中只能冗余一些代码,而不能基于lombok更加优雅简洁的去写。
2024-01-03 13:57:33 1198
原创 Caused by: java.lang.ClassNotFoundException: org.springframework.security.jwt.crypto.sign.MacSigner
【代码】Caused by: java.lang.ClassNotFoundException: org.springframework.security.jwt.crypto.sign.MacSigner。
2024-01-03 13:54:30 433
原创 IDEA+SpringBoot项目下静态资源访问路径陷阱:静态资源访问404
然后再在浏览器访问localhost:8080/,由于是修改静态资源文件,所以不用重启springboot项目。然后启动项目,在浏览器输入localhost:8080/,index.html页面是访问到了,但是图片访问不到。这个路径如果是使用SSM框架,那一定会报404错误,但是在SpringBoot项目中却是访问成功。这个路径如果是使用SSM框架,那一定会访问成功,但是在SpringBoot项目中却是访问不成功。SpringBoot项目在启动的时候会去查找——/templates/index.html,
2024-01-03 13:52:40 901 1
原创 下载文件并保存在服务器上时,最好使用当前操作系统的分隔符 获取方法:private String sepa = java.io.File.separator;
获取方法:private String sepa = java.io.File.separator;下载文件并保存在服务器上时,最好使用当前操作系统的分隔符。
2024-01-03 13:51:47 361
原创 Java程序设计基础——cmd编译运行java文件详细步骤
命令,按Enter键,启动Java虚拟机运行程序。Java虚拟机首先将编译好的字节码文件加载到内存,这个过程被称为类加载,它是由类加载器完成的,然后虚拟机针对加载到内存中的Java类进行解释执行,便可看到运行结果。当我们切换到盘符下面执行HelloWorld的时候,会立即在计算机的内存里面创建一个JVM,再把HelloWorld.class这个文件调到JVM中。,是因为之前用另一个JDK编译过了,此时变了版本,之前生成的.class还是之前版本的,所以有冲突,需要将之前的.class文件全部删除。
2024-01-03 13:51:01 478
原创 Request请求转发和Response重定向
(“path”).forword(request,response).将request和response作为参数放到forword()方法中。我们要在请求的路径文件中调用getAttaribute(“名称”),会返回一个对象我们就得到了请求转发的内容。302,要调用setStatus(302)方法,接着要设置响应头setHeader(“Location”,“/虚拟路径/path”)就完成了重定向过程。但有一种简化的方式是调用sendRedirect(”/虚拟路径/path“),完成的是一样的功能。
2024-01-03 13:49:56 345
原创 解决 java “错误:编码GBK 的不可映射字符”
在UTF-8里,英文字符仍然跟ASCII编码一样,因此原先的函数库可以继续使用。而中文的编码范围是在0080-07FF之间,因此是2个字节表示(但这两个字节和GB编码的两个字节是不同的),用专门的Unicode处理类可以对UTF编码进行处理。UTF-8:通用字集转换格式,这是为传输而设计的编码,2进制,以8位为单元对Unicode进行编码,如果使用只能在同类位元组内支持8个位元的重要资料一类的旧式传输媒体,可选择UTF-8格式。通过DOS编译 提示 错误:编码GBK的不可映射字符。
2024-01-03 13:48:13 349
原创 javac “错误:编码GBK 的不可映射字符”
在UTF-8里,英文字符仍然跟ASCII编码一样,因此原先的函数库可以继续使用。而中文的编码范围是在0080-07FF之间,因此是2个字节表示(但这两个字节和GB编码的两个字节是不同的),用专门的Unicode处理类可以对UTF编码进行处理。UTF-8:通用字集转换格式,这是为传输而设计的编码,2进制,以8位为单元对Unicode进行编码,如果使用只能在同类位元组内支持8个位元的重要资料一类的旧式传输媒体,可选择UTF-8格式。通过DOS编译 提示 错误:编码GBK的不可映射字符。推荐使用第一种方法,在。
2024-01-03 13:46:20 468
原创 IDEA错误: 找不到或无法加载主类 com.atguigu.springcloud.EurekaServer7001_App
【代码】IDEA错误: 找不到或无法加载主类 com.atguigu.springcloud.EurekaServer7001_App。
2024-01-01 14:16:12 1003
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人