欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java之向linux文件夾下寫文件無(wú)權(quán)限的問題

 更新時(shí)間:2023年09月19日 10:48:06   作者:it1993  
這篇文章主要介紹了java之向linux文件夾下寫文件無(wú)權(quán)限的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

java向linux文件夾下寫文件無(wú)權(quán)限

我們把服務(wù)器部署到linux服務(wù)器上時(shí),有時(shí)會(huì)出現(xiàn)沒有寫文件權(quán)限問題,出現(xiàn)這個(gè)問題原因是,這個(gè)目錄對(duì)代碼來(lái)說只有讀的權(quán)限,沒有寫文件權(quán)限,下面我們解決一下這個(gè)問題

登上linux,在home文件夾下新建目錄erplog,具體操作如下,第一行新建erplog文件夾,第二句話意思是給erplog文件夾賦權(quán)限,777是最高權(quán)限

[root@zhylapp home]# mkdir erplog
[root@zhylapp home]# chmod -R 777 erplog/

執(zhí)行代碼,發(fā)現(xiàn)寫入文件成功

寫文件具體代碼如下

package com.qlyl.erp.util;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
public class FileUpload {
    private static final Logger log = LoggerFactory.getLogger(FileUpload.class);
    private static final String mark = System.getProperty("line.separator");
    /**
     * 寫日志
     * @param str
     * @param path
     */
    public static void writeLocalStrOne(String str, String path){
        try {
            File file = new File(path);
            file.setWritable(true, false);
            if (!file.getParentFile().exists()) {
                file.getParentFile().mkdirs();
            }
            file.createNewFile();
            if(str != null && !"".equals(str)){
                // true在內(nèi)容后面繼續(xù)添加
                FileWriter fw = new FileWriter(file, true);
                fw.write(str + mark);//寫入本地文件中
                fw.flush();
                fw.close();
                log.info("向目錄[{}]寫入文件成功!", path);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

java中修改linux文件夾和文件的權(quán)限

/**
     * 修改linux圖片權(quán)限
     * @param filePath
     * @throws IllegalStateException
     * @throws IOException
     */
    public static void storeFile(String filePath) throws IllegalStateException, IOException {
        File file = new File(filePath);
        //設(shè)置權(quán)限
        Set<PosixFilePermission> perms = new HashSet<PosixFilePermission>();
        perms.add(PosixFilePermission.OWNER_READ);//設(shè)置所有者的讀取權(quán)限
        perms.add(PosixFilePermission.OWNER_WRITE);//設(shè)置所有者的寫權(quán)限
        perms.add(PosixFilePermission.OWNER_EXECUTE);//設(shè)置所有者的執(zhí)行權(quán)限
        perms.add(PosixFilePermission.GROUP_READ);//設(shè)置組的讀取權(quán)限
        perms.add(PosixFilePermission.GROUP_EXECUTE);//設(shè)置組的讀取權(quán)限
        perms.add(PosixFilePermission.OTHERS_READ);//設(shè)置其他的讀取權(quán)限
        perms.add(PosixFilePermission.OTHERS_EXECUTE);//設(shè)置其他的讀取權(quán)限
        try {
            //設(shè)置文件和文件夾的權(quán)限
            Path pathParent = Paths.get(file.getParentFile().getAbsolutePath());
            Path pathDest = Paths.get(file.getAbsolutePath());
            Files.setPosixFilePermissions(pathParent, perms);//修改文件夾路徑的權(quán)限
            Files.setPosixFilePermissions(pathDest, perms);//修改圖片文件的權(quán)限
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring中使用JSR303請(qǐng)求約束判空的實(shí)現(xiàn)

    Spring中使用JSR303請(qǐng)求約束判空的實(shí)現(xiàn)

    這篇文章主要介紹了Spring中使用JSR303請(qǐng)求約束判空的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • java——Byte類/包裝類的使用說明

    java——Byte類/包裝類的使用說明

    這篇文章主要介紹了java——Byte類/包裝類的使用說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2021-02-02
  • Spring boot實(shí)現(xiàn)一個(gè)簡(jiǎn)單的ioc(2)

    Spring boot實(shí)現(xiàn)一個(gè)簡(jiǎn)單的ioc(2)

    這篇文章主要為大家詳細(xì)介紹了Spring boot實(shí)現(xiàn)一個(gè)簡(jiǎn)單ioc的第二篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • 解析springcloud中的Hystrix

    解析springcloud中的Hystrix

    Hystrix是一個(gè)用于處理分布式系統(tǒng)的延遲和容錯(cuò)的開源庫(kù),在分布式系統(tǒng)里,許多依賴不可避免的會(huì)調(diào)用失敗,比如超時(shí)、異常等。這篇文章主要介紹了springcloud中的Hystrix,需要的朋友可以參考下
    2020-10-10
  • Java線程休眠之sleep方法詳解

    Java線程休眠之sleep方法詳解

    這篇文章主要介紹了Java線程休眠之sleep方法詳解,Thread?類中有一個(gè)靜態(tài)方法的sleep方法,當(dāng)該線程調(diào)用sleep方法后,就會(huì)暫時(shí)讓CPU的調(diào)度權(quán),但是監(jiān)視器資源比如鎖并不會(huì)釋放出去,需要的朋友可以參考下
    2024-01-01
  • Mybatis關(guān)聯(lián)查詢之一對(duì)多和多對(duì)一XML配置詳解

    Mybatis關(guān)聯(lián)查詢之一對(duì)多和多對(duì)一XML配置詳解

    這篇文章主要介紹了Mybatis關(guān)聯(lián)查詢之一對(duì)多和多對(duì)一XML配置詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • JavaSE遞歸求解漢諾塔問題的思路與方法

    JavaSE遞歸求解漢諾塔問題的思路與方法

    遞歸是一種非常重要的算法思想,無(wú)論你是前端開發(fā),還是后端開發(fā),都需要掌握它,下面這篇文章主要給給大家介紹了關(guān)于JavaSE遞歸求解漢諾塔問題的思路與方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • Spring Cloud動(dòng)態(tài)配置刷新@RefreshScope與@Component的深度解析

    Spring Cloud動(dòng)態(tài)配置刷新@RefreshScope與@Component的深度解析

    在現(xiàn)代微服務(wù)架構(gòu)中,動(dòng)態(tài)配置管理是一個(gè)關(guān)鍵需求,Spring Cloud 提供了 @RefreshScope 注解,允許應(yīng)用在運(yùn)行時(shí)動(dòng)態(tài)更新配置,而無(wú)需重啟服務(wù),本文深入探析Spring Cloud動(dòng)態(tài)配置刷新@RefreshScope與@Component,感興趣的朋友一起看看吧
    2025-04-04
  • Mybatis常用標(biāo)簽整理

    Mybatis常用標(biāo)簽整理

    日常開發(fā)中,MyBatis中標(biāo)簽有著舉足輕重的重要性,以下是一些MyBatis框架中常見的標(biāo)簽及案例,感興趣的朋友跟隨小編一起看看吧
    2007-02-02
  • JavaSE經(jīng)典小練習(xí)項(xiàng)目之拷貝文件夾

    JavaSE經(jīng)典小練習(xí)項(xiàng)目之拷貝文件夾

    文件拷貝是一個(gè)常見的任務(wù),無(wú)論是備份文件,還是將文件從一個(gè)位置復(fù)制到另一個(gè)位置,文件拷貝都是必不可少的,這篇文章主要給大家介紹了關(guān)于JavaSE經(jīng)典小練習(xí)項(xiàng)目之拷貝文件夾的相關(guān)資料,需要的朋友可以參考下
    2023-10-10

最新評(píng)論