2
respuestas

Duda en las dependencias

Hola, alguien sabe por que me aparece este error en las dependencias, gracias.

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

2 respuestas

Hola Edgar,

Por lo que veo, tienes problemas con la versión con las dependencias de tu proyecto. Sin embargo, no puedo ver la mensaje error en la image que has compartido, lo que dificulta un poco el diagnóstico del problema.

Pero un error común en este tipo de situaciones puede ser no tener las dependencias correctas en tu archivo pom.xml. Otra posible causa del error puede ser un problema con la configuración de tu base de datos en el archivo persistence.xml. Asegúrate de que los detalles de la base de datos (URL, usuario, contraseña, etc.) sean correctos.

Finalmente, si el error persiste, te recomendaría que intentes limpiar y construir tu proyecto de nuevo. En Maven, puedes hacerlo con el comando mvn clean install.

Espero que estas sugerencias te ayuden a resolver el problema. Mucho éxito en todo lo que te propongas y si tienes alguna duda aquí estaremos para apoyarte.

¡Vamos juntos!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios

Hola Adriana, te comparto mis codigos, eclipse ya no se queja de nada pero sigo sin compilar bien.

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.latam.alura.tienda</groupId>
  <artifactId>tienda</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  
  <build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.0</version>
            <configuration>
                <release>11</release>
            </configuration>
        </plugin>
    </plugins>
</build>

<dependencies>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-entitymanager</artifactId>
        <version>5.6.14.Final</version>
    </dependency>

    <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>           
        <version>2.1.214</version>
    </dependency>
</dependencies>
</project>
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.2"
    xmlns="http://xmlns.jcp.org/xml/ns/persistence"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_2.xsd">
    <persistence-unit name="tienda" transaction-type="RESOURCE_LOCAL">
        
            <properties>
                <property name="javax.persistence.jdbc.driver" value="org.h2.Driver"/>
                <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:tienda"/>
                <property name="javax.persistence.jdbc.user" value="sa"/> 
            <property name="javax.persistence.jdbc.password" value=""/> 
            
            <property name="hibernate.dialect" value="org.hiernate.dialect.H2Dialect"/>
        </properties>
    </persistence-unit>	
</persistence>
package com.latam.alura.tienda.modelo;

import java.math.BigDecimal;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity                    //Para que reconozca clase que representa a nuestras entidades
@Table(name="productos")   //Para indicar la diferencia entre la tabla y nuestra clase Producto
public class Producto {
    
    @Id       //Le indica a nuestro proyecto cuál va a ser el id o el identificador de cada una de esas filas
    @GeneratedValue(strategy=GenerationType.IDENTITY)   //Con .IDETITY tenemos nuestro id configura para  
    private Long id;									//representar la llave primaria en nuestra tabla.
    //@Column(name="nombres")     Por si hay un atributo que sea diferente como el caso de @Table
    private String nombre;
    private String description;
    private BigDecimal precio;
    
    
    
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public String getNombre() {
        return nombre;
    }
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
    public String getDescription() {
        return description;
    }
    public void setDescription(String description) {
        this.description = description;
    }
    public BigDecimal getPrecio() {
        return precio;
    }
    public void setPrecio(BigDecimal precio) {
        this.precio = precio;
    }
    
}
package com.latam.alura.tienda.prueba;

import java.math.BigDecimal;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

import com.latam.alura.tienda.modelo.Producto;

public class RegistroDeProducto {
    public static void main(String[] args)  {
        
        Producto celular = new Producto();
        
        celular.setNombre("Samsung");
        celular.setDescription("Telefono usado");
        celular.setPrecio(new BigDecimal("1000"));
        
        
        //Esta clase permite crear una clase que va a ser guardada dentro de esa interfase 
        EntityManagerFactory factory = Persistence.createEntityManagerFactory("tienda"); //Es un metodo estatico   
        EntityManager em = factory.createEntityManager();  //factory. cr.... instancia una clase del tipo EntityManager	
        //Esta entidad nos permite realizar las operaciones con la base de datos, hacer la conexion, consultas con SQL,
        //cerrar la conexion, etc. Como esta es una interfaz recibe valores de otras claves
        em.getTransaction().begin();
        em.persist(celular);   //Esta primera persistencia me permite guardar el valor del producto en la base d datos
                               //Para persistir 
        em.getTransaction().commit();
        em.close();
        
        
    }

}

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad