Showing posts with label Java. Show all posts
Showing posts with label Java. Show all posts

Tuesday, May 22, 2012

Jasper Reports


Jasper Reports

iReport Designer ေလးနဲ႕ Report ေလးတစ္ေခုေလာက္လုပ္ၾကည္႕ဖုိ႕ေကာင္းပါတယ္။ JasperSoft ကေန download လုပ္ႏုိင္ပါတယ္။

Java ရဲ႕ ျပႆနာက jdk version ေတြ တစ္ခုနဲ႕တစ္ခု အဆင္ေျပဖုိ႕ သတိထားရတာျဖစ္ပါတယ္။ iReport မွာ ဘယ္ Jre version သံုးသလဲသိခ်င္ရင္ About မွာၾကည္႕လုိက္လုိ႕ရပါတယ္။

jrxml ဆိုတဲ႔ template design ေလးကို compile လုပ္လုိက္ရင္ .jasper ဆုိတဲ႔ complied class file ထြက္လာပါတယ္။

iReport ရဲ႕ default jre ကို configure လုပ္ခ်င္ရင္ etc folder ေအာက္က config file မွာ jdk home ျပင္လုိ႕ရပါတယ္။

iReport မွာ Add parameter ထည္႕ျပီး အဲဒီ parameter ေတြကို text box မွာ ျပန္တြဲလုိက္ရင္ parameter ေပၚမူတည္ျပီး report ထုတ္လုိ႕ရပါျပီ။ preview ၾကည္႕လုိက္ရင္ parameter value ေတြ ေတာင္းတာကို ေတြ႕ရပါလိမ္႔မယ္။

အဲဒီလို report တစ္ခုလုပ္ျပီးရင္ java servlet တစ္ခုကေနျပီး အဲဒီ report ကို လွမ္းေခၚသံုးလုိ႕ရပါျပီ။
web server မွာ deploy လုပ္တဲ႔အခါမွာ groovy jar, iText jar နဲ႕ common collection jar ေတြလုိပါလိမ္႔မယ္။

Java ဘက္မွာေတာ႔ Report အတြက္ jasper အသံုးမ်ားပါတယ္။ Elixir လည္းသံုးပါတယ္။ .Net ဘက္မွာေတာ႔ Crystal Report ကို အသံုးမ်ားပါတယ္။ အားလံုးရဲ႕တူညီခ်က္ကေတာ႔ သပ္ရပ္လွပတဲ႔ output file ရႏိုင္တာျဖစ္မယ္ထင္ပါတယ္။ pdf , doc, xls စတဲ႔ output files ေတြ ထုတ္ဖုိ႕ အသံုးျပဳပါတယ္။ report ဟာ software development မွာ အင္မတန္ အေရးပါပါတယ္။

Report ကို Application မွာ တခါတည္း ထည္႕ေရးတာရိွသလို၊ Report Engine ကို Server တစ္လံုးမွာ run ထားျပီး url နဲ႕ Parameter List ပို႕ျပီးသံုးတာမ်ိဳးလည္းရိွပါတယ္။

ဒါကေတာ႔ ဗဟုသုတအျဖစ္ေျပာရံုျဖစ္တဲ႔အတြက္ ဘာ sample code မွမပါပါဘူး။ နားလည္လြယ္မယ္လုိ႕ေမွ်ာ္လင္႔ပါတယ္။ ကိုယ္တုိင္ လုပ္ၾကည္႕လုိက္တာပိုေကာင္းပါတယ္။ မ်ားမ်ားသိျပီး နမူနာတစ္ခုစီေလာက္ လုပ္ဖူးထားရင္ လြယ္ပါတယ္။

Regards,
Zero

Notes: ဒါကေတာ႔ အဆစ္ေပးတာပါ။

Recurrsion နဲ႕ Looping အေၾကာင္း။

http://stackoverflow.com/questions/2651112/is-recursion-ever-faster-than-looping

Monday, May 21, 2012

Hibernate in Action

Hibernate in Action

Hibernate ကိ္ု အရင္အလုပ္မွာ သံုးခဲ႔ပါတယ္။
အခုမွ စာျပန္ဖတ္ရင္း ျပန္ျပီး ေလ႔လာေနပါတယ္။

http://www.manning.com/bauer2/chapter2.pdf

အဲဒါ manning က အျမည္းေပးတာပါ။

နမူနာ Hello world ကိုေတာ႔ လုပ္ၾကည္႕ျပီးပါျပီ။ :)

