java

Java INPUTSTREAM如何实现重复使用

2020-10-10
引语: 之前做项目的时候遇到一个问题,就是从网络中读取的图片要上传到oss,而且要对图片进行裁剪和压缩,其中上传和裁剪都要使用到图片的inputStream, 又因为inputstream不能重复读,导致裁剪是成功的,而上传是失败的.我们今天就提供两种方法来解决,inputStream不能重复读的问题. 问题分析: inputStream的内部有个pos指针,当读取的时候指针会不断的移动,当移动到末尾的时候,就无法再次读取了. 我们写个简单的例子来看下: String text = "测试inp

在Spring Boot中从类路径加载文件的示例

2020-10-10
资源加载器 使用Java,您可以使用当前线程的classLoader并尝试加载文件,但是Spring Framework为您提供了更为优雅的解决方案,例如ResourceLoader. 您只需要自动连接ResourceLoader,然后调用getResource(„somePath")方法即可. 在Spring Boot(WAR)中从资源目录/类路径加载文件的示例 在以下示例中,我们从类路径中加载名为GeoLite2-Country.mmdb的文件作为资源,然后将其作为File对象检索. @Se

如何在java中使用SFTP协议安全的传输文件

2020-10-10
本文介绍在Java中如何使用基于SSH的文件传输协议(SFTP)将文件从本地上传到远程服务器,或者将文件在两个服务器之间安全的传输.我们先来了解一下这几个协议 SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议.比如:我们购买的云服务器登陆的时候使用的协议都是ssh. ftp协议通常是用来在两个服务器之间传输文件的,但是它本质上是不安全的. 那么SFTP是什么?SFTP可以理解为SSH + FTP,也就是安全的网络文件传输协议. 一般来说,SFTP和FTP服务都是使用相应的客户端软

springboot maven 项目打包jar 最后名称自定义的教程

2020-10-10
maven 文件打包,输入 :package -Dmaven.test.skip=true 进行打包, 一般生成的jar 文件 名称是项目名+版本号这样的 如何在pom.xml 中加入finalname 属性,就可以获得稳定的jar 名称 <build> <finalName>pay</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId

如何测试Spring MVC应用

2020-10-10
Spring的依赖注入使得我们的代码非常容易进行单元测试--@Controller, @Service,@Entity等注解标注的类基本都是POJO(plain old Java object),也就是说很少依赖于Spring容器本身的API.我们可以非常容易地使用JUnit或TestNG编写测试代码.另一方面,对于三层架构的Spring Web应用(Controller, Service, DAO),使用Mock活Stub方法也能够更好的来测试我们的代码逻辑.例如Service层代码的单元测试

java原生动态生成验证码

2020-10-10
本文实例为大家分享了java原生动态生成验证码的具体代码,供大家参考,具体内容如下 需求描述: 为了防止脚本多次请求,很多时候在注册会用到验证码,我们用java实现 一个图片验证的二维码. 项目结构 只有 标记的这三个文件是用到的 CheckServlet核心代码 package lhw.wanlin.checkimg; import javax.imageio.ImageIO; import javax.servlet.ServletException; import javax.servle

解决Spring boot 嵌入的tomcat不启动问题

2020-10-10
此文章记录一次spring boot通过main 方法启动无法成功的问题 Unregistering JMX-exposed beans on shutdown 问题如下,因为已经解决用的别人的截图但是效果是一样的 百度了一圈都说tomcat没有配置,但实际xml有如下配置 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomc

java jdk1.8 使用stream流进行list 分组归类操作

2020-10-10
我就废话不多说了,大家还是直接看代码吧~ import com.alibaba.fastjson.JSON; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; /** * @author czw */ public class Foo{ private String name; private String type; private Double typeValue; p

eclipse+jdk安装以及会遇到的问题及解决方法

2020-10-09
今天电脑系统崩了,重做了系统,对于我这个非计算机专业的来说,记录一下问win10系统安装eclipse软件和JDK以及配置环境变量时遇到的问题也是好的,希望也可以帮助到刚入行的你. jdk下载地址: 链接: https://pan.baidu.com/s/1mlUl9-jyjuS2GoSsIyMrvg 提取码: t7rv eclipse下载地址: 链接: https://pan.baidu.com/s/1Gqlm3FZ5vQ8vgJzwOVD_Mw 提取码: j4pt 1.jdk安装 一路点击下

手动编译并运行Java项目实现过程解析

2020-10-09
现在Java开发基本上就是IDE调试,如果跨平台打个jar包过去运行一般就可以了,但是有些情况比如需要引入外部依赖的时候,这个时候是不能直接运行的,还需要引入一些外部的参数,并不是简单的javac和java的关系了,下面来详细说一下 一般情况下,在本地都是使用eclipse开发工具进行开发,很多东西基本上就不用我们考虑了,如果我们要将项目放到Linux下运行的话,那么就需要进行转移的操作,当然有Maven.Ant这样的自动化部署工具,简直是太方便了,为了做到更进一步认识的话,我们纯手动的去打包一

Java如何读取配置文件并赋值静态变量

2020-10-09
应用场景 项目开发中某个功能需要抽取成方法写成一个工具类,提供给别人使用.写过工具类的人都知道,工具类中的方法一般都是静态方法,可以直接使用类名点方法名调用, 使用很方便,比如判断某个对象是否为null的方式Objects.equals().由于我写的这个工具类中需要读取配置文件中的内容,可是常规方式注入成员变量时都不是静态的,不 能直接调用,比如这种方式: @Data @Component public class GBaseApiConfig { @Value("${gbase.api.pr

深入理解可视化JVM 故障处理工具

2020-10-09
本文内容过于硬核,建议有 Java 相关经验人士阅读. 1. 可视化工具 在 JDK 中为我们提供了大量的 JVM 故障处理工具,都在 JDK 的 bin 目录下: 这其中除了大量的命令行工具以外,还为我们提供了更加方便快捷的可视化工具,主要是以下这 4 个: JConsole: 最古老的工具,早在 JDK 5 时期就已经存在的虚拟机监控工具. JHSDB: 名义上在 JDK 9 中才正式提供,但之前已经以 sa-jdi.jar 包里面的 HSDB(可视化工具) 和 CLHSDB(命令行工具)

spring boot实现profiles动态切换的示例

2020-10-09
具体做法: 1.首先在pom中添加profiles: <profiles> <profile> <id>dev</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> <spring.profiles.active>dev</spring.profiles.active

JAVA WSIMPORT生成WEBSERVICE客户端401认证过程图解

2020-10-09
概述 wsimport是jdk自带的命令,可以根据wsdl文档生成客户端中间代码,基于生成的代码编写客户端,可以省很多麻烦. 先看两张截图: 使用浏览器打开webservice出现的界面: 使用wsimport生成webservice客户端出现401错误: 需用到的命令参数如下: 1. -d <directory> 在指定的目录生成class文件 2. -p <pkg> 指定生成文件的包结构 3. -Xauthfile <filepath> 在格式文件进行授权信息 4.

使用jdk1.8实现将list根据指定的值去分组的操作

2020-10-09
我就废话不多说了,大家还是直接看代码吧~ Map<String, List<CommentQuery>> commentList = list.stream().collect(Collectors.groupingBy(CommentQuery::getNewsId)); for (Map.Entry<String, List<CommentQuery>> entry : commentList.entrySet()) { String key = HOT

详解@ConfigurationProperties实现原理与实战

2020-10-09
在SpringBoot中,当需要获取到配置文件数据时,除了可以用Spring自带的@Value注解外,SpringBoot提供了一种更加方便的方式:@ConfigurationProperties.只要在bean上添加上这个注解,指定好配置文件的前缀,那么对应的配置文件数据就会自动填充到bean中.举个栗子,现在有如下配置: myconfig.name=test myconfig.age=22 myconfig.desc=这是我的测试描述 添加对应的配置类,并添加上注解@Configuratio

Java实现ECDSA签名算法

2020-10-09
ECDSA签名算法 package com.albedo.security; /** * DSA 加解密实现 */ public class ECDSAUtils extends Base { //字符编码 public static final String ALGORITHM = "EC"; public static final String SIGN_ALGORITHM = "SHA1withECDSA"; /** * ECDSA 验签 * * @param

Java如何通过线程解决生产者/消费者问题

2020-10-09
生产者和消费者问题是线程模型中的经典问题:生产者和消费者在同一时间段内共用同一个存储空间,如下图所示 生产者向空间里存放数据,而消费者取用数据,如果不加以协调可能会出现以下情况: 存储空间已满,而生产者占用着它,消费者等着生产者让出空间从而去除产品,生产者等着消费者消费产品,从而向空间中添加产品.互相等待,从而发生死锁. 以下实例演示了如何通过线程解决生产者/消费者问题: /* author by javaidea.com ProducerConsumerTest.java */ public

Day21logj4与sl4j的使用与区别详解

2020-10-09
学习目标 (1)Junit 针对方法 (2)log4j与sl4j (3)Spring - IOC log4j的介绍 (1)什么是log4j?  Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件等 (2)有什么特点?  >可以控制每一条日志的输出格式  >控制日志的生成过程 通过一个配置文件来灵活地进行配置log4j.properties,而不需要修改应用的代码 public class Test01 { //模式 debug priva

idea springboot 修改css,jsp不重启实现页面更新的问题

2020-10-09
修改如下的配置: PS:IDEA去掉不想提交的文件 1.创建新的 changelist 2.把不想提交的文件移动到上面创建的changelist 到此这篇关于idea springboot 修改css,jsp不重启实现页面更新的问题的文章就介绍到这了,更多相关idea springboot页面更新内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!