как использовать предоставленное имя пользователя и пароль для чтения файла в Java

Нет, это небезопасно.

Несмотря на максимальные усилия Быть в спящем режиме команды, Вы просто не можете полагаться на автоматические обновления в производстве . Запишите свои собственные патчи, рассмотрите их с DBA, протестируйте их, затем примените их вручную.

Теоретически, если обновление hbm2ddl работало в разработке, оно должно работать в производстве также. Но в действительности, это не всегда имеет место.

, Даже если это работало хорошо, это может быть субоптимальным. DBAs заплачены так очень по причине.

5
задан Jacob Mattison 19 October 2009 в 15:14
поделиться

2 ответа

Вы можете создать общий сетевой ресурс, а затем подключиться через jCIFS

import java.io.IOException;
import java.net.MalformedURLException;
import java.net.UnknownHostException;

import jcifs.smb.SmbException;
import jcifs.smb.SmbFileInputStream;

public class Example
{
    public static void main(String[] args)
    {
        SmbFileInputStream fis = null;
        try
        {
            fis = new SmbFileInputStream("smb://DOMAIN;USERNAME:PASSWORD@SERVER/SHARE/filename.txt");
            // handle as you would a normal input stream... this example prints the contents of the file
            int length;
            byte[] buffer = new byte[1024];
            while ((length = fis.read(buffer)) != -1)
            {
                for (int x = 0; x < length; x++)
                {
                    System.out.print((char) buffer[x]);
                }
            }
        }
        catch (MalformedURLException e)
        {
            e.printStackTrace();
        }
        catch (UnknownHostException e)
        {
            e.printStackTrace();
        }
        catch (SmbException e)
        {
            e.printStackTrace();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
        finally
        {
            if (fis != null)
            {
                try
                {
                    fis.close();
                }
                catch (Exception ignore)
                {
                }
            }
        }
    }
}
4
ответ дан 15 December 2019 в 01:05
поделиться

Если файлы находятся в общей сетевой папке, вы можете использовать инструмент net . С помощью

runtime.exec("net use ...")

открывать и закрывать долю. Думаю, это должно сработать

0
ответ дан 15 December 2019 в 01:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: