Saltar al contenido
Portada » Acceso SAMBA con jCIFS

Acceso SAMBA con jCIFS

Para escribir ficheros en un recurso de red compartido de un servidor Windows podemos utilizar el protocolo CIFS/SMB, es decir, el acceso SAMBA podemos hacerlo con jCIFS. Para llevarlo a cabo vamos a mostrar ejemplos usando la librería jCIFS que implementa este protocolo, esta hecha en java, y es opensource.

Incorpora la librería a tu proyecto

Para incluir la librería jCIFS en tu proyecto puedes hacerlo directamente en el pom.xml de tu proyecto maven:

<dependency>
	<groupId>org.codelibs</groupId>
	<artifactId>jcifs</artifactId>
	<version>2.1.7</version>
</dependency>

Ejemplo de uso: Subir Fichero

 public static void subirFichero(Path ficheroOrigen, String pathDestino, String nombreFichero)
     throws SmbException, UnknownHostException, IOException 
{
   String dominio="midominio.int";
   String usuario= "usuario";
   String contrasenya="pass";
   NtlmPasswordAuthentication credenciales= new NtlmPasswordAuthentication(dominio, usuario, contrasenya);
   SmbFile ficheroDestino= new SmbFile(pathDestino, credenciales);
   ficheroDestino.mkdirs();
   ficheroDestino= new SmbFile(pathDestino + nombreFichero, credenciales);
   SmbFileOutputStream sfos = new SmbFileOutputStream(ficheroDestino);
   sfos.write(Files.readAllBytes(ficheroOrigen));
 }

Más recursos Java de redes y comunicaciones

TemaDescripción
SocketsAprende lo básico sobre sockets en Java, construye tus protocolos.
WebsocketsConstruye un endpoint en Java al que conectar mediante Websockets.
FTPCódigo para implementar en Java un cliente FTP
IMAPCliente IMAP escrito en Java.
SMB/jCIFSUso de jCIFS para el acceso a recursos de red compartidos mediante SAMBA
Send Mail JavaEnvío de correos electrónicos a través de JavaMail API

Recursos Java básicos

AsuntoDescripción
Tutorial básico y sintaxisTutorial básico Java y sintaxis. Aprende los fundamentos del lenguaje.
Hilos (Threads)Aprende a manejar hilos y las cuestiones básicas de la concurrencia
Funciones LambdaAquí te enseñamos las nociones más importantes para arrancas con funciones lambda
PalíndromosPrograma de ejemplo para el uso de palíndromos en Java.
Máquina Virtual de JavaTe explicamos el funcionamiento de la máquina virtual de java (Java Virtual Machine – JVM)
JDK, JRE y JVMDiferencias entre el JDK, JRE y JVM.
Mejores libros Java en EspañolHazte con los mejores libros Java para aprender paso a paso y profundizar en las mejores prácticas
TensorFlowManejo del API de TensorFlow para la construcción de grafos de operaciones y su ejecución
Tutorial Log4jTutorial para el manejo de Log4j, herramienta ágil y flexible para la gestión de Logs en Java
Java SecurityEntiende y aplica las posibilidades que da Java para mantener la seguridad
Tutorial JConsoleAprende los conceptos básicos de monitorización de procesos Java con JConsole
JavaFXTutorial de JavaFX, librería gráfica moderna para construcción de GUIs en móvil, escritorio y web.
Estructuras de datos en JavaExplicación y ejemplos de las estructuras de datos más importantes: listas, pila, cola, arbol.
JavaapiConjunto de clases, interfaces, métodos y paquetes que forman parte de la plataforma Java estándar
Algoritmo HuffmanMétodo eficiente para codificar datos, asignando códigos más cortos a los caracteres más frecuentes