<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	
	>
<channel>
	<title>
	Comentarios en: Relaciones @OneToMany	</title>
	<atom:link href="https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/</link>
	<description>Software Architect &#38; FullStack developer</description>
	<lastBuildDate>Wed, 04 May 2022 04:29:51 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.5.9</generator>
	<item>
		<title>
		Por: oblancarte		</title>
		<link>https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-21113</link>

		<dc:creator><![CDATA[oblancarte]]></dc:creator>
		<pubDate>Wed, 04 May 2022 04:29:51 +0000</pubDate>
		<guid isPermaLink="false">https://www.oscarblancarteblog.com/?p=2555#comment-21113</guid>

					<description><![CDATA[En respuesta a &lt;a href=&quot;https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-20431&quot;&gt;Maxi&lt;/a&gt;.

Es correcto!!]]></description>
			<content:encoded><![CDATA[<p>En respuesta a <a href="https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-20431">Maxi</a>.</p>
<p>Es correcto!!</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: Maxi		</title>
		<link>https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-20431</link>

		<dc:creator><![CDATA[Maxi]]></dc:creator>
		<pubDate>Wed, 27 Apr 2022 13:37:42 +0000</pubDate>
		<guid isPermaLink="false">https://www.oscarblancarteblog.com/?p=2555#comment-20431</guid>

					<description><![CDATA[hola una consulta, si pones al customer con la propiedad cascade.ALL eso significa que cuando borres un invoice estarias borrando tambien el customer asociado?]]></description>
			<content:encoded><![CDATA[<p>hola una consulta, si pones al customer con la propiedad cascade.ALL eso significa que cuando borres un invoice estarias borrando tambien el customer asociado?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: oblancarte		</title>
		<link>https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-12440</link>

		<dc:creator><![CDATA[oblancarte]]></dc:creator>
		<pubDate>Fri, 13 Aug 2021 04:31:08 +0000</pubDate>
		<guid isPermaLink="false">https://www.oscarblancarteblog.com/?p=2555#comment-12440</guid>

					<description><![CDATA[En respuesta a &lt;a href=&quot;https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-12389&quot;&gt;Santiago&lt;/a&gt;.

Eso se resuelve con el patrón DTO, https://www.oscarblancarteblog.com/2018/11/30/data-transfer-object-dto-patron-diseno/

Dale una revisada al artículo y si tienes alguna duda me cuentas]]></description>
			<content:encoded><![CDATA[<p>En respuesta a <a href="https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-12389">Santiago</a>.</p>
<p>Eso se resuelve con el patrón DTO, <a href="https://www.oscarblancarteblog.com/2018/11/30/data-transfer-object-dto-patron-diseno/" rel="nofollow ugc">https://www.oscarblancarteblog.com/2018/11/30/data-transfer-object-dto-patron-diseno/</a></p>
<p>Dale una revisada al artículo y si tienes alguna duda me cuentas</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: Santiago		</title>
		<link>https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-12389</link>

		<dc:creator><![CDATA[Santiago]]></dc:creator>
		<pubDate>Tue, 03 Aug 2021 14:22:50 +0000</pubDate>
		<guid isPermaLink="false">https://www.oscarblancarteblog.com/?p=2555#comment-12389</guid>

					<description><![CDATA[Hola, primero agradezco mucho la información que nos compartes muy buena. Por favor quisiera que me ayudes con la siguiente consulta, tengo dos tablas persona y direcciones, obviamente una relación unidireccional uno a muchos, cuando realizo un get de clientes digamos unos 10, me devuelve siempre los datos de los clientes como sus direcciones, y si estas direcciones tuvieran por ejemplo varios teléfonos sacarían los teléfonos. Como se puede realizar un servicio para que sólo traiga la información del cliente.

@Entity
@Data
public class Persona implements java.io.Serializable {
    
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;
    
    @Column(nullable = false, length = 80)
    private String nombres;
    
    @Column(nullable = false)
    private LocalDate fechaNacimiento;
    
    @Column(nullable = false, unique = true)
    private String identificacion;
    
    @Column(nullable = false)
    private String email;
    
    @OneToMany(cascade = CascadeType.ALL)
    @JoinColumn(name = &quot;persona_id&quot;)
    private List direcciones = new ArrayList();
    
}

----------------------------------------------------------

@Entity
@Data
public class Direccion {
    
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;
    
    @Column
    private String callePrincipal;
    
    @Column
    private String calleSecundaria;
    
    @Column
    private String numero;
    
    @Column 
    private String codigoPostal;
}]]></description>
			<content:encoded><![CDATA[<p>Hola, primero agradezco mucho la información que nos compartes muy buena. Por favor quisiera que me ayudes con la siguiente consulta, tengo dos tablas persona y direcciones, obviamente una relación unidireccional uno a muchos, cuando realizo un get de clientes digamos unos 10, me devuelve siempre los datos de los clientes como sus direcciones, y si estas direcciones tuvieran por ejemplo varios teléfonos sacarían los teléfonos. Como se puede realizar un servicio para que sólo traiga la información del cliente.</p>
<p>@Entity<br />
@Data<br />
public class Persona implements java.io.Serializable {</p>
<p>    @Id<br />
    @GeneratedValue(strategy = GenerationType.AUTO)<br />
    private Long id;</p>
<p>    @Column(nullable = false, length = 80)<br />
    private String nombres;</p>
<p>    @Column(nullable = false)<br />
    private LocalDate fechaNacimiento;</p>
<p>    @Column(nullable = false, unique = true)<br />
    private String identificacion;</p>
<p>    @Column(nullable = false)<br />
    private String email;</p>
<p>    @OneToMany(cascade = CascadeType.ALL)<br />
    @JoinColumn(name = &#8220;persona_id&#8221;)<br />
    private List direcciones = new ArrayList();</p>
<p>}</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>@Entity<br />
@Data<br />
public class Direccion {</p>
<p>    @Id<br />
    @GeneratedValue(strategy = GenerationType.AUTO)<br />
    private Long id;</p>
<p>    @Column<br />
    private String callePrincipal;</p>
<p>    @Column<br />
    private String calleSecundaria;</p>
<p>    @Column<br />
    private String numero;</p>
<p>    @Column<br />
    private String codigoPostal;<br />
}</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: oblancarte		</title>
		<link>https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-9984</link>

		<dc:creator><![CDATA[oblancarte]]></dc:creator>
		<pubDate>Mon, 15 Feb 2021 18:12:37 +0000</pubDate>
		<guid isPermaLink="false">https://www.oscarblancarteblog.com/?p=2555#comment-9984</guid>

					<description><![CDATA[En respuesta a &lt;a href=&quot;https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-9712&quot;&gt;cristhian&lt;/a&gt;.

Hola Cristhian, quizás entendiste mal el concepto, en realidad las anotaciones @ManyToOne y @OneToMany no son intercambiables, es decir, no es que por que sea mala una vas a usar la otra, por que no sirve para lo mismo, una es para el manejo de colecciones y la otra para relaciones a una Entidad, mi sugerencia es que ignores eso que leite y solo diseña las entidades para que te funcionen, con el tiempo aprenderás a dominarlas y podrás comprender cuando es mejor una que otra, así que mi recomendación es esa, por ahora enfocate en que funcione, luego lo perfeccionas.]]></description>
			<content:encoded><![CDATA[<p>En respuesta a <a href="https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-9712">cristhian</a>.</p>
<p>Hola Cristhian, quizás entendiste mal el concepto, en realidad las anotaciones @ManyToOne y @OneToMany no son intercambiables, es decir, no es que por que sea mala una vas a usar la otra, por que no sirve para lo mismo, una es para el manejo de colecciones y la otra para relaciones a una Entidad, mi sugerencia es que ignores eso que leite y solo diseña las entidades para que te funcionen, con el tiempo aprenderás a dominarlas y podrás comprender cuando es mejor una que otra, así que mi recomendación es esa, por ahora enfocate en que funcione, luego lo perfeccionas.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: cristhian		</title>
		<link>https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-9712</link>

		<dc:creator><![CDATA[cristhian]]></dc:creator>
		<pubDate>Fri, 05 Feb 2021 23:01:22 +0000</pubDate>
		<guid isPermaLink="false">https://www.oscarblancarteblog.com/?p=2555#comment-9712</guid>

					<description><![CDATA[Hola buena tarde soy nuevo en esto de jpa  y  tengo una consulta estoy creando una aplicación sencilla para un inventario ya tengo mi base de datos relacionada en la gran mayoría las relaciones me ha salido de uno a muchos  pero viendo información de internet y tutoriales algunos recomienda no usar muchas relaciones OneToMany entonces con base en esa información decidí utilizar en todas mis entidades la relacion ManytoOne quería saber tu opinión ya que estoy algo confundido.]]></description>
			<content:encoded><![CDATA[<p>Hola buena tarde soy nuevo en esto de jpa  y  tengo una consulta estoy creando una aplicación sencilla para un inventario ya tengo mi base de datos relacionada en la gran mayoría las relaciones me ha salido de uno a muchos  pero viendo información de internet y tutoriales algunos recomienda no usar muchas relaciones OneToMany entonces con base en esa información decidí utilizar en todas mis entidades la relacion ManytoOne quería saber tu opinión ya que estoy algo confundido.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: oblancarte		</title>
		<link>https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-8331</link>

		<dc:creator><![CDATA[oblancarte]]></dc:creator>
		<pubDate>Thu, 05 Nov 2020 04:45:42 +0000</pubDate>
		<guid isPermaLink="false">https://www.oscarblancarteblog.com/?p=2555#comment-8331</guid>

					<description><![CDATA[En respuesta a &lt;a href=&quot;https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-8280&quot;&gt;Edwin Rebaza C&lt;/a&gt;.

Ese problema es muy frecuenta entre prinsipiantes con JPA, el problema es que cuando vas a relacionar una Entidad que ya existe, debes primero de agregarlo al contexto de persitencia mediante manager.find(), una vez que lo cargues, tendrás que reemplazar ese reemplazar el TipoVehiculo por el que te regrese el método find. En mi curso de Mastering JPA con Hibernate explico el ciclo de vida de las entidades a la perfección y vemos ejemplos de esto que comentas, por si quieres darle una revisada: https://codmind.com/courses/jpa]]></description>
			<content:encoded><![CDATA[<p>En respuesta a <a href="https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-8280">Edwin Rebaza C</a>.</p>
<p>Ese problema es muy frecuenta entre prinsipiantes con JPA, el problema es que cuando vas a relacionar una Entidad que ya existe, debes primero de agregarlo al contexto de persitencia mediante manager.find(), una vez que lo cargues, tendrás que reemplazar ese reemplazar el TipoVehiculo por el que te regrese el método find. En mi curso de Mastering JPA con Hibernate explico el ciclo de vida de las entidades a la perfección y vemos ejemplos de esto que comentas, por si quieres darle una revisada: <a href="https://codmind.com/courses/jpa" rel="nofollow ugc">https://codmind.com/courses/jpa</a></p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: Edwin Rebaza C		</title>
		<link>https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-8280</link>

		<dc:creator><![CDATA[Edwin Rebaza C]]></dc:creator>
		<pubDate>Sun, 01 Nov 2020 03:30:21 +0000</pubDate>
		<guid isPermaLink="false">https://www.oscarblancarteblog.com/?p=2555#comment-8280</guid>

					<description><![CDATA[Hola Oscar, buenas noches, espero te encuentres bien, me ha ayudado mucho tus articulos pero tengo una situacion que me ha salido, en la construccion de una aplicacion tengo una entidad que se llama &quot;Vehiculo&quot; y dentro de esta entidad vehiculo tengo un atributo que se llama &quot;tipo vehiculo&quot; lo tengo de esta manera

@ManyToOne(optional = false, cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@JoinColumn(name=&quot;id_tipo_vehi&quot; )
private TipoVehiculo tipoVehiculo;

Funciona bien cuando los valores en las 2 entidades son nuevos.
La cantidad de tipos de vehiculos son mucho menores a los vehiculos, el tema es que cuando quiero ingresar un nuevo &quot;vehiculo&quot; con un &quot;tipo vehiculo&quot; que ya existe me sale error de llave duplicada en la tabla &quot;TipoVehiculo&quot;, como podria solucionar este incoveniente, agradecera mucho tu ayuda.]]></description>
			<content:encoded><![CDATA[<p>Hola Oscar, buenas noches, espero te encuentres bien, me ha ayudado mucho tus articulos pero tengo una situacion que me ha salido, en la construccion de una aplicacion tengo una entidad que se llama &#8220;Vehiculo&#8221; y dentro de esta entidad vehiculo tengo un atributo que se llama &#8220;tipo vehiculo&#8221; lo tengo de esta manera</p>
<p>@ManyToOne(optional = false, cascade = CascadeType.ALL, fetch = FetchType.LAZY)<br />
@JoinColumn(name=&#8221;id_tipo_vehi&#8221; )<br />
private TipoVehiculo tipoVehiculo;</p>
<p>Funciona bien cuando los valores en las 2 entidades son nuevos.<br />
La cantidad de tipos de vehiculos son mucho menores a los vehiculos, el tema es que cuando quiero ingresar un nuevo &#8220;vehiculo&#8221; con un &#8220;tipo vehiculo&#8221; que ya existe me sale error de llave duplicada en la tabla &#8220;TipoVehiculo&#8221;, como podria solucionar este incoveniente, agradecera mucho tu ayuda.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: oblancarte		</title>
		<link>https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-6827</link>

		<dc:creator><![CDATA[oblancarte]]></dc:creator>
		<pubDate>Mon, 25 May 2020 22:22:53 +0000</pubDate>
		<guid isPermaLink="false">https://www.oscarblancarteblog.com/?p=2555#comment-6827</guid>

					<description><![CDATA[En respuesta a &lt;a href=&quot;https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-6821&quot;&gt;Arnoldo Rosales Reyes&lt;/a&gt;.

Puedes definir la cascada para indicarle que Entidades se deben de persistir en cascada y cuales no, lo que si no sabría decirte con certeza es si puede decir en que orden se deben de insetar, por lo que yo sé, no se puede, y es que al final, el orden no debería de ser un problema, pues JPA es lo suficientemente inteligente para determinar la jerarquía de dependecias para insertar las entidades en el orden correcto.]]></description>
			<content:encoded><![CDATA[<p>En respuesta a <a href="https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-6821">Arnoldo Rosales Reyes</a>.</p>
<p>Puedes definir la cascada para indicarle que Entidades se deben de persistir en cascada y cuales no, lo que si no sabría decirte con certeza es si puede decir en que orden se deben de insetar, por lo que yo sé, no se puede, y es que al final, el orden no debería de ser un problema, pues JPA es lo suficientemente inteligente para determinar la jerarquía de dependecias para insertar las entidades en el orden correcto.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: Arnoldo Rosales Reyes		</title>
		<link>https://www.oscarblancarteblog.com/2018/12/20/relaciones-onetomany/#comment-6821</link>

		<dc:creator><![CDATA[Arnoldo Rosales Reyes]]></dc:creator>
		<pubDate>Mon, 25 May 2020 04:43:15 +0000</pubDate>
		<guid isPermaLink="false">https://www.oscarblancarteblog.com/?p=2555#comment-6821</guid>

					<description><![CDATA[Hola Oscar, quiero agradecerte por tan excelente articulo y de mucha ayuda para los principiantes, podrías apoyarme con un problema que tengo, Cannot add or update a child row: a foreign key constraint fails (`argentap_ArgentaGeneral`.`detalle_compras`, CONSTRAINT `detalle_compras_ibfk_1` FOREIGN KEY (`Folio_Compra`) REFERENCES `compras` (`Folio_Compra`)) ... tengo varios objetos que se persisten a la hora de ejecutar el persist, para mi caso Compras --&#062; oneToMany (detalle_compras) --&#062; OnetoOne(Inventario), creo que tengo correctamente programado mis entities ya que si elimino la llave foránea en la base de datos SI funciona, hay forma de decirle a la aplicación en que orden me guarde los objetos? primero me cree los registros en compras o Inventarios, y al final en detalle_compras, te lo agradecería mucho, saludos!]]></description>
			<content:encoded><![CDATA[<p>Hola Oscar, quiero agradecerte por tan excelente articulo y de mucha ayuda para los principiantes, podrías apoyarme con un problema que tengo, Cannot add or update a child row: a foreign key constraint fails (`argentap_ArgentaGeneral`.`detalle_compras`, CONSTRAINT `detalle_compras_ibfk_1` FOREIGN KEY (`Folio_Compra`) REFERENCES `compras` (`Folio_Compra`)) &#8230; tengo varios objetos que se persisten a la hora de ejecutar el persist, para mi caso Compras &#8211;&gt; oneToMany (detalle_compras) &#8211;&gt; OnetoOne(Inventario), creo que tengo correctamente programado mis entities ya que si elimino la llave foránea en la base de datos SI funciona, hay forma de decirle a la aplicación en que orden me guarde los objetos? primero me cree los registros en compras o Inventarios, y al final en detalle_compras, te lo agradecería mucho, saludos!</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
