Bai12 Beans

download Bai12 Beans

of 35

Transcript of Bai12 Beans

  • 8/3/2019 Bai12 Beans

    1/35

    GING VIN:

    V TN DNG

    TRNG CAO NG CNG NGH THNG TIN TP.HCM

    NHP MN JAVA

    BI 12JAVA BEANS

    GV:VT

    nDng

  • 8/3/2019 Bai12 Beans

    2/35

    PHN 1

    TNG QUANJAVABEANS

    GV:VT

    nDng

  • 8/3/2019 Bai12 Beans

    3/35

    3

    KHI NIM JAVA BEANS

    Kin trc JavaBean TMda trn m hnh component. Mhnh ny cho php cc nh pht trin phn mm to racc nvphnmm c tn gi l component.

    Cc component uc lp ghp vo cc applet, cc ng

    dng, cc servlet hoc vo cc component phc tphnbng cc cng c pht trinphnmmtrc quan.

    Cc JavaBean component cgi l beans.

    Beans c thc thay i, ty bin theo mun. Ta c

    th chn beans t toolbox, ko th vo ng dng, hiuchnh hnh vi v dinmoca bean, nhnghastngtc ca bean vi cc bean khc, tch hp beans vo ccngdng, vo applet hoc vo cc beans mi.

    GV:VT

    nDng

  • 8/3/2019 Bai12 Beans

    4/35

    4

    GUI (graphical user interface) Non-visual beans (v dnhmt spelling checker)

    Animation applet.

    Spreadsheet application.

    GV:VT

    nDng

    Cc beans khc nhau v chc nng v mc ch s dng.Qu trnh lp trnh trong thc tin, chng ta s thy mt sloi beans sau:

    CC LOI JAVA BEANS

  • 8/3/2019 Bai12 Beans

    5/35

    5

    MT S KHI NIM TRONG JAVABEANS

    Introspection:(phn tch bn trong) dng khm ph cc c imca bean

    Properties:l cc c im v din mo v hnh vi ca bean, chngc thay i lc thit k. Cc thuc tnh ca bean c ccintrospector phn tch ri hin th ra gip cho ngi thit k chng

    trnh c th thao tc c trn bean. Customization:cu hnh ty bin lc thit k c thc hin nh

    thy c cc thuc tnh ca bean. Cc cng c ty bin beannh: property editors, sophisticated bean customizers.

    Event:c cc bean dng giao tip vi nhau. Listener bean l

    bean nhn events. Source bean l bean pht ra event. Persistence:cho php cc bean lu tr v phc hi cc trng thi

    ca chng.

    Methods:khng khc g so vi method trong Java.

    GV:VT

    nDng

  • 8/3/2019 Bai12 Beans

    6/35

    PHN 2

    TO V S DNGJAVABEAN N GIN

    GV:VT

    nDng

  • 8/3/2019 Bai12 Beans

    7/35

    7

    CC PHN MM CN CI T

    GV:VT

    nDng

    1) Java Standard Development Kit (JDK) version 6.0

    - Download ti:http://java.sun.com/javase/downloads/index.jsp

    - Hng dn ci t ti:

    http://www.javapassion.com/handsonlabs/

    javaprogenv/index.html#0.12) NetBeans IDE 6.5

    - Download ti:

    http://www.netbeans.org/downloads/index.html

    - Hng dn ci t ti:http://www.javapassion.com/handsonlabs/

    javaprogenv/index.html#0.2

    http://www.javapassion.com/handsonlabs/http://www.javapassion.com/handsonlabs/
  • 8/3/2019 Bai12 Beans

    8/35

    8

    TO MT NETBEANS PROJECT

    GV:VT

    nDng

    Chyphnmm NetBeans 6.5 ln.ChnFile t top-level menu richnNew Project.HpthoiNew Projectxuthin.Chn Java trong phn Categories v chn Java Applicationtrong phnProjects.

    NhpNext.

    Trong vng Name and Location, phn Project Name, nhpchuiBeansExamplet tn cho project.

    phnCreate Main Class, nhp vo chuiBeansExample.NhpFinish hon ttvicto project ny.

  • 8/3/2019 Bai12 Beans

    9/35

    9

    TO MT NETBEANS PROJECT (tt)

    GV:VT

    nDng

  • 8/3/2019 Bai12 Beans

    10/35

    10

    GV:VT

    nDng

    TO MT NETBEANS PROJECT (tt)

  • 8/3/2019 Bai12 Beans

    11/35

    11

    VIT FILE SimpleBeanJLabel.java

    GV:VT

    nDng

    SimpleBeanJLabel l mt v d v visual JavaBean.Nhp phi BeansExampleri chn New->Java Class.Quan st thy vng Name and Locationca hp thoi New JavaClassxut hin.

  • 8/3/2019 Bai12 Beans

    12/35

    12

    GV:VT

    nDng

    VIT FILE SimpleBeanJLabel.java (tt) phn Class Name, nhp vo chui SimpleBeanJLabel.

    Nhp Finish.

  • 8/3/2019 Bai12 Beans

    13/35

    13

    Quan st sthy c SimpleBeanJLabel.java vamixuthin trong

    vng sonthoca NB6.5, vit code cho file ny nh sau:

    GV:VT

    nDng

    VIT FILE SimpleBeanJLabel.java (tt)

    /* SimpleBeanJLabel.java*/

    import java.awt.Color;

    import java.beans.XMLDecoder;

    import javax.swing.JLabel;

    import java.io.Serializable;

    public class SimpleBeanJLabel extends JLabel

    implements Serializable {

    public SimpleBeanJLabel() {

    setText( "Hello world!" );

    setOpaque( true );setBackground( Color.RED );

    setForeground( Color.YELLOW );

    setVerticalAlignment( CENTER );

    setHorizontalAlignment( CENTER );

    }

    }

  • 8/3/2019 Bai12 Beans

    14/35

    14

    VIT FILE SimpleBeanJLabel2.java

    GV:VT

    nDng

    Vi cc bc lm tng t nh SimpleBeanJLabel, ta to tip

    SimpleBeanJLabel2.java. SimpleBeanJLabel2 c thm mt thuc tnh(property) ca chnh n l labelType.

  • 8/3/2019 Bai12 Beans

    15/35

    15

    GV:VTnDng

    VIT FILE SimpleBeanJLabel2.java(tt)

  • 8/3/2019 Bai12 Beans

    16/35

    16

    Ni dung ca SimpleBeanJLabel2.java nh sau:

    GV:VTnDng

    VIT FILE SimpleBeanJLabel2.java(tt)

    /* SimpleBeanJLabel2.java*/

    public class SimpleBeanJLabel2 extends SimpleBeanJLabel {private String labelType;public String getLabelType() {

    return labelType;

    }public void setLabelType(String labelType) {this.labelType = labelType;

    }}

  • 8/3/2019 Bai12 Beans

    17/35

    17

    TO TP TIN JAR Thc hin Build project va mi to trong NB6.5 s to ra jar file,

    bng cch nh sau: nhp phi node BeansExample trong vngProject richn Build (hoc Run), ktqus to ra tp tin jar chaSimpleBeanJLabel bean.

    GV:VTnDng

  • 8/3/2019 Bai12 Beans

    18/35

    18

    Trong th mc C:\myjavafxprojects\BeansExample\dist ta thy c tp tin

    BeansExample.jar. Xem ni dung ca tp tin jar ny trong NB6.5 nh sau:

    GV:VTnDng

    TO TP TIN JAR (tt)

  • 8/3/2019 Bai12 Beans

    19/35

    19

    A BEAN VO BUIDER TOOL

    GV:VTnDng

    To mt NetBeans Project mi c tn l BeansUserExample:

    Chn File t top-level menu ri chn New Project. Quan st thy hp thoi New Projectxut hin. Chn Java trong vng Categories ri chn Java Application trong

    vng Projects.

    Nhp Next. Trong vng Name and Location, vng Project Name, ta nhp

    chui BeansUserExample. phn Create Main Class, nhp chui BeansUserExample.

    Nhp Finish.

    Quan st trong NB6.5 ta thy project va mi to lBeansUserExample xut hin trong vng Projects v thy xuthin BeansUserExample.javatrong ca s son tho ca NB6.5

  • 8/3/2019 Bai12 Beans

    20/35

    20

    A BEAN VO BUIDER TOOL(tt)

    GV:VTnDng

    Nhp phi BeansUserExample ri chn New/JFrame Form.

  • 8/3/2019 Bai12 Beans

    21/35

    21

    A BEAN VO BUIDER TOOL(tt)

    GV:VTnDng

    Quan st vng Name and Locationca hp thoi New JFrame Form

    va mi xut hin. vng Class Name, nhp chui MyForm. Nhp Finish.

  • 8/3/2019 Bai12 Beans

    22/35

    22

    A BEAN VO BUIDER TOOL(tt)

    GV:VTnDng

    Quan st thy phn Design view ca MyForm.javac trnh by

    gia ca NB6.5 v phn Palette c trnh by bn phi ca NB6.5

  • 8/3/2019 Bai12 Beans

    23/35

    23

    A BEAN VO BUIDER TOOL(tt)

    GV:VTnDng

    Tip theo l cng on a SimpleBeanJLabel vo Palete: Nhp phivo mt im trng trn Palete, chn tip Palete Manager t pop-upmenu va mi xut hin

  • 8/3/2019 Bai12 Beans

    24/35

    24

    A BEAN VO BUIDER TOOL(tt)

    GV:VTnDng

    Trong hp thoi Palette Managerva mi xut hin. Chn Add From JAR. Ta ang gn mt file jar c cha cc beans vo palete.

    Ta cng c th thc hin cch khc, l chn Add from Project, cch ny scho ta thy cc bean t mt Project.

  • 8/3/2019 Bai12 Beans

    25/35

    25

    A BEAN VO BUIDER TOOL(tt)

    GV:V

    TnDng

    Quan st hp thoi Install Components to Paletteva mi xut hin. M rng th mc dist ca BeansExample project, trong th mc ny c cha

    BeansExample.jarm ta to bc trc . Chn BeansExample.jarri nhp Next.

  • 8/3/2019 Bai12 Beans

    26/35

    26

    A BEAN VO BUIDER TOOL(tt)

    GV:V

    TnDng

    Quan st ta thy cc bean cha trong tp tin BeansExample.jarc lit k y.

    Chn SimpleBeanJLabel v SimpleBeanJLabel2 bean ri nhp Next.

  • 8/3/2019 Bai12 Beans

    27/35

    27

    A BEAN VO BUIDER TOOL(tt)

    GV:V

    TnDng

    Chn Beans (hay bt c category no m ta mun a bean vo). Nhp Finish.

  • 8/3/2019 Bai12 Beans

    28/35

    28

    A BEAN VO BUIDER TOOL(tt)

    GV:V

    TnDng

    Ta thy xut hin hp thoi Palette Managernh sau. M rng mc Beans ta thy SimpleBeanJLabel v SimpleBeanJLabel2

    beans xut hin y. Nhp Close.

  • 8/3/2019 Bai12 Beans

    29/35

    29

    THAY I THUC TNH CA BEAN

    GV:V

    TnDng

    a SimpleBeanJLabel vo design window. Quan st thy SimpleBeansJLabel bean trong Beans category ca Palette. Ko th SimpleBeanJLabel vo design window. Quan st thy nhn Hello world!ang c mu nn l mu (background)

    SimpleBeanJLabel

  • 8/3/2019 Bai12 Beans

    30/35

    30

    THAY I THUC TNH CA BEAN(tt)

    GV:V

    TnDng

    Thao tc trn cc thuc tnh ca SimpleBeansJLabel bean: Nhp vo button 3 du chm (...) ca thuc background property chn mu

    m ta mun i.

  • 8/3/2019 Bai12 Beans

    31/35

    31GV:V

    TnDng

    Hp thoi chn mu nn (background) xut hin. Chn bt c mu no m ta mun. Nhp OK.

    THAY I THUC TNH CA BEAN(tt)

  • 8/3/2019 Bai12 Beans

    32/35

    32GV:V

    TnDng

    Thay i text property ca bean thnh chui Sang Shin. Quan st design window ta thy mu nn v chui ch ca nhn thay i.

    THAY I THUC TNH CA BEAN(tt)

  • 8/3/2019 Bai12 Beans

    33/35

    33GV:V

    TnDng

    Properties of the SimpleBeansJLabel bean are changed

    THAY I THUC TNH CA BEAN(tt)

  • 8/3/2019 Bai12 Beans

    34/35

    34GV:V

    TnDng

    THAY I THUC TNH CA BEAN(tt)

    SimpleBeanJLabel2

    Ta tip tc thay i thuc tnh cho SimpleBeanJLabel2 Ko th SimpleBeanJLabel2 bean vo design window. Quan st nhn Hello world! c mu nn l mu . Thay i labelType property ca bean t simple n null hoc bt c mu g

    m ta mun

  • 8/3/2019 Bai12 Beans

    35/35

    HT

    BI 12

    V

    TnDng