HSQLDB နဲ႕နမူနာလုပ္ျပထားပါတယ္။ အဲဒါကို tutorial ေလးေရးဖုိ႕စိတ္ကူးပါတယ္။ အင္တာဗ်ဴး အဆက္ေတြလည္း ေရးဖုိ႕စိတ္ကူးပါတယ္။ ခက္တာက အခ်ိန္သိပ္မရိွေတာ႔တာပါပဲ။ ခြင္႔ရက္ရွည္ယူတဲ႔အခါမွပဲ tutorial တစ္ခ်ိဳ႕ေရးပါမယ္။

Hibernate ကိုလည္း J2EE interview ေတြမွာေမးေလ႔ရိွပါတယ္။ ဗဟုသုတအေနနဲ႕ေျပာရရင္ေတာ႔ EJB 3.0 ရဲ႕ Specifications ကို Hibernate team က ထုတ္ေပးတဲ႔အတြက္ ေနာက္ပိုင္းမွာ EJB 3 ကိုေလ႔လာေလ႔လာ၊ Java Persistence နဲ႕ Hibernate ကိုေလ႔လာေလ႔လာ အတူတူလုိျဖစ္သြားပါျပီ။ အရင္ကေတာ႔ မတူပါဘူး။ အလုပ္အတြက္ EJB 2 လည္းျပန္ဖတ္ေနတဲ႔အတြက္ အေသးစိတ္ေရးျဖစ္ရင္ တင္လုိက္ပါမယ္။

Interview အတြက္ေလာက္ပဲဆုိရင္ Manning ရဲ႕ Java Persistence with Hibernate 2nd Edition ေရွ႕ႏွစ္ခန္းေလာက္ဖတ္ၾကည္႕လုိက္ရင္ စကားစျမည္ေလာက္ေျပာလုိ႕ရေလာက္ျပီထင္တယ္။

Hibernate ကလည္း တျခား J2EE branch ေတြလိုပါပဲ။ နည္းနည္းသိျပီး အဆင္ေျပေျပသံုးတတ္ဖုိ႕သိပ္မခက္ပါဘူး။ ေသခ်ာသိခ်င္ရင္ေတာ႔ အခ်ိန္ေပးရမယ္ထင္တယ္။ အခုမွ ဖတ္လက္စဆိုေတာ႔ သိပ္အမ်ားၾကီးေျပာစရာမရိွေသးပါဘူး။

အင္တာဗ်ဴးမွာေတာ႔ ORM ဆိုတာဘာလဲ။ ဆိုတာမ်ိဳးေလးေတြေတာ႔ အနည္းဆံုး ေျဖရတတ္ပါတယ္။ ေကာင္းက်ိဳးဆိုးျပစ္ေလးပါသိထားရင္လည္း အဆင္ေျပပါတယ္။ Paradigms mismatch ေလးကလည္းစိတ္ဝင္စားစရာေကာင္းပါတယ္။

Hibernate ဟာ Java ေလာကမွာေတာ႔ အခုေနာက္ပိုင္း အသံုးမ်ားသထက္မ်ားလာပါတယ္။ .Net ဘက္မွာဆိုရင္လည္း nHibernate အျဖစ္ေအာင္ပြဲခံေနပါတယ္။ ေလ႔လာသင္႔တယ္လုိ႕ယူဆပါတယ္။ Tutorial တစ္ခုတစ္ေလေလာက္ အျမည္းေရးျဖစ္ေအာင္ ေရးလုိက္ပါမယ္။

Regards,
0


Wednesday, May 16, 2012

ကဲ ဘာလဲေျပာ။



public class Person {
        private String name;
private String age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
}
____________________________________________________


public class testObj {

public Person personA=new Person();
public static void chageStr (Person personB){
testObj tstObj=new testObj();
tstObj.personA.setName("I am Person B");
}

public static void main(String[] args) {
System.out.println("What does I hold now?");
testObj tstObj=new testObj();
chageStr (tstObj.personA);
System.out.println(""+tstObj.personA.getName());
}
}
_________________________________________
highlight လုပ္ထားတဲ႔ System out ကေနဘာထြက္မလဲေမးပါတယ္။
Ans: null
_________________________________________

ဒုတိယတစ္ခု နည္းနည္းျပင္ေရးလုိက္ပါတယ္။


public class testObj {
static Person personA=new Person();
public static void chageStr (Person personB){
personA.setName("I am Person B");
}

public static void main(String[] args) {
System.out.println("What does I hold now?");
chageStr (personA);
System.out.println(""+personA.getName());
}
}

_________________________________________
highlight လုပ္ထားတဲ႔ System out ကေနဘာထြက္မလဲေမးပါတယ္။
Ans:  I am Person B
_________________________________________


