application.properties
1 2 3 4 5 6 |
spring.servlet.multipart.enabled=true spring.servlet.multipart.max-file-size=100MB spring.servlet.multipart.max-request-size=100MB spring.servlet.multipart.file-size-threshold=0 spring.servlet.multipart.location=/usr/local/project/file spring.servlet.multipart.resolve-lazily=false |
application.yml
1 2 3 4 5 6 7 8 |
spring.servlet: multipart: enabled: true location: /usr/local/project/file max-file-size: 100MB max-request-size: 100MB file-size-threshold: 0 resolve-lazily: false |
from:https://blog.csdn.net/qq_44730827/article/details/115719202
View Details最常见的初始化 List 方法为:
1 2 3 4 5 |
List<String> languages = new ArrayList<>(); languages.add("Java"); languages.add("PHP"); languages.add("Python"); System.out.println(languages); |
但是实际上,我们并不会直接使用 new ArrayList 来初始化 List。 你可以使用 Guava 的 newArrayList 来直接初始化。 List<String> languages = Lists.newArrayList(); 上面 2 种方法初始化的 List 是可变的,因此你可以对初始化成功的 List 进行添加和删除。 Arrays 使用这个方法初始化的 List 是不可变的。 考虑使用下面的代码来初始化一个 List。 List<Integer> list1 = Arrays.asList(1,2); Arrays 是 JDK 的一个类,你可以使用这个类来初始化一个 List。 考察下面的代码:
1 2 |
List<Integer> list1 = Arrays.asList(1,2); list1.add(3); |
将会给你一个:java.lang.UnsupportedOperationException 异常。 这是一个运行时错误,不是编译错误。 因此你在编译的时候是不会提示的。 List 使用这个方法初始化的 List 是不可变的。 考虑使用下面的代码来初始化一个 List。 List<Integer> list = List.of(1,2); List 是 JDK 的一个类,你可以使用这个类来初始化一个 List。 考察下面的代码:
1 2 |
List<Integer> list1 = List.of(1,2); list1.add(3); |
将会给你一个:java.lang.UnsupportedOperationException 异常。 将不可变 List 变成可变 如果 List 是不可变的。 我们可以使用 new ArrayList<> 来包装下就可以了 考察下面的代码:
1 2 |
List<Integer>list2 = new ArrayList<>(Arrays.asList(1,2)); list2.add(3); |
如果使用上面的代码的话,你创建的 List 就可以是可变的了,可以对创建的 List 进行修改和删除。 Java 初始化 List 的几种方法 – Java […]
View Details在实际开发项目中,我们开发环境、测试环境、补丁环境都是有不同的配置的。各个环境可能用不同的数据库,为了便于开发,spring提供了多环境配置文件切换功能。比如:application-dev.yml表示测试环境配置、application-test.yml表示测试环境配置、application-prod.yml表示补丁环境配置、application.yml则是默认环境。如此,我们让那个配置生效,只需要指定对应的配置文件即可。
View Details限流(Rate Limitting)是服务降级的一种方式,通过限制系统的输入和输出流量以达到保护系统的目的。比如我们的网站暴露在公网环境中,除了用户的正常访问,网络爬虫、恶意攻击或者大促等突发流量都可能都会对系统造成压力,如果这种压力超出了服务器的处理能力,会造成响应过慢甚至系统崩溃的问题。因此,当并发请求数过大时,我们通过限制一部分请求(比如限制同一IP的频繁请求)来保证服务器可以正确响应另一部分的请求。
nginx 提供了两种限流方式,一种是限制请求速率,一种是限制连接数量。
最近需要一个在线编辑器,之前听人说过百度的UEditor不错,去官网下了一个。不过服务端只有ASP.NET版的,如果是为了能尽快使用,只要把ASP.NET版的服务端作为应用部署在IIS上就可以立即使用了。不过我的需求并不急,所以把ASP.NET移植到了ASP.NET Core上。整个过程很简单,只是重新引用了一些包,修改了几处代码,另外就是把Controller中比较长的一个switch语句块重构为了字典,根据url中的action参数从字典中找出并调用相应的Action处理,这样的好处就是如果要扩展action支持的操作无需修改源代码,只要扩展字典就可以,对扩展开放,对修改关闭。最后把服务端功能打成了nuget包UEditorNetCore,方便使用。这篇博客主要就介绍下如何使用UEditorNetCore快速实现UEditor服务端,也可以直接使用源代码中的示例,希望对有这方面需求的园友有所帮助。
View Details全部报错内容如下: 解决办法: 把自己程序生成的以deps.json结尾的文件也覆盖上 from:https://blog.csdn.net/wuxhyou/article/details/129184576
View Details文件上传是一个项目最基础的功能,按道理说应该有不会有多困难,但恶心就恶心在 SpringBoot 最方便的优点上!!!
因为 SpringBoot 是内置 Tomcat 的,所以我们并不需要部署到 Tomcat 的服务器,但当打包后(jar包)就出现了问题。
在 IDE 时,因为是正常的文件目录,所以原来的文件上传功能就可以实现,但是打包后,所有的静态文件都变成了 jar 包!!!
这就很头疼,因为当访问 /static 时,实质上访问的是 jar 包文件内容。
最近前端页面需要使用百度的Ueditor富文本编辑器,本来以为只需要前端适配就可以了,没想到Ueditor需要使用一个服务器统一请求接口,各种百度,历时一天终于弄懂了是怎么一回事,下面是我整了的三种整合的方式,从使用Ueditor的后端代码,到引入Ueditor依赖,到最后完全接管Ueditor后端,都是验证可行的。
View Details