Many to Many Mapping in Hibernate

<div dir&equals;"ltr" style&equals;"text-align&colon; justify&semi;" trbidi&equals;"on">&NewLine;<div dir&equals;"ltr" style&equals;"text-align&colon; justify&semi;" trbidi&equals;"on">&NewLine;<div dir&equals;"ltr" style&equals;"text-align&colon; justify&semi;" trbidi&equals;"on">&NewLine;<div dir&equals;"ltr" style&equals;"text-align&colon; justify&semi;" trbidi&equals;"on">Many to many mapping in hibernate is required when each record in an entity may have many linked records in another entity and vice-versa&period;<&sol;p>&NewLine;<div align&equals;'center' id&equals;"ads-id"><&sol;div>&NewLine;<p>&NewLine; In this tutorial you will learn how to map <b>many-to-many<&sol;b> relationship using Hibernate&period; Consider the following relationship between <i>Vehicle <&sol;i>and <i>UserDetails<&sol;i><i style&equals;"color&colon; &num;20124d&semi;"><&sol;i> entity&period;<&sol;p>&NewLine;<p> &nbsp&semi; <&sol;p>&NewLine;<div class&equals;"separator" style&equals;"clear&colon; both&semi; text-align&colon; center&semi;"><img border&equals;"0" src&equals;"https&colon;&sol;&sol;i1&period;wp&period;com&sol;dineshonjava&period;com&sol;wp-content&sol;uploads&sol;2017&sol;04&sol;many-to-many&period;jpg" &sol;><&sol;div>&NewLine;<p><&sol;p>&NewLine;<div style&equals;"color&colon; &num;20124d&semi;">According to the relationship a user can have in any number of vehicles and the vehicle can have any number of users&period;<&sol;p>&NewLine;<p><b>UserDetail&period;java<&sol;b><&sol;p>&NewLine;<pre class&equals;"highlight" name&equals;"code">package com&period;sdnext&period;hibernate&period;tutorial&period;dto&semi; &NewLine; &NewLine;import java&period;util&period;ArrayList&semi; &NewLine;import java&period;util&period;Collection&semi; &NewLine; &NewLine;import javax&period;persistence&period;Column&semi; &NewLine;import javax&period;persistence&period;Entity&semi; &NewLine;import javax&period;persistence&period;GeneratedValue&semi; &NewLine;import javax&period;persistence&period;GenerationType&semi; &NewLine;import javax&period;persistence&period;Id&semi; &NewLine;import javax&period;persistence&period;ManyToMany&semi; &NewLine;import javax&period;persistence&period;Table&semi; &NewLine; &NewLine;<b>&commat;Entity &NewLine;&commat;Table &lpar;name&equals;"USER"&rpar;<&sol;b> &NewLine;public class UserDetails &NewLine;&lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; <b>&commat;Id &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &commat;Column&lpar;name&equals;"USER&lowbar;ID"&rpar; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &commat;GeneratedValue&lpar;strategy&equals;GenerationType&period;AUTO&rpar;<&sol;b> &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; private int&nbsp&semi;&nbsp&semi;&nbsp&semi; userId&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; <b>&commat;Column&lpar;name&equals;"USER&lowbar;NAME"&rpar; <&sol;b> &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; private String userName&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; <b>&commat;ManyToMany<&sol;b> &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; private Collection&lt&semi;Vehicle&gt&semi; vehicle &equals; new ArrayList&lt&semi;Vehicle&gt&semi;&lpar;&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public int getUserId&lpar;&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; return userId&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public Collection&lt&semi;Vehicle&gt&semi; getVehicle&lpar;&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; return vehicle&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public void setVehicle&lpar;Collection&lt&semi;Vehicle&gt&semi; vehicle&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; this&period;vehicle &equals; vehicle&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public void setUserId&lpar;int userId&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; this&period;userId &equals; userId&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public String getUserName&lpar;&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; return userName&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public void setUserName&lpar;String userName&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; this&period;userName &equals; userName&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&rcub;<&sol;pre>&NewLine;<&sol;div>&NewLine;<&sol;div>&NewLine;<p>&NewLine;<b>Vehicle&period;java<&sol;b><&sol;p>&NewLine;<p><&sol;p>&NewLine;<pre class&equals;"highlight" name&equals;"code">package com&period;sdnext&period;hibernate&period;tutorial&period;dto&semi; &NewLine; &NewLine;import java&period;util&period;ArrayList&semi; &NewLine;import java&period;util&period;Collection&semi; &NewLine; &NewLine;import javax&period;persistence&period;Column&semi; &NewLine;import javax&period;persistence&period;Entity&semi; &NewLine;import javax&period;persistence&period;GeneratedValue&semi; &NewLine;import javax&period;persistence&period;GenerationType&semi; &NewLine;import javax&period;persistence&period;Id&semi; &NewLine;import javax&period;persistence&period;ManyToMany&semi; &NewLine;import javax&period;persistence&period;Table&semi; &NewLine; &NewLine;<b>&commat;Entity &NewLine;&commat;Table&lpar;name&equals;"VEHICLE"&rpar;<&sol;b> &NewLine;public class Vehicle &NewLine;&lbrace;<b> &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &commat;Id &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &commat;GeneratedValue&lpar;strategy&equals;GenerationType&period;AUTO&rpar; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &commat;Column&lpar;name&equals;"VEHICLE&lowbar;ID"&rpar;<&sol;b> &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; private int vehicleId&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; <b>&commat;Column&lpar;name&equals;"VEHICLE&lowbar;NAME"&rpar;<&sol;b> &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; private String vehicleName&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; <b>&commat;ManyToMany&lpar;mappedBy&equals;"vehicle"&rpar;<&sol;b> &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; private Collection&lt&semi;UserDetails&gt&semi; user &equals; new ArrayList&lt&semi;UserDetails&gt&semi;&lpar;&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public Collection&lt&semi;UserDetails&gt&semi; getUser&lpar;&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; return user&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public void setUser&lpar;Collection&lt&semi;UserDetails&gt&semi; user&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; this&period;user &equals; user&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public int getVehicleId&lpar;&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; return vehicleId&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public void setVehicleId&lpar;int vehicleId&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; this&period;vehicleId &equals; vehicleId&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public String getVehicleName&lpar;&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; return vehicleName&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; public void setVehicleName&lpar;String vehicleName&rpar; &lbrace; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi; this&period;vehicleName &equals; vehicleName&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&rcub;<&sol;pre>&NewLine;<&sol;div>&NewLine;<p>&NewLine;<b style&equals;"color&colon; purple&semi;">hibernate&period;cfg&period;xml<&sol;b>&colon;<&sol;p>&NewLine;<p><&sol;p>&NewLine;<pre class&equals;"highlight" name&equals;"code">&lt&semi;hibernate-configuration&gt&semi; &NewLine; &lt&semi;session-factory&gt&semi; &NewLine; &lt&semi;&excl;-- Database connection settings --&gt&semi; &NewLine; &lt&semi;property name&equals;"connection&period;driver&lowbar;class"&gt&semi;com&period;mysql&period;jdbc&period;Driver&lt&semi;&sol;property&gt&semi; &NewLine; &lt&semi;property name&equals;"connection&period;url"&gt&semi;jdbc&colon;mysql&colon;&sol;&sol;localhost&colon;3306&sol;hibernateDB&lt&semi;&sol;property&gt&semi; &NewLine; &lt&semi;property name&equals;"connection&period;username"&gt&semi;root&lt&semi;&sol;property&gt&semi; &NewLine; &lt&semi;property name&equals;"connection&period;password"&gt&semi;root&lt&semi;&sol;property&gt&semi; &NewLine; &NewLine; &lt&semi;&excl;-- JDBC connection pool &lpar;use the built-in&rpar; --&gt&semi; &NewLine; &lt&semi;property name&equals;"connection&period;pool&lowbar;size"&gt&semi;1&lt&semi;&sol;property&gt&semi; &NewLine; &NewLine; &lt&semi;&excl;-- SQL dialect --&gt&semi; &NewLine; &lt&semi;property name&equals;"dialect"&gt&semi;org&period;hibernate&period;dialect&period;MySQLDialect&lt&semi;&sol;property&gt&semi; &NewLine; &NewLine; &lt&semi;&excl;-- Enable Hibernate's automatic session context management --&gt&semi; &NewLine; &lt&semi;property name&equals;"current&lowbar;session&lowbar;context&lowbar;class"&gt&semi;thread&lt&semi;&sol;property&gt&semi; &NewLine; &NewLine; &lt&semi;&excl;-- Disable the second-level cache --&gt&semi; &NewLine; &lt&semi;property name&equals;"cache&period;provider&lowbar;class"&gt&semi;org&period;hibernate&period;cache&period;NoCacheProvider&lt&semi;&sol;property&gt&semi; &NewLine; &NewLine; &lt&semi;&excl;-- Echo all executed SQL to stdout --&gt&semi; &NewLine; &lt&semi;property name&equals;"show&lowbar;sql"&gt&semi;true&lt&semi;&sol;property&gt&semi; &NewLine; &NewLine; &lt&semi;&excl;-- Drop and re-create the database schema on startup --&gt&semi; &NewLine; &lt&semi;property name&equals;"hbm2ddl&period;auto"&gt&semi;create&lt&semi;&sol;property&gt&semi; &NewLine; &NewLine; &NewLine; &lt&semi;mapping class&equals;"com&period;sdnext&period;hibernate&period;tutorial&period;dto&period;UserDetails"&gt&semi; &NewLine; &lt&semi;mapping class&equals;"com&period;sdnext&period;hibernate&period;tutorial&period;dto&period;Vehicle"&gt&semi; &NewLine; &NewLine; &lt&semi;&sol;mapping&gt&semi;&lt&semi;&sol;mapping&gt&semi;&lt&semi;&sol;session-factory&gt&semi; &NewLine; &lt&semi;&sol;hibernate-configuration&gt&semi; &NewLine;<&sol;pre>&NewLine;<&sol;div>&NewLine;<p><b>HibernateTestDemo&period;java<&sol;b><&sol;p>&NewLine;<pre class&equals;"highlight" name&equals;"code"><b>package com&period;sdnext&period;hibernate&period;tutorial&semi; &NewLine; &NewLine;import org&period;hibernate&period;Session&semi; &NewLine;import org&period;hibernate&period;SessionFactory&semi; &NewLine;import org&period;hibernate&period;cfg&period;AnnotationConfiguration&semi; &NewLine; &NewLine;import com&period;sdnext&period;hibernate&period;tutorial&period;dto&period;UserDetails&semi; &NewLine;import com&period;sdnext&period;hibernate&period;tutorial&period;dto&period;Vehicle&semi; &NewLine; &NewLine; &NewLine;public class HibernateTestDemo &lbrace; &NewLine; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&sol;&ast;&ast; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi; &ast; &commat;param args &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi; &ast;&sol; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;public static void main&lpar;String&lbrack;&rsqb; args&rpar; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&lbrace; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; UserDetails user &equals; new UserDetails&lpar;&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; UserDetails user2 &equals; new UserDetails&lpar;&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; Vehicle vehicle &equals; new Vehicle&lpar;&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; Vehicle vehicle2 &equals; new Vehicle&lpar;&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; vehicle&period;setVehicleName&lpar;"Car"&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; vehicle&period;getUser&lpar;&rpar;&period;add&lpar;user&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; vehicle&period;getUser&lpar;&rpar;&period;add&lpar;user2&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; vehicle2&period;setVehicleName&lpar;"Jeep"&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; vehicle2&period;getUser&lpar;&rpar;&period;add&lpar;user2&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; vehicle2&period;getUser&lpar;&rpar;&period;add&lpar;user&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; user&period;setUserName&lpar;"First User"&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; user2&period;setUserName&lpar;"Second User"&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; user&period;getVehicle&lpar;&rpar;&period;add&lpar;vehicle&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; user&period;getVehicle&lpar;&rpar;&period;add&lpar;vehicle2&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; user2&period;getVehicle&lpar;&rpar;&period;add&lpar;vehicle&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; user2&period;getVehicle&lpar;&rpar;&period;add&lpar;vehicle2&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; SessionFactory sessionFactory &equals; new AnnotationConfiguration&lpar;&rpar;&period;configure&lpar;&rpar;&period;buildSessionFactory&lpar;&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; Session session &equals; sessionFactory&period;openSession&lpar;&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; session&period;beginTransaction&lpar;&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; session&period;save&lpar;vehicle&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; session&period;save&lpar;vehicle2&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; session&period;save&lpar;user&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; session&period;save&lpar;user2&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; session&period;getTransaction&lpar;&rpar;&period;commit&lpar;&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi; &nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi; session&period;close&lpar;&rpar;&semi; &NewLine;&nbsp&semi;&nbsp&semi;&nbsp&semi; &rcub; &NewLine;&rcub;<&sol;b><&sol;pre>&NewLine;<p><b><br &sol;>&NewLine;<&sol;b><b><&sol;b> <br &sol;>&NewLine;<b>Using Mapping files instead of Annotation<&sol;b><b><&sol;b> <br &sol;>&NewLine;<b><br &sol;>&NewLine;<&sol;b> <b>userDetail&period;hbm&period;xml<&sol;b><&sol;p>&NewLine;<pre class&equals;"highlight" name&equals;"code">&lt&semi;hibernate-mapping&gt&semi; &NewLine; &lt&semi;class name&equals;"com&period;sdnext&period;hibernate&period;tutorial&period;dto&period;UserDetails" table&equals;"USER"&gt&semi; &NewLine; &lt&semi;id column&equals;"ID" name&equals;"userId" type&equals;"long"&gt&semi; &NewLine; &lt&semi;generator class&equals;"assigned"&gt&semi; &NewLine; &lt&semi;&sol;generator&gt&semi;&lt&semi;&sol;id&gt&semi; &NewLine; &lt&semi;property column&equals;"column" name&equals;"UserName"&gt&semi; &NewLine; &lt&semi;list cascade&equals;"all" name&equals;"vehicle" table&equals;"USER&lowbar;VEHICLE"&gt&semi; &NewLine; &lt&semi;key column&equals;"USER&lowbar;ID"&gt&semi; &NewLine; &lt&semi;many-to-many class&equals;"com&period;sdnext&period;hibernate&period;tutorial&period;dto&period;Vehicle" column&equals;"VEHICLE&lowbar;ID"&gt&semi; &NewLine; &lt&semi;&sol;many-to-many&gt&semi;&lt&semi;&sol;key&gt&semi;&lt&semi;&sol;list&gt&semi; &NewLine; &lt&semi;&sol;property&gt&semi;&lt&semi;&sol;class&gt&semi; &NewLine;&lt&semi;&sol;hibernate-mapping&gt&semi; &NewLine;<&sol;pre>&NewLine;<p><b>vehicle&period;hbm&period;xml<&sol;b><&sol;p>&NewLine;<pre class&equals;"highlight" name&equals;"code">&lt&semi;hibernate-mapping&gt&semi; &NewLine; &lt&semi;class name&equals;"com&period;sdnext&period;hibernate&period;tutorial&period;dto&period;Vehicle" table&equals;"VEHICLE"&gt&semi; &NewLine; &lt&semi;id column&equals;"ID" name&equals;"userId" type&equals;"long"&gt&semi; &NewLine; &lt&semi;generator class&equals;"assigned"&gt&semi; &NewLine; &lt&semi;&sol;generator&gt&semi;&lt&semi;&sol;id&gt&semi; &NewLine; &lt&semi;property column&equals;"VEHICLE&lowbar;NAME" name&equals;"vehicleName"&gt&semi; &NewLine; &lt&semi;&sol;property&gt&semi;&lt&semi;&sol;class&gt&semi; &NewLine;&lt&semi;&sol;hibernate-mapping&gt&semi;<&sol;pre>&NewLine;<p><&sol;p>&NewLine;<div style&equals;"color&colon; purple&semi;">&NewLine;<div style&equals;"color&colon; purple&semi;"><b>In <a href&equals;"https&colon;&sol;&sol;dineshonjava&period;com&sol;p&sol;cascadetypes-and-other-things&period;html" style&equals;"color&colon; &num;20124d&semi;">Next Chapter<&sol;a> we will discuss about the <a href&equals;"https&colon;&sol;&sol;dineshonjava&period;com&sol;p&sol;cascadetypes-and-other-things&period;html">Cascade Type&period;<&sol;a><&sol;b><br &sol;>&NewLine;<b><br &sol;>&NewLine;<&sol;b> <b>&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&nbsp&semi;&lt&semi;&lt&semi;<a href&equals;"https&colon;&sol;&sol;dineshonjava&period;com&sol;p&sol;hibernate-many-to-one-mapping-tutorial&period;html" style&equals;"font-family&colon; Times&comma; 'Times New Roman'&comma; serif&semi;">Previous Chapter 19<&sol;a>&lt&semi;&lt&semi; &nbsp&semi;&nbsp&semi; &gt&semi;&gt&semi;N<a href&equals;"https&colon;&sol;&sol;dineshonjava&period;com&sol;p&sol;cascadetypes-and-other-things&period;html" style&equals;"font-family&colon; Times&comma; 'Times New Roman'&comma; serif&semi;">ext Chapter21&gt&semi;&gt&semi;<&sol;a><&sol;b><br &sol;>&NewLine;<b><br &sol;>&NewLine;<&sol;b> <b><br &sol;>&NewLine;<&sol;b> <b><br &sol;>&NewLine;<&sol;b> <b><br &sol;>&NewLine;<&sol;b> <b><br &sol;>&NewLine;<&sol;b> <b><br &sol;>&NewLine;<&sol;b> <&sol;div>&NewLine;<&sol;div>&NewLine;<&sol;div>&NewLine;

View Comments