admin 发布的文章

win10系统下如何查看端口被哪个进程占用

发布时间:2019-03-10 13:26发布者:系统城-liumei浏览数:11072

  在win10系统中,我们有时候要使用一些端口,可是却发现使用的端口被别的程序占用了,导致无法开启端口,但是却不知道如何查看端口被哪个进程占用,方法很简单那,这就给大家讲解一下win10系统下查看端口被哪个进程占用的具体步骤。

1、按 win+R,点击运行页面,写入cmd回车,点击命令行页面;
使用命令查看端口,这里查看443端口;

netstat -aon|findstr "443"

3、在这里,大家可以看到,本地的433端口被PID为4452的进程占用了;

4、然后,使用tasklist命令查看进程;

tasklist|findstr "4452"

5、大家可以看出,是vmware-host.exe程序占用了443端口;

6、然后,可以用taskkill语句结束进程,这里大概需要管理员权限才能正常的结束语句;

taskkill /f /t /im vmware-hostd.exe

7、再用netstat -aon|findstr "443"查看,发现443端口无被占用了。

springboot获取项目的绝对路径和根目录

springboot获取当前项目路径的地址

System.getProperty("user.dir")

输出目录: G:\outshine\wangsoso

//获取classes目录绝对路径

String path = ClassUtils.getDefaultClassLoader().getResource("").getPath();

String path = ResourceUtils.getURL("classpath:").getPath();

输出目录: /G:/outshine/wangsoso/target/classes/

//如果上传目录为/static/images/upload/,则可以如下获取:
File upload = new File(path.getAbsolutePath(),"static/images/upload/");
if(!upload.exists()) upload.mkdirs();
System.out.println("upload url:"+upload.getAbsolutePath());
//在开发测试模式时,得到的地址为:{项目跟目录}/target/static/images/upload/
//在打包成jar正式发布时,得到的地址为:{发布jar包目录}/static/images/upload/

注意:以jar包发布项目时,我们存储的路径是与jar包同级的static目录,因此我们需要在jar包目录的application.properties配置文件中设置静态资源路径,如下所示:

设置静态资源路径,多个以逗号分隔

spring.resources.static-locations=classpath:static/,file:static/

以jar包发布springboot项目时,默认会先使用jar包跟目录下的application.properties来作为项目配置文件。

如果在不同的目录中存在多个配置文件,它的读取顺序是:

    1、config/application.properties(项目根目录中config目录下)

    2、config/application.yml

    3、application.properties(项目根目录下)

    4、application.yml

    5、resources/config/application.properties(项目resources目录中config目录下)

    6、resources/config/application.yml

    7、resources/application.properties(项目的resources目录下)

    8、resources/application.yml

注:

 1、如果同一个目录下,有application.yml也有application.properties,默认先读取application.properties。

 2、如果同一个配置属性,在多个配置文件都配置了,默认使用第1个读取到的,后面读取的不覆盖前面读取到的。

 3、创建SpringBoot项目时,一般的配置文件放置在“项目的resources目录下”

package com.alanluo.recorder;


import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;


public class test2 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        List<String> list = new ArrayList<>();
        list.add("D:/1/jasndfjhamsfnaoihjsdfasd.tmp0");
        list.add("D:/1/jasndfjhamsfnaoihjsdfasd.tmp1");

        String targetPath = "D:/1/marge.pcm";


        FileInputStream in = null;
        FileOutputStream out = null;
        try {
            //新建一个目标文件对象
            File target = new File(targetPath);

            //实例化一个文件流输出对象
            out = new FileOutputStream(target);

            //循环读取要合并的文件集合
            for(String path:list) {

                //文件对象
                File file = new File(path);

                if (file.exists()) {

                    System.out.println("filePath:"+file.getAbsolutePath()+" file:"+file.length());

                    byte[] buf = new byte[1024];
                    int len = 0;
                    in = new FileInputStream(file);
                    while ((len = in.read(buf)) != -1) {
                        //写出数据
                        out.write(buf, 0, len);
                    }

                    if (in != null) {
                        in.close();
                    }
                }
            }


        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            if (out != null) {
                try {
                    out.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        }


    }

   
}