服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

java bean实现航空预定机票功能应用


  概述:这是两个java bean应用的例子,实现航空预定机票的功能。
  
  预定构件功能说明:
  
  1,预定构件应包含二个面板,预定座位面板与乘客面板
  
  2,在装入预定构件时不应有可用的乘客面板
  
  3,当用户打入要预定的旅行地点.旅行日期及座位号时:
  
    (1)首先,应按以下格式生成乘客号:
  
    (2)其次,在显示乘客号时应使乘客面板是可见的(注意:你可能重定beanbox窗口中bean大小,以观看此乘客面板。而且,如果打入座位号为0,则不应显示乘客面板。)
  
    (3)当用户点击乘客面板的submit按钮时,此面板的所有域控件中文本应置为空  
  
    (4)上面步骤被重复,直到所接收的乘客材料个数等于预定的座位数为止
  
  4,在已预定了所需座位号之后,给出所预定座位号的消息框应被显示d
  
  5,乘客面板应作为bean创建,可以把嵌入在铁路预定应用或航空应用中
  
  6,你需接受以下格式之一的旅行日期"dd/mm/yy","mm/dd/yy","dd-month-yy"
  
  -----------------------------------------------
  
  /*1
  * program file:  psevent.java
  * creat time:  08/01/2004
  * creat by:     inberkong
  * last modify time:
  * modify by:   
  * function describe: event class
  */
  import java.util.*;
  public class psevent extends eventobject
  {
   //
   public string number;
   public string name;
   public string address;
   public string phone;
  
   public psevent(object source,string m1,string m2,string m3,string m4)
   {
   super(source);
   this.number=m1;
   this.name=m2;
   this.address=m3;
   this.phone=m4;
   }
  }
  
  ------------------
  
  /*2
  * program file:  pseventlistener.java
  * creat time:  08/01/2004
  * creat by:     inberkong
  * last modify time:
  * modify by:   
  * function describe: event listener
  */
  
  import java.util.*;
  public interface pseventlistener extends eventlistener
  {
   public void psperformed(psevent ev);
  }
  ---------------------------
  
  /*3
  * program file:  psbean.java
  * creat time:  08/01/2004
  * creat by:     inberkong
  * last modify time:
  * modify by:   
  * function describe: passenger message bean
  */
  import javax.swing.*;
  import java.awt.*;
  import java.awt.event.*;
  public class psbean extends jpanel implements actionlistener
  {
   jlabel lb_number;
   jlabel lb_name;
   jlabel lb_address;
   jlabel lb_phone;
   jtextfield tf_number;
   jtextfield tf_name;
   jtextfield tf_address;
   jtextfield tf_phone;
   jbutton sbmt;
   pseventlistener pl;//声明事件监听
  
  
   public psbean()
   {
   setlayout(new gridlayout(5,2));//设置布局管理器
  
   lb_number=new jlabel("passenger number:");//创建对象
   lb_name=new jlabel("passenger name:");
   lb_address=new jlabel("passenger address:");
   lb_phone=new jlabel("passenger phone:");
   
   tf_number=new jtextfield(15);
   tf_name=new jtextfield(15);
   tf_address=new jtextfield(25);
   tf_phone=new jtextfield(15);
  
   sbmt=new jbutton("submit"); 
   
   add(lb_number);
   add(tf_number);
   add(lb_name);
   add(tf_name);
   add(lb_address);
   add(tf_address);
   add(lb_phone);
   add(tf_phone);
   add(sbmt);
   sbmt.addactionlistener(this);//监听事件
   tf_number.setenabled(false); 
   }
  
  
   public void actionperformed(actionevent evt)
   {
   object obj=evt.getsource();
   if(obj==sbmt)
   {
    psevent ev=new psevent(obj,tf_number.gettext(),tf_name.gettext(),tf_address.gettext(),tf_phone.gettext());
    pl.psperformed(ev);
   }
   
   }
  
   public void pslistener(pseventlistener el)
   {
   pl=el;
   }
   public void setpnrno(string ptemp)
   {
   tf_number.settext(ptemp);
   }
   
   public void refresh()
   {
   tf_number.settext("");
   tf_name.settext("");
   tf_address.settext("");
   tf_phone.settext("");
   }
  
  }
  
  ---------------------
  
  /*4
  * program file:  bpanel.java
  * creat time:  08/01/2004
  * creat by:     inberkong
  * last modify time:
  * modify by:   
  * function describe: book panel bean
  */
  import java.beans.*;
  import javax.swing.*;
  import java.awt.event.*;
  import java.awt.*;
  public class bpanel extends jpanel implements pseventlistener,actionlistener
  {
   jpanel pnl;
   boxlayout blo;
  
   jlabel label_date;
      jtextfield text_date;
       jlabel label_place;
       jtextfield text_place;
       jlabel label_nos;
       jtextfield text_nos;
       jbutton button_book;
    jlabel the_animation;
       string bank_name="flymyway airlines";
       gridbaglayout gl_t;
       gridbagconstraints gbcs;
       
  //乘客面板javabean
  psbean pb;
  
   int t_nos;
   int t_count;
   string t_passno;
  
      //date format property with getter and setter methods  
      private string the_datformat="mm/dd/yy";
      public string getdatformat()
      {
         return the_datformat;
      }
      public void setdatformat(string temps)
      {
         the_datformat=temps;
         if(the_datformat=="mm/dd/yy")
            text_date.settext("mm/dd/yy");
         if(the_datformat=="dd/mm/yy")
            text_date.settext("dd/mm/yy");
      if(the_datformat=="dd-month-yy")
     text_date.settext("dd-month-yy");
      }
      
      public bpanel()
      {
   pnl=new jpanel();
   the_animation=new jlabel(bank_name);
   label_date=new jlabel("enter date of travel:");
    text_date=new jtextfield(20);
    text_date.settext(the_datformat);
  
        label_place=new jlabel("enter place of travel:");
        text_place=new jtextfield(15);
   label_nos=new jlabel("enter number of seats to be booked");
   text_nos=new jtextfield(5);
        button_book=new jbutton("book seats");
  
    gl_t=new gridbaglayout();
   gbcs=new gridbagconstraints();
   pnl.setlayout(gl_t);
   
   gbcs.gridx=3;
   gbcs.gridy=10;
   gbcs.anchor=gridbagconstraints.northwest;
   gl_t.setconstraints(the_animation,gbcs);
   pnl.add(the_animation);
  
   gbcs.gridx=2;
   gbcs.gridy=20;
   gbcs.anchor=gridbagconstraints.northwest;
   gl_t.setconstraints(label_date,gbcs);
   pnl.add(label_date);
   
   gbcs.gridx=4;
   gbcs.gridy=20;
   gbcs.anchor=gridbagconstraints.northwest;
   gl_t.setconstraints(text_date,gbcs);
   pnl.add(text_date);
  
   gbcs.gridx=2;
   gbcs.gridy=30;
   gbcs.anchor=gridbagconstraints.northwest;
   gl_t.setconstraints(label_place,gbcs);
   pnl.add(label_place);
   
   gbcs.gridx=4;
   gbcs.gridy=30;
   gbcs.anchor=gridbagconstraints.northwest;
   gl_t.setconstraints(text_place,gbcs);
   pnl.add(text_place);
  
   gbcs.gridx=2;
   gbcs.gridy=40;
   gbcs.anchor=gridbagconstraints.northwest;