原创 文件上傳接入阿里雲OSS

目的:將文件交給阿里雲進行管理,可避免文件對本地服務器資源的佔用,阿里雲OSS還可根據讀寫偏好選擇合適的文件存儲類型服務器,文件異地備份等 一、阿里雲OSS基礎瞭解(前提) 1、存儲空間(Bucket) 用於存儲對象(Object)的容器

原创 RestTemplate上傳文件

1、上傳的文件是File類型 如果文件保存在本地,即可以通過File file = new File(path) 或者 文件路徑地址獲取到指定文件 public String uploadFile(File file) { /

原创 @DS("slave") 多數據源兼容事務問題解決方案

SpringBoot項目中用到多數據源,在方法上又必須加事務處理,此時可以對使用了@DS的方法或類添加@Transactional並添加事務隔離級別 舉例: 1、這是一個方法,方法內需要實現多數據源查詢  2、在該方法中判斷查詢哪一個

原创 Redis-[巡山]

一、NoSQL數據庫簡介 1、技術發展 技術的分類 1、解決功能性的問題:Java、Jsp、RDBMS、Tomcat、HTML、Linux、JDBC、SVN 2、解決擴展性的問題:Struts、Spring、SpringMVC、Hiber

原创 “I/O多路複用”和“異步I/O”的前世今生

曾經的VIP服務在網絡的初期,網民很少,服務器完全無壓力,那時的技術也沒有現在先進,通常用一個線程來全程跟蹤處理一個請求。因爲這樣最簡單。其實代碼實現大家都知道,就是服務器上有個ServerSocket在某個端口監聽,接收到客戶端的連接後,

原创 Centos8防火牆設置

看視頻內捲過程中,突然發現防火牆有些命令在我的服務器執行報錯。一秒想到是centos版本原因。果斷找到正確命令執行。 舊版本命令: firewall-cmd --add-service=http –permanent sudo fire

原创 SpringBoot接入阿里雲oss

1、pom中添加阿里雲oss座標 <?xml version="1.0" encoding="utf-8"?> <dependencies> <dependency> <groupId>org.springframewo

原创 Java-Stream-flatMap

Leave leave1 = new Leave("1","1",new Date(),CollUtil.newArrayList("A","B")); Leave leave2 = new Leave("2","2",new D

原创 linux筆記-工作

根據進程id或進程名查看端口號 netstat -antup|grep 2073 netstat -antup|grep processName 查看某個端口號是否被佔用 netstat -tln | grep 9876     98

原创 Java好用的工具類

IP地址獲取 public class IPUtil { private static final String UNKNOWN = "unknown"; protected IPUtil(){ }

原创 Centos安裝Python3.8

最直白的centos8安裝python3.8yum install -y update安裝 gcc和make插件:yum install gcc gcc-c++yum -y install gcc automake autoconf li

原创 tomcat搭建本地文件服務器(windows版本)

1、下載tomcat 2、配置環境變量 在“我的電腦”(右鍵)->“屬性”->“高級屬性設置”->“環境變量”-“系統屬性”-“系統變量”中添加TOMCAT_HOME=D:\apache-tomcat-9.0.50(此路徑爲你解壓文件夾所

原创 算法與數據結構-07-手寫類HashTable

package day05; import java.sql.SQLOutput; import java.util.Scanner; /** * 哈希表代碼實現 */ public class HashTab { p

原创 算法與數據結構-06-插值查詢

插值查詢 二分查找雖然快捷,但是每次折半查找,查找過程不具有動態性,究其原因是由於待查找元素每次與mid中間值進行比較,但中間值的獲取算法是固定的,即(left+right)/ 2 ,如果獲取中間值得算法是動態的或許會更高效,這就是插值查

原创 算法刷題手記3

描述 二分查找擴展:如果數組有序,且存在多個目標值,查詢所有目標值索引返回。 public class Main { public static void main(String[] args) { Array