บทความ

กำลังแสดงโพสต์จาก มิถุนายน, 2011

Java Vector การใช้งาน Vector พร้อมตัวอย่าง Java โค้ด ให้ โหลด ฟรี

บทความเกี่ยวกับ : Java Vector การใช้งาน Vector พร้อมตัวอย่าง Java โค้ด ให้ โหลด ฟรี Vector เป็น Class ใน package java.util การใช้งานคล้ายๆ ArrayList ที่ได้นำเสนอไปแล้วก่อนหน้านี้ จะว่าไปมันก็แทบจะใช้งานเหมือนกันเลยแหละแต่จะแตกต่างกันยังไงนั้นเดี๋ยวเล่าให้ฟังอีกที ตอนนี้มาดูตัวอย่างกันเลยดีกว่า ตัวอย่างการใช้งาน Vector package example.util; import java.util.Iterator; import java.util.Vector; public class VectorExample {     public void vectorExample(){         //Create Vector Object         Vector<String> vector=new Vector<String>();         //Store and Remove data from vector         vector.add("value1");         vector.add("value2");         vector.add("value3");         String value3=vector.remove(2);                System.out.println("-- Example for Get Value from vector --");         System.out.println("Get vector value: "+vector.get(0));         System.out.println("Remove vector value: "+v

Java StringTokenizer การใช้งาน StringTokenizer เพื่อตัด String ใน Java พร้อม Source code ให้โหลด

บทความเกี่ยวกับ : Java StringTokenizer การใช้งาน StringTokenizer เพื่อตัด String ใน Java พร้อม Source code ให้โหลด StringTokenizer เป็น Class ใน paclage java.util ใช้ในการตัด String โดยการใส่ String เข้าไปเป็นแผงแล้วทำการตัดออกมาเป็นช่วงๆ สามารถกำหนดตัวตัดคำได้ ตามตัวอย่าง ตัวอย่างการตัด String โดยใช้ Java StringTokenizer package example.util; import java.util.StringTokenizer; public class StringTokenizerExample {     public void stringTokenizerExample(){         //Create StringTokenizer Object         String data="1234,5667,2222,3333";         StringTokenizer st=new StringTokenizer(data,",");         while(st.hasMoreTokens()){             String temp=st.nextToken();             System.out.println("Next Token "+temp);         }            }         public static void main (String args[]){         StringTokenizerExample stex=new StringTokenizerExample();         stex.stringTokenizerExample();     } } ผลการ Run Program

Java ArrayList ตัวอย่างการใช้งาน ArrayList พร้อม Source Code ให้โฟลด

บทความเกี่ยวกับ : Java ArrayList ตัวอย่างการใช้งาน ArrayList พร้อม Source Code ให้โฟลด ArrayList เป็น Class ใน package java.util การใช้งานก็คล้าย Array นั่นแหละครับ เพียงแต่ว่าถูกออกแบบมาให้ใช้งานได้ง่ายและลดข้อจำกัดหลายๆอย่างของ Array ลงไป การอ้างถึงข้อมูลใน ArrayList จะใช้ index โดยเริ่มนับจาก 0 เช่นเดียวกับ Array ทั่วไปครับ ตัวอย่างการใช้งาน Java ArrayList package example.util; import java.util.ArrayList; import java.util.Iterator; public class ArrayListExample {     public void arrayListExample(){         //Create ArrayList Object         ArrayList<String> arrayList=new ArrayList<String>();         //Store and Remove data from ArrayList         arrayList.add("value1");         arrayList.add("value2");         arrayList.add("value3");         String value3=arrayList.remove(2);                System.out.println("-- Example for Get Value from ArrayList --");         System.out.println("Get ArrayList val

Java Hashtable ตัวอย่าง การใช้งาน Hashtable พร้อม Source Code ให้โหลด

บทความเกี่ยวกับ : Java Hashtable ตัวอย่าง การใช้งาน Hashtable พร้อม Source Code ให้โหลด Class ใน package java.util อีกตัวคือ Hashtable ตัวนี้จัดเก็บในรูปแบบคู่อันดับเช่นเดียวกันกับ HashMap ต่างกันยังไงนั้นเดี๋ยวเล่าให้ฟังอีกทีนะครับการใช้งานดูเผินๆ ก็เหมือนกันกับ HashMap เลยล่ะครับ คือจัดเป็นในรูปแบบคู่อันดับ อ้างถึงด้วย Key กับ Value นั่นเอง ตัวอย่าง Java Hashtable package example.util; import java.util.*; public class HashtableExample {     public void hashtableExample(){         //Create Hashtable Object         Hashtable<String,String> hashtable=new Hashtable<String,String>();         //Store and Remove data from Hashtable         hashtable.put("key1", "value1");         hashtable.put("key2", "value2");         hashtable.put("key3", "value3");         String key3=hashtable.remove("key3");                 System.out.println("-- Example for Get Value from Hashtable --");

Java HashMap Example เอาตัวอย่างการใช้งาน HashMap มาฝาก

บทความเกี่ยวกับ : Java HashMap Example เอาตัวอย่างการใช้งาน HashMap มาฝาก HashMap เป็น Class ใน package java.util   ใช้ในการจัดเก็บคู่อันดับ เวลาใช้งานก็จะต้องมีการอ้างถึง Key กับ Value เช่น จะใส่ค่าลงใน HashMap ก็ต้องบอกว่า ใส่ลงไปใน Key อะไร และ Value เป็นอะไร ตอนเรียกใช้งานก็ต้องอ้างถึงผ่าน Key เช่นเดียวกัน เอาล่ะมาดูตัวอย่างการใช้งาน Java HashMap กันเลย ตัวอย่าง Source Code การใช้งาน HashMap package example.util; import java.util.*; public class HashmapExample {     public void hashmapExample(){         //Create HashMap Object         HashMap<String,String> hashmap=new HashMap<String,String>();         //Store and Remove data from HashMap         hashmap.put("key1", "value1");         hashmap.put("key2", "value2");         hashmap.put("key3", "value3");         String key3=hashmap.remove("key3");                 System.out.println("-- Example for Get Value from HashMap --&qu

Codeigniter MVC แนวคิดและจุดสำคัญที่รู้แล้วหากินได้

บทความเกี่ยวกับ : Codeigniter MVC แนวคิดและจุดสำคัญที่รู้แล้วหากินได้ วันนี้จะมาทำความเข้าใจ MVC ในแบบของ Codeigniter MVC กันครับสำหรับผมแล้วสิ่งที่ต้องหาคำตอบไม่ว่าจะเล่น MVC ตัวใหนมีอยู่แค่ 8 ข้อ เท่านั้นถ้ารู้แล้วหากินได้ Concept สำหรับผมมีแค่นี้เอง อย่างที่เรารู้ๆกันว่า Controller เป็นตัวเชื่อมระหว่าง view กับ model view อยากได้อะไร บอก controller แล้ว controller จะไปสั่งให้ model ทำให้ พอได้ของมา controller ก็ส่งต่อให้ view เพราะฉะนั้นสิ่งที่ต้องตอบให้ได้คือ 1. View ส่งหา Controller ยังไง 2. Controller รับค่าจาก View ยังไง 3. Controller ส่งหา Model ยังไง 4. Model รับค่าจาก Controller ยังไง 5. Model ส่งของกลับให้ Controller ยังไง 6. Controller รับของที่ผลิตแล้วจาก Model ยังไง 7. Controller ส่งของต่อให้ View ยังไง 8. View รับของจาก Controller ยังไง จากทั้ง 7 สำหรับ Codeigniter ผมทำแบบนี้ครับ 1. View ส่งหา Controller ส่งผ่าน Form หรือ แนบ Parameter ผ่าน URL มา กรณีส่งผ่าน Form ก็ปรกติ จะเป็น GET หรือ POST ก็ว่ากันไป แต่กรณีส่งผ่าน URL นี่ CI มีรู

Hibernate Relation การ เขีียน Mapping Relation แบบ Bidirectional ด้วย Annotation

บทความเกี่ยวกับ : Hibernate Relation การ เขีียน Mapping Relation แบบ Bidirectional ด้วย Annotation ผมจะยกตัวอย่าง Mapping Class ในการเขียน Annotations สำหรับ Relation นะครับ ยกตัวอย่างการเขียนแบบง่ายๆที่สุดแต่ผมก็ใช้อยู่แค่นี้จริงๆครับนั่นคือ Relation แบบ One to Many  ง่ายๆ ก็เพื่อให้ Class นึงสามารถ Get Object ได้ ส่วนอีก Class สามารถ get List ได้ ตามตัวอย่างเลยครับ @Entity public class Category {     @OneToMany(mappedBy="product")     public Set<Product> getProduct() {     ... } @Entity public class Product {     @ManyToOne     @JoinColumn(name="cate_fk")     public Category getCategory() {     ... }       ตามนี้เลยครับจะเห็นว่าใช้ง่ายๆ แค่นี้ก็หากินได้แล้วครับผม

PHP Paging การแบ่ง Page ด้วย PHP กับ Framework เทพๆ CodeIgniter

บทความเกี่ยวกับ : PHP Paging การแบ่ง Page ด้วย PHP กับ Framework เทพๆ CodeIgniter การแสดงผลบนเว็บเมื่อมีจำนวน Record จำเป็นต้องมีการแบ่งข้อมูลการแสดงผลออกเป็น หน้าๆ หรือที่เรียกกันว่าการทำ Paging นั่นเอง การเขียนโปรแกรมแบบนี้ด้วย PHP ถือว่าค่อนข้างยุ่งยากเพราะ ถ้าจะให้ดีต้องมีการคำนวณจำนวนหน้า แล้ว List รายการ ออกมาให้คลิ๊ก ถ้านึกภาพไม่ออกให้ดูที่ผลการสืบค้นของ Google ด้านล่างที่มีการแบ่งหน้า ประมาณนั้นแหละครับ Cdeigniter จัดการให้ง่ายๆ ตามตัวอย่างนี้เลย $this->load->library('pagination'); $config['base_url'] = 'myapp/index'; $config['total_rows'] = '200'; $config['per_page'] = '20'; $this->pagination->initialize($config); echo $this->pagination->create_links(); เพียงเท่านี้  CI ก็จะทำการสร้าง Page List พร้อมทำ Link ให้เสร็จสรรพ เลยล่ะครับ

PHP File UPload วิธีการทำ File Upload แบบง่ายๆ ด้วย CodeIgniter

บทความเกี่ยวกับ : PHP File UPload วิธีการทำ File Upload แบบง่ายๆ ด้วย CodeIgniter การทำ File Upload โดยใช้ PHP นั้นจะว่าไปก็ืถือว่าทำได้ง่ายมากๆ เพียงแค่เขียนไม่กี่บรรทัด ถ้าเทียบกับ Java แล้วที่ต้อง Code กันยาวเหยียดก็ถือว่าง่ายกว่ากันเยอะ แต่พอมาใช้ Codeigniter File Upload แล้วก็จะเห็นได้ว่าเรื่องที่ง่ายอยู่แล้วก็ยิ่งง่ายเข้าไปอีกเพราะเพียงแค่ Config นิดหน่อย แล้วก็ Code อีกบรรทัดเดียวก็จบเลย ตัวอย่างง่ายๆ ตามนี้เลยครับผม          $config['upload_path'] = './uploads/';         $config['allowed_types'] = 'gif|jpg|png';         $config['max_size']    = '100';         $config['max_width']  = '1024';         $config['max_height']  = '768';         $rand = rand(1111,9999);         $date= date("Y-m-d ");         $config['file_name']  = $date.$rand;         $this->load->library('upload', $config);                if ( ! $this->upload->do_upload('photo&

Hibernate Criteria การใช้งาน Criteria เพื่อช่วยในการ Query ให้ง่ายขึ้น

บทความเกี่ยวกับ : Hibernate Criteria การใช้งาน Criteria เพื่อช่วยในการ Query ให้ง่ายขึ้น Criteria เป็นตัวช่วยสร้าง Query ชั้นดีเลยทีเีดียวครับ สามารถแทรก Condition แทรก Order  ได้ไม่จำกัดด้วยการใส่ Restrictions ลงไป ลองดูตัวอย่างการใช้งานกันเลย Criteria cri = session.createCriteria(MyMappingClass.class); cri.setMaxResults(50); List myObjList = cri.list(); แบบง่ายสุดเพียงเท่านี้ก็ได้ List ของ Object ออกมาแล้วครับ หรือถ้าจะแทรก Condition ก็ง่ายๆ ตามนี้เลย List myObjList = session.createCriteria(MyMappingClass.class)     .add( Restrictions.like("fname1", "some value%") )     .add( Restrictions.between("money", min, max) )     .list(); ลองใส่ Order by เข้าไปก็ไม่ใช่เรื่องยาก List myDataList = session.createCriteria(MyMappingClass.class)     .add( Restrictions.like("fname", "F%")     .addOrder( Order.asc("fname") )     .addOrder( Order.desc("fname2") )     .setMaxResults(100)     .li

Java TreeSet เทคนิคการจัดเรียงข้อมูลง่ายๆ โดยใช้ TreeSet กับ Java Programming

บทความเกี่ยวกับ : Java TreeSet เทคนิคการจัดเรียงข้อมูลง่ายๆ โดยใช้ TreeSet กับ Java Programming ตัวอย่างการใช้งาน TreeSet ครับดูกันเอาเลยง่ายๆ เป็น Class ใน paclage util นะครับ import java.util.*; public class SortData {   public static void main(String[] args) {     TreeSet data = new TreeSet();     data.add("e");     data.add("c");     data.add("a");     data.add("d");     data.add("b");     Iterator it =data.iterator();     while(it.hasNext()){       Object obj = it.next();       System.out.println(obj);     }   } } Output: a b c d e นี่แหละครับเอามาบอกไว้เฉยๆ เผื่อบางคนไม่รู้ ....ไปแระ มึน

Java Free Memory | Java Programming กับวิธีการ Check Memory และ Free Memory

บทความเกี่ยวกับ : Java Free Memory | Java Programming กับวิธีการ Check Memory และ Free Memory หลายๆคนชอบบ่นว่า Java กินแรมเยอะบางครั้งเวลา Code อะไรไปจะมีปัญหาว่า Memory เต็ม วันนี้ขอเสนอตัวอย่างง่ายๆ ในการ Check Memory และ Free Memory  ตามตัวอย่างครับ public class JavaFreeMem {   public static void main(String[] args) {     // คำสั่งในการ เช็คการใช้ Memory     System.out.println("Total Memory"+Runtime.getRuntime().totalMemory());     // คำสั่งในการกระตุ้นให้ ตัว Java's garbage-collected ทำงานเพื่อคืน Memory ที่ไม่ได้ใช้     System.out.println("Free Memory"+Runtime.getRuntime().freeMemory());   } } คำสั่งง่ายๆนะครับเผื่อเอาไว้ใช้งานกัีนถึงแม้เราจะไม่สามารถสั่งให้ Java คืน Memory มาให้เราได้ แต่เราก็สามารถกระตุ้นตัว Garbage ให้ทำงานได้นะครับ ฝากไว้นิดนึงว่าถึงแม้จะสั่ง Free Memory ได้ แต่มันก็เป็นเพียงแค่การ คืน Memory ที่ไม่ได้มีการใช้งานเท่านั้นนะครับ

Spring Framework กับ IOC และ AOP ที่เค้าว่ากันว่ามันคือแ่ก่นแท้นั้นเป็นอย่างไร

บทความเกี่ยวกับ : Spring Framework กับ IOC และ AOP ที่เค้าว่ากันว่ามันคือแ่ก่นแท้นั้นเป็นอย่างไร ถ้าพูดถึง Spring Framework แล้วหลายคนมันกจะเจอคำถามว่า เฮ๊ย ทำ Spring Framework มาอ่ะ รู้จัก IOC กับ AOP มั้ยวะ หุหุ จะว่าไปผมเองก็ไม่ได้รู้อะไรมาก แต่จะพยายามเล่าให้ฟังเท่าที่ผมเข้าใจ ละกันนะ IOC  ย่อมาจาก Inversion of Control หรือบางคนจะพูดถึงมันว่า dependency injection ถ้าจะให้อธิบายว่ามันคืออะไรผมก็คงจะพูดเหมือนในหนังสือหลายๆ เล่มบอกไว้น่ะแหละครับแต่ไม่รู้สิอ่านแล้วบางทีมันก็งงๆ ผมจะเล่าให้ฟังเป็น ภาษา Programmer ละกันนะครับจะได้สื่อสารกันง่ายหน่อย เอาง่ายๆ ยกเคสเช่น คุณต้องการ Connect Database  คุณไม่จำเป็นต้องไปเขียน Code ในการเปิด Connection เองเพียงแคุ่คุณบอกมาว่าต้องการใช้ตอนใหน เมื่อไหร่และอย่างไร เรา ( Container ) จะจัดถวายใส่พานไปให้คุณเอง คุณใช้เสร็จแล้วก็กองมันไว้ตรงนั้นแหละ เราจะทำการเก็บกวาดเช็ดถูให้คุณเองที่ยกตัวอย่างเรื่องการ Connect Database ก็เพราะอยากให้เห็นภาพ แต่จริงๆแล้วคือทุกอย่างตั้งแต่เล็กๆน้อยๆ เช่นการสร้าง Object หรือการใช้ Resource อื่น

Oracle Index เทคนิคการสร้าง Index กับ Field Date เพื่อการ Query ที่เร็วติดจรวด

บทความเกี่ยวกับ : Oracle Index เทคนิคการสร้าง Index กับ Field Date เพื่อการ Query ที่เร็วติดจรวด วันนี้มานั่ง List รายการดูว่า มีป้ายใหนที่จั่วหัวแล้วยังไม่ได้โพสบ้างเท่าที่ดูจะเหลือเรื่องของ DBMS , JQuery และ Web4J ที่จ่าหน้าไว้แล้วแต่ไม่ได้โพสอะไรเลย  วันนี้เลยจะจับมาซักเรื่อง เอาง่ายๆ เรื่องของ DBMS ละกัน วันนี้จะเอา เทคนิคการสร้าง Index บน Database Oracle มาโชว์ ....ฟังดูแล้วอาจเป็นเรื่องพื้นๆ ที่หลายคนบอกว่าเด็กอมมือก็ทำได้ หุหุ แต่ผมเอามานำเสนอทั้งทีบอกไว้เลยว่าต้องไม่ธรรมดาคุณเคยคิดมั้ยครับว่า Field ที่เป็น Date เอามาสร้าง Index แล้วมันจะนรกแค่ใหน ส่วนตัวผมเองไม่ใช่สาย DBA นะครับเป็นเพียง PG ตัวกระจ้อยแต่มั่วๆ หาทาง Tune Query Performance ให้ระบบทำงานได้เร็วที่มั่วๆ มาได้ก็ประมาณนี้ มาดูกัน CREATE INDEX IDX_DATETEST ON MY_TBL (TO_CHAR(CREATE_DATE, 'DDMMYY') ); เท่านี้แหละครับหลักการง่ายๆ ก็คือแปลงมันให้เป็นตัวเลขซะ แล้วตอนเรียกใช้ใน Query ก็จัดการแบบนี้ select * from MY_TBL where TO_CHAR(CREATE_DATE, 'DDMMYY' )='140911';

Java Programming กับเรื่องของ Reflection เพื่อการเรียกใช้แบบ Dynamic

บทความเกี่ยวกับ : Java Programming กับเรื่องของ Reflection เพื่อการเรียกใช้แบบ Dynamic สำหรับเรื่องของ Java Programming แบบที่ Advance หน่อยผมมักจะนึกถึงเรื่องนี้ Reflection Dynamic Invocation คือการเรียกใช้ Class หรือ Method แบบ Dynamic นั่นเอง จริงๆ เคยกล่าวถึงมาแล้วในโพสก่อนๆ แต่อยากจะเพิ่มเติมอีกซักหน่อย คำว่า Dynamic คือยังไงบางคนอาจจะงง ยกตัวอย่างง่ายเช่น  เรารู้ ชื่อ Class , ชื่อ Method แล้ว Code บรรทัดนี้เราอยากเรียกใช้ Class หรือ Method อะไรก็ได้ตามแต่ที่เราจะส่งเข้ามา ยิ่งอธิบายยิ่งจะงง ผมก็ชักจะงงแระ ฮ่าๆๆ เอาตัวอย่างไปดูเลยละกันนะ Class เหล่านี้อยู่ใน Package java.lang.reflect.* จะมีให้เรียกใช้งานได้ทั้ง Dynamic Class, Method,Constructor เป็นต้น เป็นใบ เป็นดอก เป็นผล ฮ่าๆ เช่น Method method = obj.getClass().getMethod(ชื่อ Method, Array ที่บรรจุ Class ของ Parameter); method.invoke(obj, Array ที่บรรจุ Object ของ Parameter); แจ่มมั้ยครับนั่นคือตัวอย่างการใช้งาน Invoke Method ตัวอย่าง Source Code ที่ใช้จริงนะครับก็ประมาณนี้     public void tes