一、FTP 文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议,它工作在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用 TCP 传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证。 FTP允许用户以文件操作的方式(如
一、什么是appid、appkey、appsecretAppID:应用的唯一标识。AppKey:公匙(相当于账号)。AppSecret:私匙(相当于密码)token:令牌(过期失效)app_id:是用来标记你的开发者账号的,是你的用户id,这个id在数据库添加检索,方便快速查找。app_key和app_secret是一对出现的账号,同一个app_id可以对应多个app_key+app_secret
Java文件下载的几种方式javapublicclassFileDownloadUtil{publicHttpServletResponsedownload(Stringpath,HttpServletResponseresponse){try{//path是指欲下载的文件的路径。Filefile=newFile(path);//取得文件名。Stringfilename=file.getName(
一、CommonsMultipartFile<dependency<groupIdcommonsfileupload</groupId<artifactIdcommonsfileupload</artifactId<version1.3.3</version</dependencyjava@TestpublicvoidtestOSSServiceImport(){Filefile=newFile(
1、说明:获取n个工作日后的日期(包含法定节假日、双休日、节后补班),需要在数据库手动入库当年的法定节假日及节假日调休补班。(也可写在配置文件中读取)。2、工具类代码java/@author:huangyibo@Date:2021/1/2222:16@Description:用于查询n个工作日(包含法定节假日、双休日、调休)后的日期/publicclassHolidayUtils{privates
1、java使用Jsch实现远程操作linux服务器进行文件上传、下载,删除和显示目录信息。参考链接:https://www.cnblogs.com/longyg/archive/2012/06/25/2556576.html(https://www.cnblogs.com/longyg/archive/2012/06/25/2556576.html)https://www.cnblogs.com
一、哈希函数1.1定义散列函数(英语:Hashfunction)又称散列算法、哈希函数,是一种从任何一种数据中创建小的数字“指纹”的方法。散列函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。该函数将数据打乱混合,重新创建一个叫做散列值(hashvalues,hashcodes)的指纹。散列值通常用一个短的随机字母和数字组成的字符串来代表。好的散列函数在输入域中很少出现散列冲突。1
前言我们平时在用微信的时候,经常会用到‘抢红包’的功能。那么这样一个需求给我们的话,具体又应该怎么实现呢?!(https://s2.51cto.com/images/blog/202209/14200109_6321c2856bd1259675.png?xossprocess=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_
概述14年微信推出红包功能以后,很多公司开始上自己的红包功能,到现在为止仍然有很多红包开发的需求,实现抢红包算法也是面试常考题。要求:保证每个红包最少分得0.01元保证每个红包金额概率尽量均衡所有红包累计金额登于红包总金额本文提供4中红包算法及Java代码实现demo,仅供参考。其中每种算法测试场景为:0.1元10个包,1元10个包,100元10个包,1000元10个包。一、剩余金额随机法以10元
前言平时大概率我们会构建一些树形结果返回给前端,比如菜单结构、部门列表、文件结构等,我们一般想到的就是利用递归来循环构建;现在,就我个人解决的方法如下:原始递归利用Java8Stream流进行处理(原理还是递归)Stream流升级构建一、场景构建javaimportio.swagger.annotations.ApiModel;importio.swagger.annotations.ApiMod
一、定义权限注解java@Target({ElementType.METHOD,ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic@interfaceAuthorityAnnotation{AuthorityAnnotationEnumsvalue();}定义权限CODE枚举javapublicenumAut
1、对象不可变定义不可变对象是指对象的状态在被初始化以后,在整个对象的生命周期内,不可改变。Java中String类就是不可变的,简单来说,一个不可变的类就意味着他的实例是不可修改的,实例的所有信息都是在实例创建的时候被初始化并且不可被修改。不可变类的设计有很多优点。2、如何不可变通常情况下,在java中通过以下步骤实现不可变:1、对于属性不提供设值方法2、所有的属性定义为privatefinal
对程序语言设计者来说,设计一个令人满意的I/O(输入/输出)系统,是件极艰巨的任务——《ThinkinginJava》流的概念Java程序通过流来完成输入/输出,流是生产或消费信息的抽象。流通过Java的输入/输出系统与物理设备连接,尽管与他们连接的物理设备不尽相同,所有流的行为具有同样的方式,这样,相同的输入/输出类和方法适用于所有类型的外部设备,这意味着一个输入流能够抽象成多种不同类型的输入:
前言并行编程势不可挡,Java从1.7开始就提供了Fork/Join支持并行处理。java1.8进一步加强。并行处理就是将任务拆分子任务,分发给多个处理器同时处理,之后合并。!(://s2.51cto.com/images/blog/202209/14193919_6321bd6792bb252861.png?xossprocess=image/watermark,size_14,tex
一、Optional类的来源到目前为止,臭名昭著的空指针异常是导致Java应用程序失败的最常见原因。以前,为了解决空指针异常,Google公司著名的Guava项目引入了Optional类,Guava通过使用检查空值的方式来防止代码污染,它鼓励程序员写更干净的代码。受到GoogleGuava的启发,Optional类已经成为Java8类库的一部分。二、Optional简介Optional类(java
为什么需要StreamStream作为Java8的一大亮点,它与java.io包里的InputStream和OutputStream是完全不同的概念。它也不同于StAX对XML解析的Stream,也不是AmazonKinesis对大数据实时处理的Stream。Java8中的Stream是对集合(Collection)对象功能的增强,它专注于对集合对象进行各种非常便利、高效的聚合操作(aggrega
JavaLambda概要JavaLambda表达式是一种匿名函数;它没有声明的方法,即没有访问修饰符、返回值声明和名字。JavaLambda表达式基本语法Java中的Lambda表达式基本语法:(argument){body}比如说:(arg1,arg2){body}(type1arg1,type2arg2){body}arg1{body}sSystem.out.println(s)JavaLam
函数式接口Lambda表达式需要接口的支持,并且接口的抽象方法还只能有一个,要么没法区分实现的是哪一个抽象方法了。因此Lambda表达式需要函数式接口的支持。什么是函数式接口接口中只有一个抽象方法的接口称为函数式接口。函数式接口可以使用一个注解@FunctionalInterface修饰,此注解可以检查是否是函数式接口函数式接口的使用假设我们现在有一个需求:对一个数进行运算,什么运算都可以。如果我
Copyright © 2005-2023 51CTO.COM 版权所有 京ICP证060544号