static Bean Obj ေတြသံုးၾကသလားမသိပါဘူး။ အျပင္မွာသံုးေနၾကမဟုတ္ရင္ မသိဘဲမွားေျဖမိဖို႕မ်ားပါတယ္။



Monday, January 9, 2012

Java Syllabus from O'reilly

Java Syllabus from O'reilly

Head First Java,

Java In A Nutshell

အဆင္႔တစ္ခုခ်င္းစီမွာျပဌာန္းထားတဲ႔ စာအုပ္တစ္အုပ္စီပါ။ လုပ္ငန္းသေဘာအရ ေက်ာ္ခြေလ႔လာထားမိတဲ႔ သူေတြအေနနဲ႕လည္း ျပန္လည္ ေလ႔က်င္႔ၾကည္႕၊ နားလည္ၾကည္႕ဖုိ႕ လိုအပ္မယ္ထင္ရင္ ဒီစာအုပ္ေလးအုပ္ကို ေလ႔လာဖုိ႕ oreilly course ေတြသြားၾကည္႕ျပီး အၾကံေပးပါတယ္။ ေနာက္ဆံုးႏွစ္အုပ္ကိုေတာ႔ ဖတ္ဖူးပါတယ္။ အကုန္ေတာ႔မဟုတ္ပါဘူး။ လုိတာေတြဖတ္ၾကည္႕ပါတယ္။ ဒီမွာက ဘာ course မဆို ေစ်းၾကီးပါတယ္။ online ကေန နာရီ အနည္းငယ္သင္တာေတြကအစ အနည္းဆံုး ၃၀၀ ၊ ၄၀၀ ေလာက္ကစပါတယ္။ ျခြင္းခ်က္ကေတာ႔ java passion site ထင္တယ္။ ေစ်းေပါေနေသးတယ္။

ဒုတိယေစ်းအေပါဆံုးက oreilly က course ေတြျဖစ္ပါတယ္။ USD 340 ၀န္းက်င္ေလာက္ပါပဲ။ level 4 ခုသတ္မွတ္ထားပါတယ္။

က်န္တာေတြကေတာ႔ ၃၀၀၀၊ ၄၀၀၀ ေလာက္ေပးျပီး ႏွစ္ရက္ေလာက္ ေျပာတာေတြျဖစ္ေနတတ္ပါတယ္။ ကြ်န္ေတာ္႔သေဘာကေတာ႔ စာအုပ္၀ယ္ျပီး ျဖည္းျဖည္းခ်င္း ဖတ္တာက ပိုျပီးမ်ားတတ္ႏိုင္မလားလုိ႕ ထင္မိတယ္။ ကိုယ္ၾကိဳက္တာကို ေလ႔လာျပီး အသိအမွတ္ျပဳတဲ႔စာေမးပြဲတစ္ခုခု ၀င္ေျဖၾကည္႕လုိက္ရင္ ပိုျပီး ထိေရာက္မယ္ထင္ပါတယ္။ သင္တန္းတက္လုိ႕ ကုန္သြားမယ္႔ ပိုက္ဆံကို university သြားျပီးတက္လုိက္ရင္ေတာင္ ၂ ေသာင္းေလာက္ဆို မာစတာ တစ္ဘြဲ႕ရေလာက္ပါတယ္။ သင္တန္းမွာဆိုရင္ေတာ႔ ရွစ္ရက္ေလာက္နဲ႕တင္ ႏွစ္ေသာင္းကုန္သြားႏုိင္ပါတယ္။

စင္ကာပူမွာ ကြန္ျပဴတာစာအုပ္ေတြက amazon ထက္ ႏွစ္ဆေစ်းပိုၾကီးပါတယ္။ ေစ်းခန္႕မွန္းလို႕ရေအာင္ link ေတြထည္႕ထားပါတယ္။ click ၾကည္႕ျပီး စာအုပ္အဖံုးေလးဘာေလးၾကည္႕လုိ႕ရသလို၊ နမူနာ စာမ်က္ႏွာတစ္ခ်ိဳ႕လည္း ဖတ္လုိ႕ရေကာင္းရႏိုင္ပါလိမ္႔မယ္။

online မွာ ebooks ေတြကေတာ႔ရိွပါလိမ္႔မယ္။ ebooks နဲ႕ဖတ္ႏိုင္ရင္ေတာ႔ ေစ်းသက္သာျပီး ထိေရာက္ပါတယ္။ သြားေလရာမွာ ဖတ္ခ်င္တဲ႔အခါဖတ္ႏိုင္ပါတယ္။

