Search
Search titles only
By:
Search titles only
By:
Log in
Register
Search
Search titles only
By:
Search titles only
By:
Menu
Install the app
Install
Forums
New posts
All threads
Latest threads
New posts
Trending threads
Trending
Search forums
What's new
New posts
New ads
New profile posts
Latest activity
Free Ads
Latest reviews
Search ads
Members
Current visitors
New profile posts
Search profile posts
Contact us
Latest ads
Ad icon
ZTE MF283U 4G Unlocked Router (Used)
ayanthamaxi
Updated:
Sunday at 8:26 PM
ලංකාවේ හොඳම උපකාරක පන්ති සහ ගුරුවරුන් එකම තැනකින් - TopTuition.lk
dulithapathum
Updated:
Saturday at 8:07 AM
Colombo
RidhMathraa ’26 🎶✨
Tmadhusanka
Updated:
Wednesday at 11:58 PM
Ad icon
Colombo
PXN V10 Pro Direct Drive Racing Wheel (Under Warranty)
Abdur Rahman
Updated:
Wednesday at 10:23 PM
Ad icon
USDT ණය සේවාව - USDT Loan Service
පුරවැසියා
Updated:
Wednesday at 4:54 PM
Electronics
Vehicles
Property
Search
Reply to thread
Forums
Computers & Internet
Software Development
java web development 8 කොටස - Hibernate
Get the App
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Message
<blockquote data-quote="J Sparrow" data-source="post: 19513213" data-attributes="member: 387729"><p><span style="font-size: 18px"><span style="color: Navy">හොඳයි! ඔන්න කලින් lesson එකෙන් promise උනා වගේ අද lesson එක කරන්නේ Hibernate ගැන. <img src="/styles/default/xenforo/smilies/default/love.gif" class="smilie" loading="lazy" alt=":love:" title="Love :love:" data-shortname=":love:" /></span></span><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/twShF9t.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Navy">මුලින්ම බලමු Hibernate කියන්නේ මොකද්ද කියලා. </span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Red">** <strong>Hibernate කියන්නේ Framework එකක්.</strong> </span></span></p><p><span style="font-size: 18px"><span style="color: Red">** දැනට තියෙන <strong>හොඳම object/relational persistence (ORM) tool එකක්</strong> කිව්වොත් හරියටම හරි.</span></span></p><p><span style="font-size: 18px"><span style="color: Red">** <strong>java වලට වගේම .net වලටත්</strong> මේ වෙනකොට Hibernate support කරනවා.</span></span></p><p><span style="font-size: 18px"><span style="color: Red"><span style="color: Navy">ඉතිං දැං ඔය .net පොරවල් ටිකත් මේ පැත්තේ ආවට කාරියක් නෑ ඕං! <img src="/styles/default/xenforo/smilies/default/yes.gif" class="smilie" loading="lazy" alt=":yes:" title="Yes :yes:" data-shortname=":yes:" /></span></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Red">** මේක <strong>හරිම smooth</strong> බොලව්! <strong>relational database handling මාරම විදියට simplify</strong> කරලා තියෙන්නේ. ඒ වගේම <strong>හරිම elegant ඇන්ඩ් innovative.</strong></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Navy">කරගෙන යද්දී බොලාටම තේරෙයි! ඔන්න හැඳින්වීම ඉවරයි. <strong>අපි කරන්න යන්නේ Hibernate3.</strong></span> </span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Red">** Web developing වලට Hibernate ඕනේම කියලා එකක් නෑ. <img src="/styles/default/xenforo/smilies/default/dull.gif" class="smilie" loading="lazy" alt=":dull:" title="Dull :dull:" data-shortname=":dull:" /></span></span></p><p><span style="font-size: 18px"><span style="color: Navy">නමුත් හැමදාම SQL කොට කොට ඉන්නවට වඩා අළුත් දෙයක් ඉගෙන ගන්න එක හොඳා.....යි! <img src="/styles/default/xenforo/smilies/default/yes.gif" class="smilie" loading="lazy" alt=":yes:" title="Yes :yes:" data-shortname=":yes:" /></span></span></p><p><span style="font-size: 18px"><span style="color: Navy">අහ්! තව එකක්, <strong> Hibernate කියන්නේ Web developing වලට විතරක් use වෙන framework එකක් නෙමෙයි.</strong></span> </span></p><p><span style="font-size: 18px"><span style="color: Navy"><strong>Desktop application development, Middle-ware development මෙකී නොකී සියලූම database එකක් connect වෙන development</strong> "හු" යන්නවල් වලට use කරගන්න පුලුවන්. <img src="/styles/default/xenforo/smilies/default/cool.gif" class="smilie" loading="lazy" alt=":cool:" title="Cool :cool:" data-shortname=":cool:" /></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px">ඔන්න වැඩේට බැස්සා.</span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Navy"><strong>වෙනසකටත් එක්ක Desktop application එකක් use කරගෙන මේක කරගෙන යමු. </strong></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Navy">නෑ නෑ! </span></span></p><p><span style="font-size: 18px"><span style="color: Navy"></span></span></p><p><span style="font-size: 18px"><span style="color: Navy"><strong>වෙනසක් ඇත්තෙම නෑ! මේක මේ විදියටම Web application එකකත් use කරන්න පුළුවන් </strong>බොලව්.</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><strong><span style="color: DarkGreen">1 - Database schema එක හදා ගමු!</span></strong></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkGreen">මතක ඇතිනේ කලින් lesson එකක මේක අපි කලා? MySQL admin open කලා, අළුතෙන් database schema එක හදාගන්නවා inventory කියලා. </span></span></p><p><span style="font-size: 18px"><span style="color: DarkGreen"></span></span></p><p><span style="font-size: 18px"><span style="color: DarkGreen">මේ? දැක්කනේ?</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/pmwm0I8.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkGreen">දැන් MySQL query browser එක open කරලා, මෙන්න මේ script එක run කරගන්න ඕනේ. </span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray">DROP TABLE IF EXISTS `stock`;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray">CREATE TABLE `stock` (</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> `STOCK_ID` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> `STOCK_CODE` VARCHAR(10) NOT NULL,</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> `STOCK_NAME` VARCHAR(20) NOT NULL,</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> PRIMARY KEY (`STOCK_ID`) USING BTREE,</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> UNIQUE KEY `UNI_STOCK_NAME` (`STOCK_NAME`),</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> UNIQUE KEY `UNI_STOCK_ID` (`STOCK_CODE`) USING BTREE</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray">) ENGINE=InnoDB DEFAULT CHARSET=utf8;</span></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="color: DarkGreen">දන්නේ නැත්තන් ඕන්න තියෙනවා කරන හැටි.</span> <img src="/styles/default/xenforo/smilies/default/wink.gif" class="smilie" loading="lazy" alt=";)" title="Wink ;)" data-shortname=";)" /></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/NUULOlJ.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"><span style="color: Red"></span></span></p><p><span style="font-size: 18px"><span style="color: Red">** අහ්! මතක ඇතුව අදාල schema එක select කරලා ඕක execute කරපල්ලා.</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkGreen">පේනවනේ, අළුතෙන් table එකක් හැදිලා තියෙනවා? ඕක execute කරන්නේ නැතුව ඉතිං අපිට manually table එකක් හදන්න තිබ්බා. ඒත් ඉතිං මොනවටද බොලව් නිකන් කාලේ කන්නේ.</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><strong><span style="color: Indigo">2 - project එක හදමු.</span></strong></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Indigo">ළමායි, දැං STS (Spring tool suit) open කරගමූ.</span></span></p><p><span style="font-size: 18px"><span style="color: Indigo"></span></span></p><p><span style="font-size: 18px"><span style="color: Indigo">Okay? </span></span></p><p><span style="font-size: 18px"><span style="color: Indigo"></span></span></p><p><span style="font-size: 18px"><span style="color: Indigo">Then... හරිම simple. <strong>Normal java project එකක්</strong> තමයි හදන්න තියෙන්නේ.</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray">File --> New -- > Java Project</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/HA3A4y5.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Indigo">ඔන්න මම <strong>project එක name කරනවා inventory කියලා.</strong></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/Te20a4T.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Indigo">ඔන්න තියෙනවා project එක.</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/otutuyb.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Indigo">දැන් මම <strong> src folder එක ඇතුලේ com.inventory.common කියලා package එකක් හදලා, ඒ package එක ඇතුලේ class එකක් හදා ගන්නවා App කියලා.</strong></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/v6x5dM6.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Indigo">ඔන්න basic project structure එක හදන් ඉවරායි!</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><strong><span style="color: DarkRed">3 - Dependency (jar files) add කරමු!</span></strong></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Red">** මේ project එකට අපිට specially ඕනේ කරන jar files තියෙනවා පුතාලා, ආන්න එව්වා ටික හොයලා ඇඩ් කරගන්න එක බොලාලට බාරයි. </span></span></p><p><span style="font-size: 18px"><span style="color: Red"></span> </span></p><p><span style="font-size: 18px"><span style="color: DarkRed">jar file එකේ නම google එකේ කොටලා ලේසියෙන්ම ඒ වැඩේ කරගන්න පුළුවන්.</span></span></p><p><span style="font-size: 18px"><span style="color: DarkRed"></span></span></p><p><span style="font-size: 18px"><span style="color: DarkRed">කලින් මම කියලා දීලා තියෙනවානේ project එකකට jar files add කරන හැටි? දැං ඒවා සිහි කරගනිව්! <img src="/styles/default/xenforo/smilies/default/D.gif" class="smilie" loading="lazy" alt=":D" title="Big grin :D" data-shortname=":D" /></span></span></p><p><span style="font-size: 18px"><span style="color: DarkRed"></span></span></p><p><span style="font-size: 18px"><span style="color: DarkRed">ඔන්න ළමයිනේ... </span></span></p><p><span style="font-size: 18px"><span style="color: DarkRed"><strong>පහල දාලා තියෙන්නේ, ඕනේ කරන jar files ටිකයි, ඒවයේ version ටිකයි</strong>. බලලා හදලා බාගනිව්!</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: YellowGreen">* MySQL database driver</span></span></p><p><span style="font-size: 18px"><span style="color: Sienna">1 - mysql-connector-java --> 5.1.9</span></span></p><p><span style="font-size: 18px"><span style="color: Sienna"></span></span></p><p><span style="font-size: 18px"><span style="color: Sienna"><span style="color: YellowGreen">* Hibernate framework</span></span></span></p><p><span style="font-size: 18px"><span style="color: Sienna">2 - hibernate3 --> 3.2.3.GA</span></span></p><p><span style="font-size: 18px"><span style="color: Sienna"></span></span></p><p><span style="font-size: 18px"><span style="color: Sienna"><span style="color: YellowGreen">* Hibernate library dependency</span></span></span></p><p><span style="font-size: 18px"><span style="color: Sienna">3 - dom4j --> 1.6.1</span></span></p><p><span style="font-size: 18px"><span style="color: Sienna">4 - commons-collections --> 3.2.1</span></span></p><p><span style="font-size: 18px"><span style="color: Sienna">5 - cglib --> 2.2</span></span></p><p><span style="font-size: 18px"><span style="color: Sienna">6 - jta --> 1.1</span></span></p><p><span style="font-size: 18px"><span style="color: Sienna"></span></span></p><p><span style="font-size: 18px"><span style="color: Sienna"><span style="color: YellowGreen">*Others</span></span></span></p><p><span style="font-size: 18px"><span style="color: Sienna">7 - asm --> 3.1</span></span></p><p><span style="font-size: 18px"><span style="color: Sienna"></span></span></p><p><span style="font-size: 18px"><span style="color: DarkRed">ඔන්න මම add කරගත්තා.</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/UD7O359.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkRed">හරි! ඊලඟ!</span></span></p><p><span style="font-size: 18px"><span style="color: DarkRed"></span></span></p><p><span style="font-size: 18px"><strong><span style="color: DarkSlateBlue">4 - Hibernate Mapping file එකයි + Model class එකයි හදමු!</span></strong></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">මතකයිනේ? අපි හැදුවා <strong>table එකක් stock කියලා? ආන්න ඒකට තමයි මේ Hibernate Mapping file එකයි Model class එකයි .</strong></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue"><strong>Stock.hbm.xml</strong> කියලා <strong>XML file එකක් හදලා</strong>, ඒක<strong> project එක උඩ right click කරලා</strong>, අළුතින් <strong> resources කියලා source folder එකක් හදලා</strong>, <strong>ඒ source folder එක ඇතුලේ com.inventory.common කියලා package එකක් හදලා</strong>, ඒ <strong>package එක ඇතුලට දාගන්න</strong> ඕනේ. (හම්මේ....!! <img src="/styles/default/xenforo/smilies/default/rolleyes.gif" class="smilie" loading="lazy" alt=":rolleyes:" title="Rolleyes :rolleyes:" data-shortname=":rolleyes:" /><img src="/styles/default/xenforo/smilies/default/rolleyes.gif" class="smilie" loading="lazy" alt=":rolleyes:" title="Rolleyes :rolleyes:" data-shortname=":rolleyes:" />) ඒක තමයි <strong>Hibernate Mapping file එක.</strong></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/tiSKcSB.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">තව, <strong>Stock කියලා java file එකක් හදලා</strong>, ඒක අර <strong>src folder එක ඇතුලේ කලින් හදපු com.inventory.common package එක ඇතුලට දාගන්න ඕනේ</strong>. <strong>ඒක තමයි Model class එක.</strong></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">ඔන්න ඔහොමයි දැං project structure එක.</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/42qehed.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">හරි! ඔන්න දැන් අර mapping xml (Stock.hbm.xml) file එක ඇතුලට මේ ටික ඔබා ගන්න ඕනේ. </span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"><?xml version="1.0"?></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray">"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"><hibernate-mapping></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> <class name="com.inventory.common.Stock" table="stock" catalog="inventory"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> <id name="stockId" type="java.lang.Integer"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> <column name="STOCK_ID" /></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> <generator class="identity" /></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> </id></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> <property name="stockCode" type="java.lang.String"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> <column name="STOCK_CODE" length="10" not-null="true" unique="true" /></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> </property></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> <property name="stockName" type="java.lang.String"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> <column name="STOCK_NAME" length="20" not-null="true" unique="true" /></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> </property></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> </class></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></hibernate-mapping></span></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">බැලුවාම උඹලට තේරෙනවනේ මේ මොකද්ද කරලා තියෙන්නේ කියලා?</span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">.</span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">.</span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">නෑ?? <img src="/styles/default/xenforo/smilies/default/angry.gif" class="smilie" loading="lazy" alt=":angry:" title="Angry :angry:" data-shortname=":angry:" /><img src="/styles/default/xenforo/smilies/default/angry.gif" class="smilie" loading="lazy" alt=":angry:" title="Angry :angry:" data-shortname=":angry:" /></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">.</span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">.</span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">ඔය කරලා තියෙන්නේ, <strong> table එක (Stock) ගැන , JVM එකට තේරෙන බාසාවෙන් කියලා දෙන එක.</strong></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue"><strong></strong></span>.</span></p><p><span style="font-size: 18px">.</span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">ඔව්! </span></span></p><p><span style="font-size: 18px">.</span></p><p><span style="font-size: 18px">.</span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">table ගොඩක් තිබ්බොත්, ඒ <strong>හැම table එකටම මේ වගේ mapping file එකකුයි, Model class එකකුයි ඕනේ වෙනවා</strong>. <img src="/styles/default/xenforo/smilies/default/sorry.gif" class="smilie" loading="lazy" alt=":sorry:" title="Sorry :sorry:" data-shortname=":sorry:" /><img src="/styles/default/xenforo/smilies/default/sorry.gif" class="smilie" loading="lazy" alt=":sorry:" title="Sorry :sorry:" data-shortname=":sorry:" /></span></span></p><p><span style="font-size: 18px">.</span></p><p><span style="font-size: 18px">.</span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">ඒවා කරදරයිනේ?</span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">.</span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">.</span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">කරදරයි තමයි! ඒ <strong>issues වලට solutions තියෙනවා</strong>. බය නොවී හිටපල්ලා. basics ඉගෙන ගෙන <strong>එව්වා කියලා දෙන්නම්</strong>! <img src="/styles/default/xenforo/smilies/default/yes.gif" class="smilie" loading="lazy" alt=":yes:" title="Yes :yes:" data-shortname=":yes:" /><img src="/styles/default/xenforo/smilies/default/yes.gif" class="smilie" loading="lazy" alt=":yes:" title="Yes :yes:" data-shortname=":yes:" /></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">හරි! මෙන්න මෙහෙමයි mapping file එක </span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/RjfG14h.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue">දැං <strong>Stock class (Model class) එක මෙන්න මේ විදියට code කරගන්නවා.</strong></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray">public class Stock implements java.io.Serializable {</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> private static final long serialVersionUID = 1L;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> private Integer stockId;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> private String stockCode;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> private String stockName;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> public Stock() {</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> }</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> public Stock(String stockCode, String stockName) {</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> this.stockCode = stockCode;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> this.stockName = stockName;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> }</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> public Integer getStockId() {</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> return this.stockId;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> }</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> public void setStockId(Integer stockId) {</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> this.stockId = stockId;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> }</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> public String getStockCode() {</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> return this.stockCode;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> }</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> public void setStockCode(String stockCode) {</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> this.stockCode = stockCode;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> }</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> public String getStockName() {</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> return this.stockName;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> }</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> public void setStockName(String stockName) {</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> this.stockName = stockName;</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"> }</span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray"></span></span></span></p><p><span style="font-size: 18px"><span style="font-size: 15px"><span style="color: DarkSlateGray">}</span></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><strong><span style="color: Blue">5 - Hibernate Configuration file එක හදමු!</span></strong></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Red">** වැදගත්ම file එකක්! Database එක ගැන විස්තර, username, password, schema එක, use කරන්න ඕනේ database driver එක ගැන විස්තර තියෙන්නේ මේ එකේ තමයි.</span></span></p><p><span style="font-size: 18px"><span style="color: Red">ඇයි? map කරලා තියෙන hbm.xml ගැන? එව්වත් declare කරලා තියෙන්නේ මේකෙම තමයි!</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Blue"><strong>hibernate.cfg.xml කියලා file එකක් හදලා,</strong> ඒක කෙලින්ම <strong>resource folder එක ඇතුලට දාගන්න.</strong> </span></span></p><p><span style="font-size: 18px"><span style="color: Blue">ඔව් බොලව්! <strong>අර package එකට එලියෙන්</strong>.</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/OSF6F8a.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Blue">ආන්න ඒ විදියට!</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Blue">දැන් ඒකේ මේ ටික කොටා ගන්න ඕනේ!</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"><?xml version="1.0" encoding="utf-8"?></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"><!DOCTYPE hibernate-configuration PUBLIC</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px">"-//Hibernate/Hibernate Configuration DTD 3.0//EN"</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px">"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"><hibernate-configuration></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> <session-factory></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> <property name="hibernate.bytecode.use_reflection_optimizer">false</property></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> <property name="hibernate.connection.password">root</property></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/inventory</property></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> <property name="hibernate.connection.username">root</property></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> <property name="show_sql">true</property></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> <mapping resource="com/inventory/common/Stock.hbm.xml"></mapping></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> </session-factory></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"></hibernate-configuration></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"></span></span></p><p><span style="font-size: 18px"><span style="color: Blue">ඔන්න පැහැදිලි කිරීම්!</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/5RA4e9b.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><strong><span style="color: Purple">6 - Hibernate Utility class එකක් හදමු??</span></strong></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Purple">මේක ඉතින් පහසුවටත්, වාසියටත් තමයි හදාගන්නේ. </span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Purple"><strong>Hibernate framework එක initialize කිරීමේ සිට</strong>, <strong>session retrieve කිරීම්, close කිරීම්</strong> ඇතුළු මෙකී නොකී මා දන්නා නොදන්නා හැම </span><strong><span style="color: Purple">Hibernate හු යන්නක් සඳහාම භාවිතා වේ! <img src="/styles/default/xenforo/smilies/default/rofl.gif" class="smilie" loading="lazy" alt=":rofl:" title="ROFL :rofl:" data-shortname=":rofl:" /><img src="/styles/default/xenforo/smilies/default/rofl.gif" class="smilie" loading="lazy" alt=":rofl:" title="ROFL :rofl:" data-shortname=":rofl:" /></span></strong></span></p><p><span style="font-size: 18px"><strong></strong><span style="color: Purple"></span></span></p><p><span style="font-size: 18px"><span style="color: Purple">ඔන්න ඕකත් අර කලින් හදාපු <strong>src folder එකේ com.inventory.common package එක ඇතුලට</strong> ඔබාපියව්! වෙන packages හද හද ඉන්න කම්මැලියෝ! <img src="/styles/default/xenforo/smilies/default/P.gif" class="smilie" loading="lazy" alt=":P" title=":P :P" data-shortname=":P" /></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Purple">ඔය තියෙන්නේ!</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/KaWyAaZ.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><strong><span style="color: RoyalBlue">7 - Main class එක code කරමු!</span></strong></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: RoyalBlue">කලින් හදාපු App class එක මේ විදියට code කරගනිව්! </span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px">package com.inventory.common;</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px">import org.hibernate.Session;</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px">public class App {</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> public static void main( String[] args )</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> {</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> System.out.println("Hibernate + MySQL");</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> Session session = HibernateUtil.getSessionFactory().openSession();</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> </span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> session.beginTransaction();</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> Stock stock = new Stock();</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> </span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> stock.setStockCode("4715");</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> stock.setStockName("GENM");</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> </span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> session.save(stock);</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> session.getTransaction().commit();</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px"> }</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"><span style="font-size: 15px">}</span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateGray"></span></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/o2HgFMX.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: RoyalBlue">මේ class එක තමයි අපි run කරන main class එක.</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: RoyalBlue">ඔන්න ඉවලායි!!! <img src="/styles/default/xenforo/smilies/default/D.gif" class="smilie" loading="lazy" alt=":D" title="Big grin :D" data-shortname=":D" /><img src="/styles/default/xenforo/smilies/default/D.gif" class="smilie" loading="lazy" alt=":D" title="Big grin :D" data-shortname=":D" /><img src="/styles/default/xenforo/smilies/default/D.gif" class="smilie" loading="lazy" alt=":D" title="Big grin :D" data-shortname=":D" /></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><strong><span style="color: Navy">8 - Run කරපියව්!</span></strong></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Navy"><strong>App class එක උඩ right click කලා --> Run as --> Java Application</strong></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Navy">ඔන්න console එකේ output එක! මොකද්දෝ මන්දා SQL statement එකක් පෙන්නනවා නේ?</span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/30rYtLB.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Navy">ඔව් ඔව්! insert එකක් වගේ? <img src="/styles/default/xenforo/smilies/default/yes.gif" class="smilie" loading="lazy" alt=":yes:" title="Yes :yes:" data-shortname=":yes:" /><img src="/styles/default/xenforo/smilies/default/yes.gif" class="smilie" loading="lazy" alt=":yes:" title="Yes :yes:" data-shortname=":yes:" /></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Navy">බලමු database එක?? <img src="/styles/default/xenforo/smilies/default/cool.gif" class="smilie" loading="lazy" alt=":cool:" title="Cool :cool:" data-shortname=":cool:" /></span></span></p><p><span style="font-size: 18px"><span style="color: Navy"></span></span></p><p><span style="font-size: 18px"><span style="color: Navy">ඔන්න පේනවානේ?? App class එකෙන් අපි Stock table එකට set කරපු data වලට අදාලව record එකක් add වෙලා තියෙනවා. <img src="/styles/default/xenforo/smilies/default/wink.gif" class="smilie" loading="lazy" alt=";)" title="Wink ;)" data-shortname=";)" /></span></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><img src="http://i.imgur.com/uzBZSDS.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></p><p><span style="font-size: 18px"></span></p><p><span style="font-size: 18px"><span style="color: Navy">මේක අපි කලේ desktop application එකකටනේ... </span></span></p><p><span style="font-size: 18px"><span style="color: Navy">ඒ උනාට උඹලට පුලුවන් කිසිම ගින්නක් නැතුව මේක අපේ පරණ web project එකට අමුණන්න. කරන්න තියෙන්නේ ඔය package ටිකයි, class ටිකයි copy paste කරන එක විතරයි. try කරලා බලපල්ලා! ඔය File name වලට, Package name වලට, බය වෙන්න එපා.</span></span></p><p><span style="font-size: 18px"><span style="color: Navy"></span></span></p><p><span style="font-size: 18px"><span style="color: Navy">ඔන්න උඹලට industry එකේ එන main framework එකක් කියලා දුන්නා!</span></span></p><p><span style="font-size: 18px"><span style="color: Navy"></span></span></p><p><span style="font-size: 18px"><span style="color: Navy">මේ කියලා දුන්න ටික සාගරේකින් දිය දෝතක් වගේ බොහොම ටිකයි! දොර හැර දී ඇත! ඉතිරිය සොයා යෑම උඹලටම බාරයි ළමයිනේ!</span></span></p><p><span style="font-size: 18px"><span style="color: Navy"></span></span></p><p><span style="font-size: 18px"><span style="color: Navy"></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue"><span style="color: Red"><span style="color: Navy"><span style="color: DarkGreen"><span style="color: Red"><span style="color: Purple"><span style="color: Black">මේකට උඹලගේ කැපවීම අනිවාර්යයි! මට පුලුවන් බොලාට මඟ පෙන්නන්න විතරයි! <img src="/styles/default/xenforo/smilies/default/yes.gif" class="smilie" loading="lazy" alt=":yes:" title="Yes :yes:" data-shortname=":yes:" /></span></span></span></span></span></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue"><span style="color: Red"><span style="color: Navy"><span style="color: DarkGreen"><span style="color: Red"><span style="color: Purple"><span style="color: Black"></span></span></span></span></span></span></span></span></p><p><span style="font-size: 18px"><span style="color: DarkSlateBlue"><span style="color: Red"><span style="color: Navy"><span style="color: DarkGreen"><span style="color: Red"><span style="color: Purple"><span style="color: Black">එහෙනම් හැමෝටම ජය!</span></span></span></span></span></span></span></span></p></blockquote><p></p>
[QUOTE="J Sparrow, post: 19513213, member: 387729"] [SIZE=5][COLOR=Navy]හොඳයි! ඔන්න කලින් lesson එකෙන් promise උනා වගේ අද lesson එක කරන්නේ Hibernate ගැන. :love:[/COLOR][/SIZE][SIZE=5] [IMG]http://i.imgur.com/twShF9t.png[/IMG] [COLOR=Navy]මුලින්ම බලමු Hibernate කියන්නේ මොකද්ද කියලා. [/COLOR] [COLOR=Red]** [B]Hibernate කියන්නේ Framework එකක්.[/B] ** දැනට තියෙන [B]හොඳම object/relational persistence (ORM) tool එකක්[/B] කිව්වොත් හරියටම හරි. ** [B]java වලට වගේම .net වලටත්[/B] මේ වෙනකොට Hibernate support කරනවා. [COLOR=Navy]ඉතිං දැං ඔය .net පොරවල් ටිකත් මේ පැත්තේ ආවට කාරියක් නෑ ඕං! :yes:[/COLOR][/COLOR] [COLOR=Red]** මේක [B]හරිම smooth[/B] බොලව්! [B]relational database handling මාරම විදියට simplify[/B] කරලා තියෙන්නේ. ඒ වගේම [B]හරිම elegant ඇන්ඩ් innovative.[/B][/COLOR] [COLOR=Navy]කරගෙන යද්දී බොලාටම තේරෙයි! ඔන්න හැඳින්වීම ඉවරයි. [B]අපි කරන්න යන්නේ Hibernate3.[/B][/COLOR] [COLOR=Red]** Web developing වලට Hibernate ඕනේම කියලා එකක් නෑ. :dull:[/COLOR] [COLOR=Navy]නමුත් හැමදාම SQL කොට කොට ඉන්නවට වඩා අළුත් දෙයක් ඉගෙන ගන්න එක හොඳා.....යි! :yes: අහ්! තව එකක්, [B] Hibernate කියන්නේ Web developing වලට විතරක් use වෙන framework එකක් නෙමෙයි.[/B][/COLOR] [COLOR=Navy][B]Desktop application development, Middle-ware development මෙකී නොකී සියලූම database එකක් connect වෙන development[/B] "හු" යන්නවල් වලට use කරගන්න පුලුවන්. :cool:[/COLOR] ඔන්න වැඩේට බැස්සා. [COLOR=Navy][B]වෙනසකටත් එක්ක Desktop application එකක් use කරගෙන මේක කරගෙන යමු. [/B][/COLOR] [COLOR=Navy]නෑ නෑ! [B]වෙනසක් ඇත්තෙම නෑ! මේක මේ විදියටම Web application එකකත් use කරන්න පුළුවන් [/B]බොලව්.[/COLOR] [B][COLOR=DarkGreen]1 - Database schema එක හදා ගමු![/COLOR][/B] [COLOR=DarkGreen]මතක ඇතිනේ කලින් lesson එකක මේක අපි කලා? MySQL admin open කලා, අළුතෙන් database schema එක හදාගන්නවා inventory කියලා. මේ? දැක්කනේ?[/COLOR] [IMG]http://i.imgur.com/pmwm0I8.png[/IMG] [COLOR=DarkGreen]දැන් MySQL query browser එක open කරලා, මෙන්න මේ script එක run කරගන්න ඕනේ. [/COLOR] [SIZE=4] [COLOR=DarkSlateGray]DROP TABLE IF EXISTS `stock`; CREATE TABLE `stock` ( `STOCK_ID` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `STOCK_CODE` VARCHAR(10) NOT NULL, `STOCK_NAME` VARCHAR(20) NOT NULL, PRIMARY KEY (`STOCK_ID`) USING BTREE, UNIQUE KEY `UNI_STOCK_NAME` (`STOCK_NAME`), UNIQUE KEY `UNI_STOCK_ID` (`STOCK_CODE`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8;[/COLOR][/SIZE] [COLOR=DarkSlateGray][COLOR=DarkGreen]දන්නේ නැත්තන් ඕන්න තියෙනවා කරන හැටි.[/COLOR] ;)[/COLOR] [IMG]http://i.imgur.com/NUULOlJ.png[/IMG] [COLOR=Red] ** අහ්! මතක ඇතුව අදාල schema එක select කරලා ඕක execute කරපල්ලා.[/COLOR] [COLOR=DarkGreen]පේනවනේ, අළුතෙන් table එකක් හැදිලා තියෙනවා? ඕක execute කරන්නේ නැතුව ඉතිං අපිට manually table එකක් හදන්න තිබ්බා. ඒත් ඉතිං මොනවටද බොලව් නිකන් කාලේ කන්නේ.[/COLOR] [B][COLOR=Indigo]2 - project එක හදමු.[/COLOR][/B] [COLOR=Indigo]ළමායි, දැං STS (Spring tool suit) open කරගමූ. Okay? [/COLOR] [COLOR=Indigo]Then... හරිම simple. [B]Normal java project එකක්[/B] තමයි හදන්න තියෙන්නේ.[/COLOR] [COLOR=DarkSlateGray]File --> New -- > Java Project[/COLOR] [IMG]http://i.imgur.com/HA3A4y5.png[/IMG] [COLOR=Indigo]ඔන්න මම [B]project එක name කරනවා inventory කියලා.[/B][/COLOR] [IMG]http://i.imgur.com/Te20a4T.png[/IMG] [COLOR=Indigo]ඔන්න තියෙනවා project එක.[/COLOR] [IMG]http://i.imgur.com/otutuyb.png[/IMG] [COLOR=Indigo]දැන් මම [B] src folder එක ඇතුලේ com.inventory.common කියලා package එකක් හදලා, ඒ package එක ඇතුලේ class එකක් හදා ගන්නවා App කියලා.[/B][/COLOR] [IMG]http://i.imgur.com/v6x5dM6.png[/IMG] [COLOR=Indigo]ඔන්න basic project structure එක හදන් ඉවරායි![/COLOR] [B][COLOR=DarkRed]3 - Dependency (jar files) add කරමු![/COLOR][/B] [COLOR=Red]** මේ project එකට අපිට specially ඕනේ කරන jar files තියෙනවා පුතාලා, ආන්න එව්වා ටික හොයලා ඇඩ් කරගන්න එක බොලාලට බාරයි. [/COLOR] [COLOR=DarkRed]jar file එකේ නම google එකේ කොටලා ලේසියෙන්ම ඒ වැඩේ කරගන්න පුළුවන්. [/COLOR] [COLOR=DarkRed]කලින් මම කියලා දීලා තියෙනවානේ project එකකට jar files add කරන හැටි? දැං ඒවා සිහි කරගනිව්! :D [/COLOR] [COLOR=DarkRed]ඔන්න ළමයිනේ... [B]පහල දාලා තියෙන්නේ, ඕනේ කරන jar files ටිකයි, ඒවයේ version ටිකයි[/B]. බලලා හදලා බාගනිව්![/COLOR] [COLOR=YellowGreen]* MySQL database driver[/COLOR] [COLOR=Sienna]1 - mysql-connector-java --> 5.1.9 [COLOR=YellowGreen]* Hibernate framework[/COLOR] 2 - hibernate3 --> 3.2.3.GA [COLOR=YellowGreen]* Hibernate library dependency[/COLOR] 3 - dom4j --> 1.6.1 4 - commons-collections --> 3.2.1 5 - cglib --> 2.2 6 - jta --> 1.1 [COLOR=YellowGreen]*Others[/COLOR] 7 - asm --> 3.1 [/COLOR] [COLOR=DarkRed]ඔන්න මම add කරගත්තා.[/COLOR] [IMG]http://i.imgur.com/UD7O359.png[/IMG] [COLOR=DarkRed]හරි! ඊලඟ! [/COLOR] [B][COLOR=DarkSlateBlue]4 - Hibernate Mapping file එකයි + Model class එකයි හදමු![/COLOR][/B] [COLOR=DarkSlateBlue]මතකයිනේ? අපි හැදුවා [B]table එකක් stock කියලා? ආන්න ඒකට තමයි මේ Hibernate Mapping file එකයි Model class එකයි .[/B][/COLOR] [COLOR=DarkSlateBlue][B]Stock.hbm.xml[/B] කියලා [B]XML file එකක් හදලා[/B], ඒක[B] project එක උඩ right click කරලා[/B], අළුතින් [B] resources කියලා source folder එකක් හදලා[/B], [B]ඒ source folder එක ඇතුලේ com.inventory.common කියලා package එකක් හදලා[/B], ඒ [B]package එක ඇතුලට දාගන්න[/B] ඕනේ. (හම්මේ....!! :rolleyes::rolleyes:) ඒක තමයි [B]Hibernate Mapping file එක.[/B][/COLOR] [IMG]http://i.imgur.com/tiSKcSB.png[/IMG] [COLOR=DarkSlateBlue]තව, [B]Stock කියලා java file එකක් හදලා[/B], ඒක අර [B]src folder එක ඇතුලේ කලින් හදපු com.inventory.common package එක ඇතුලට දාගන්න ඕනේ[/B]. [B]ඒක තමයි Model class එක.[/B][/COLOR] [COLOR=DarkSlateBlue]ඔන්න ඔහොමයි දැං project structure එක.[/COLOR] [IMG]http://i.imgur.com/42qehed.png[/IMG] [COLOR=DarkSlateBlue]හරි! ඔන්න දැන් අර mapping xml (Stock.hbm.xml) file එක ඇතුලට මේ ටික ඔබා ගන්න ඕනේ. [/COLOR] [SIZE=4][COLOR=DarkSlateGray]<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="com.inventory.common.Stock" table="stock" catalog="inventory"> <id name="stockId" type="java.lang.Integer"> <column name="STOCK_ID" /> <generator class="identity" /> </id> <property name="stockCode" type="java.lang.String"> <column name="STOCK_CODE" length="10" not-null="true" unique="true" /> </property> <property name="stockName" type="java.lang.String"> <column name="STOCK_NAME" length="20" not-null="true" unique="true" /> </property> </class> </hibernate-mapping>[/COLOR][/SIZE] [COLOR=DarkSlateBlue]බැලුවාම උඹලට තේරෙනවනේ මේ මොකද්ද කරලා තියෙන්නේ කියලා? . . නෑ?? :angry::angry: . . ඔය කරලා තියෙන්නේ, [B] table එක (Stock) ගැන , JVM එකට තේරෙන බාසාවෙන් කියලා දෙන එක. [/B][/COLOR]. . [COLOR=DarkSlateBlue]ඔව්! [/COLOR] . . [COLOR=DarkSlateBlue]table ගොඩක් තිබ්බොත්, ඒ [B]හැම table එකටම මේ වගේ mapping file එකකුයි, Model class එකකුයි ඕනේ වෙනවා[/B]. :sorry::sorry:[/COLOR] . . [COLOR=DarkSlateBlue]ඒවා කරදරයිනේ? . .[/COLOR] [COLOR=DarkSlateBlue]කරදරයි තමයි! ඒ [B]issues වලට solutions තියෙනවා[/B]. බය නොවී හිටපල්ලා. basics ඉගෙන ගෙන [B]එව්වා කියලා දෙන්නම්[/B]! :yes::yes:[/COLOR] [COLOR=DarkSlateBlue]හරි! මෙන්න මෙහෙමයි mapping file එක [/COLOR] [IMG]http://i.imgur.com/RjfG14h.png[/IMG] [COLOR=DarkSlateBlue]දැං [B]Stock class (Model class) එක මෙන්න මේ විදියට code කරගන්නවා.[/B][/COLOR] [SIZE=4][COLOR=DarkSlateGray]public class Stock implements java.io.Serializable { private static final long serialVersionUID = 1L; private Integer stockId; private String stockCode; private String stockName; public Stock() { } public Stock(String stockCode, String stockName) { this.stockCode = stockCode; this.stockName = stockName; } public Integer getStockId() { return this.stockId; } public void setStockId(Integer stockId) { this.stockId = stockId; } public String getStockCode() { return this.stockCode; } public void setStockCode(String stockCode) { this.stockCode = stockCode; } public String getStockName() { return this.stockName; } public void setStockName(String stockName) { this.stockName = stockName; } }[/COLOR][/SIZE] [B][COLOR=Blue]5 - Hibernate Configuration file එක හදමු![/COLOR][/B] [COLOR=Red]** වැදගත්ම file එකක්! Database එක ගැන විස්තර, username, password, schema එක, use කරන්න ඕනේ database driver එක ගැන විස්තර තියෙන්නේ මේ එකේ තමයි. ඇයි? map කරලා තියෙන hbm.xml ගැන? එව්වත් declare කරලා තියෙන්නේ මේකෙම තමයි![/COLOR] [COLOR=Blue][B]hibernate.cfg.xml කියලා file එකක් හදලා,[/B] ඒක කෙලින්ම [B]resource folder එක ඇතුලට දාගන්න.[/B] ඔව් බොලව්! [B]අර package එකට එලියෙන්[/B].[/COLOR] [IMG]http://i.imgur.com/OSF6F8a.png[/IMG] [COLOR=Blue]ආන්න ඒ විදියට![/COLOR] [COLOR=Blue]දැන් ඒකේ මේ ටික කොටා ගන්න ඕනේ![/COLOR] [COLOR=DarkSlateGray][SIZE=4]<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="hibernate.bytecode.use_reflection_optimizer">false</property> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.password">root</property> <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/inventory</property> <property name="hibernate.connection.username">root</property> <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> <property name="show_sql">true</property> <mapping resource="com/inventory/common/Stock.hbm.xml"></mapping> </session-factory> </hibernate-configuration>[/SIZE] [/COLOR] [COLOR=Blue]ඔන්න පැහැදිලි කිරීම්![/COLOR] [IMG]http://i.imgur.com/5RA4e9b.png[/IMG] [B][COLOR=Purple]6 - Hibernate Utility class එකක් හදමු??[/COLOR][/B] [COLOR=Purple]මේක ඉතින් පහසුවටත්, වාසියටත් තමයි හදාගන්නේ. [/COLOR] [COLOR=Purple][B]Hibernate framework එක initialize කිරීමේ සිට[/B], [B]session retrieve කිරීම්, close කිරීම්[/B] ඇතුළු මෙකී නොකී මා දන්නා නොදන්නා හැම [/COLOR][B][COLOR=Purple]Hibernate හු යන්නක් සඳහාම භාවිතා වේ! :rofl::rofl:[/COLOR] [/B][COLOR=Purple] ඔන්න ඕකත් අර කලින් හදාපු [B]src folder එකේ com.inventory.common package එක ඇතුලට[/B] ඔබාපියව්! වෙන packages හද හද ඉන්න කම්මැලියෝ! :P[/COLOR] [COLOR=Purple]ඔය තියෙන්නේ![/COLOR] [IMG]http://i.imgur.com/KaWyAaZ.png[/IMG] [B][COLOR=RoyalBlue]7 - Main class එක code කරමු![/COLOR][/B] [COLOR=RoyalBlue]කලින් හදාපු App class එක මේ විදියට code කරගනිව්! [/COLOR] [COLOR=DarkSlateGray][SIZE=4]package com.inventory.common; import org.hibernate.Session; public class App { public static void main( String[] args ) { System.out.println("Hibernate + MySQL"); Session session = HibernateUtil.getSessionFactory().openSession(); session.beginTransaction(); Stock stock = new Stock(); stock.setStockCode("4715"); stock.setStockName("GENM"); session.save(stock); session.getTransaction().commit(); } }[/SIZE] [/COLOR] [IMG]http://i.imgur.com/o2HgFMX.png[/IMG] [COLOR=RoyalBlue]මේ class එක තමයි අපි run කරන main class එක.[/COLOR] [COLOR=RoyalBlue]ඔන්න ඉවලායි!!! :D:D:D[/COLOR] [B][COLOR=Navy]8 - Run කරපියව්![/COLOR][/B] [COLOR=Navy][B]App class එක උඩ right click කලා --> Run as --> Java Application[/B][/COLOR] [COLOR=Navy]ඔන්න console එකේ output එක! මොකද්දෝ මන්දා SQL statement එකක් පෙන්නනවා නේ?[/COLOR] [IMG]http://i.imgur.com/30rYtLB.png[/IMG] [COLOR=Navy]ඔව් ඔව්! insert එකක් වගේ? :yes::yes:[/COLOR] [COLOR=Navy]බලමු database එක?? :cool: ඔන්න පේනවානේ?? App class එකෙන් අපි Stock table එකට set කරපු data වලට අදාලව record එකක් add වෙලා තියෙනවා. ;)[/COLOR] [IMG]http://i.imgur.com/uzBZSDS.png[/IMG] [COLOR=Navy]මේක අපි කලේ desktop application එකකටනේ... ඒ උනාට උඹලට පුලුවන් කිසිම ගින්නක් නැතුව මේක අපේ පරණ web project එකට අමුණන්න. කරන්න තියෙන්නේ ඔය package ටිකයි, class ටිකයි copy paste කරන එක විතරයි. try කරලා බලපල්ලා! ඔය File name වලට, Package name වලට, බය වෙන්න එපා. ඔන්න උඹලට industry එකේ එන main framework එකක් කියලා දුන්නා! මේ කියලා දුන්න ටික සාගරේකින් දිය දෝතක් වගේ බොහොම ටිකයි! දොර හැර දී ඇත! ඉතිරිය සොයා යෑම උඹලටම බාරයි ළමයිනේ! [/COLOR] [COLOR=DarkSlateBlue][COLOR=Red][COLOR=Navy][COLOR=DarkGreen][COLOR=Red][COLOR=Purple][COLOR=Black]මේකට උඹලගේ කැපවීම අනිවාර්යයි! මට පුලුවන් බොලාට මඟ පෙන්නන්න විතරයි! :yes: එහෙනම් හැමෝටම ජය![/COLOR][/COLOR][/COLOR][/COLOR][/COLOR][/COLOR][/COLOR][/SIZE] [/QUOTE]
Insert quotes…
Verification
Dawasata paya keeyak thibeda?
Post reply
Top
Bottom