ထိထိေရာက္ေရာက္ ေလ႔လာႏိုင္သူေတြျဖစ္ၾကပါေစ။

Regards,
Zero

Head First Java စာအုပ္ကိုေတာ႔ online မွာ search လုပ္ရင္းေတြ႕လုိက္ပါတယ္။ download လုပ္ျပီးေလ႔လာၾကည္႕ပါ။
http://www.mediafire.com/?ddzyyaulba90ywn

Tuesday, February 2, 2010

Zkoss (အပိုင္း၁)

Hello "Zero Divided By Zero Is Zero" ပါ။ ကြ်န္ေတာ္႔နာမည္ပါ။ ေက်ာင္းမွာသခ်ာၤကို ႏွစ္ေပါင္းမ်ားစြာသင္ခဲ႔ပါတယ္။ သုညနဲ႕စားတာ အင္ဖင္နတီရတယ္ ဆိုတာ အခုေခတ္သခ်ၤာမွာရတာပါ။ ကြ်န္ေတာ္က Rules of Brahmagupta ထဲက RULE တစ္ခုကို ယူထားတာပါ။အဲဒါက မိတ္ဆက္တာပါ။ Java ကို ကၾကီးခေခြးေလာက္ေရးတတ္ျပီး၊ စင္ကာပူ ကုမၸဏီတစ္ခုမွာ ေအာက္ေျခသိမ္းအလုပ္ေတြလုပ္ပါတယ္။

ဘလက္ဟပ္ေတြ ၀ိႈက္ဟပ္ေတြမဟုတ္ပါဘူး။ ဘာကိုမွမဟပ္တတ္ပါဘူး။ အလုပ္ထဲက ကိုယ္လုပ္လုိက္တဲ႔ တလြဲေတြေလာက္ေရးၾကမလို႕ပါ။ :) ... ( Hacker ကို စာလံုးေပါင္းမမွန္ေသးတဲ႔လူေတြအတြက္ေတာ႔ ေျပာစရာစကားမရိွေသးပါ။ )

ZK ဟာ ေပ်ာ္စရာေကာင္းတဲ႔ Ajax -based Web Application Framework ျဖစ္ပါတယ္။ MVC နဲ႕ေျပာရင္ေတာ႔ View အတြက္ အဓိက သံုးတယ္လုိ႕ေျပာလို႕ရပါတယ္။ အခု Phase I ျပီးသြားတဲ႔ Comfort Taxi Company အတြက္လုပ္ၾကတဲ႔ IBS (Integrated Billing System) မွာ ZK သံုးခဲ႔ပါတယ္။ (တခါတေလလည္း International Bullshit System လို႕ IBS ကိုေျပာၾကပါတယ္။)။ xml နည္းနည္းေလး အေျခခံရိွရင္ရပါတယ္။ လြယ္ပါတယ္။ သူေပးထားတာထက္ ပိုသံုးခ်င္တဲ႔အခါၾကရင္သာ နည္းနည္္းခက္ပါတယ္။

သူ႕ရဲ႕ Demo ေလးကို ၾကည္႕လုိ္က္ပါဦး။
Eclipse မွာ Install လုပ္ၾကည္႕ျပီး စမ္းေရးၾကည္႕လို႕ရပါတယ္။

Java က သိပ္ကို အိုမင္းေနတဲ႔ နည္းပညာပါ။
ဒါေပမယ္႔လည္း သူ႕မွာလည္း အဆင္ေျပတာေလးေတြရိွပါတယ္။

Java ေရးေနလို႕ Java ေကာင္းတယ္မေျပာပါဘူး။
ဘယ္ language ပဲေရးေရး၊ ေျခေျချမစ္ျမစ္နားလည္ရင္ ေကာင္းပါတယ္။
Hello World ကို Language အခု ၁၂၀ နဲ႕ေရးတတ္တာဟာ ကြ်မ္းက်င္မႈမဟုတ္ပါဘူး။
ေပ်ာ္ေပ်ာ္ပါးပါး ေလ႔လာၾကည္႕တာေကာင္းပါတယ္။
ေလ႔လာျပီးသားကို သံုးၾကည္႕တာပိုေကာင္းပါတယ္။

မ်ားမ်ားသိျပီး နည္းနည္းမွ မေ၀ငွခ်င္ေသာ ခ်စ္သူငယ္ခ်င္းမ်ားအားလံုးကို ေတြ႕ရာအရပ္က ေမတၱာပို႕ေနပါတယ္။

Zero Divided By Zero Is Zero.