婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > EJB 3.0開發(fā)指南之多表映射

EJB 3.0開發(fā)指南之多表映射

熱門標(biāo)簽:地圖標(biāo)注人員兼職 電話機器人的特色和創(chuàng)新 商丘百應(yīng)電話機器人有沒有效果 黃石智能營銷電銷機器人效果 開封便宜外呼系統(tǒng)報價 淮南騰訊地圖標(biāo)注 怎樣把地圖標(biāo)注出來 騰訊地圖標(biāo)注商戶改名注冊入駐 漯河辦理400電話
在前面的例子中,我們每一個實體Bean只映射到數(shù)據(jù)庫中的一張表上。事實上,一個實體Bean可以映射到多張表上。在一些需要字典表的項目上會經(jīng)常用到,象以前我做過的項目,使用到很多國標(biāo)規(guī)定的數(shù)據(jù)表。在我們下面這個例子中,性別作為一個字典表存在,學(xué)生這個實體將映射到學(xué)生信息表、性別表這兩個表。

  從表可以使用@SecondaryTable來注釋:

  @Target({TYPE}) @Retention(RUNTIME)

  public @interface SecondaryTable {
  String name();
  String catalog() default "";
  String schema() default "";
  JoinColumn[] join() default {};
  UniqueConstraint[] uniqueConstraints() default {};
  }

  這個注釋可以指定表名、分類、schema、聯(lián)合列、約束等。假如你使用多張表,你可以使用下面的注釋來聲明多張表:

  @SecondaryTable
  @Target({TYPE}) @Retention(RUNTIME)

  public @interface SecondaryTables {
  SecondaryTable[] value() default {};
  }

  這個例子主要有以下幾個文件,這個例子主要實現(xiàn)了管理學(xué)生的功能。Student是一個實體Bean,這個Bean的name屬性是一個類,也就是Name類,這個Name類就是一個依賴值對象。學(xué)生的性別映射到第二張表中。StudentDAOBean是一個無狀態(tài)的會話Bean,用來調(diào)用實體Bean。和前面的例子一樣,我們還是使用Client測試。

  這個例子和上一個例子基本相同,只是Student.java和Client有所不同。

   Student.java:實體Bean。

   Name.java:實體Bean所依賴的類。

   StudentDAO.java:會話Bean的業(yè)務(wù)接口

   StudentDAOBean.java:會話Bean的實現(xiàn)類

   Client.java:測試EJB的客戶端類。

   jndi.properties:jndi屬性文件,提供訪問jdni的基本配置屬性。

   Build.xml:ant 配置文件,用以編譯、發(fā)布、測試、清除EJB。

  下面針對每個文件的內(nèi)容做一個介紹。

  Student.java

  package com.kuaff.ejb3.secondary;

  import javax.ejb.Dependent;
  import javax.ejb.DependentAttribute;
  import javax.ejb.Column;
  import javax.ejb.Entity;
  import javax.ejb.GeneratorType;
  import javax.ejb.Id;
  import javax.ejb.Table;
  import javax.ejb.SecondaryTables;
  import javax.ejb.SecondaryTable;
  import javax.ejb.JoinColumn;

  @Entity
  @Table(name = "STUDENT")
  @SecondaryTables({
  @SecondaryTable(name = "GENDER", join = {@JoinColumn(name = "GENDER_ID")})
  })

  public class Student implements java.io.Serializable
  {
  private int id;
  private Name name;
  private String grade;
  private String email;
  private String gender;

  @Id(generate = GeneratorType.AUTO)

  public int getId()
  {
  return id;
  }

  public void setId(int id)
  {
  this.id = id;
  }

  public void setName(Name name)
  {
  this.name = name;
  }

  @Dependent({ @DependentAttribute(name = "first", column ={ @Column(name = "FIRST") }),

  @DependentAttribute(name = "last", column ={ @Column(name = "LAST") }) })

  public Name getName()
  {
  return name;
  }

  public void setGrade(String grade)
  {
  this.grade = grade;
  }

  @Column(name = "GRADE")

  public String getGrade()
  {
  return grade;
  }

  public void setEmail(String email)
  {
  this.email = email;
  }

  @Column(name = "EMAIL")

  public String getEmail()
  {
  return email;
  }

  public void setGender(String gender)
  {
  this.gender = gender;
  }

  @Column(name = "gender", secondaryTable = "GENDER")

  public String getGender()
  {
  return gender;
  }

  }


  Student.java實現(xiàn)了Student實體Bean,它提供學(xué)生的基本情況。在類上聲明上加上了第二張表的注釋:

  @SecondaryTables({
  @SecondaryTable(name = "GENDER", join = {@JoinColumn(name = "GENDER_ID")})
  })

  在gender屬性上加上了映射第二張的注釋:

  @Column(name = "gender", secondaryTable = "GENDER")

  Client.java

  package com.kuaff.ejb3.secondary;

  import javax.naming.InitialContext;

  import javax.naming.NamingException;

  import java.util.List;


  public class Client
  {
  public static void main(String[] args) throws NamingException

  {

  InitialContext ctx = new InitialContext();

  StudentDAO dao = (StudentDAO) ctx.lookup(StudentDAO.class.getName());

  int id = dao.create("晁","岳攀","8","smallnest@kuaff.com","男");

  dao.create("朱","立煥","6","zhuzhu@kuaff.com","女");



  List list = dao.findAll();

  for(Object o:list)

  {

  Student s = (Student)o;

  System.out.printf("%s%s的性別:%s%n",s.getName().getFirst(),s.getName().getLast(),s.getGender());

  dao.evict(s);

  }

  這個客戶端增加學(xué)生的分?jǐn)?shù),并且測試顯示這個學(xué)生的email。

  請運行{$JBOSS_HOME}/bin目錄下的run.bat: run –c all,啟動JBOSS。

  http://localhost:8080/jmx-console/HtmlAdaptor?action=inspectMBeanname=jboss%3Aservice%3DHypersonic%2Cdatabase%3DlocalDB,

  然后調(diào)用startDatabaseManager()方法,打開HSQL管理工具管理數(shù)據(jù)庫。

  在Eclipse的Ant視圖中執(zhí)行ejbjar target。或者在命令行下,進入到此工程目錄下,執(zhí)行ant ejbjar,將編譯打包發(fā)布此EJB。

  在Eclipse的Ant視圖中執(zhí)行run target。或者在命令行下,進入到此工程目錄下,執(zhí)行ant run,測試這個EJB。
您可能感興趣的文章:
  • JavaBean(EJB) 3.0 全新體驗
  • EJB 3.0 開發(fā)指南之定時服務(wù)
  • EJB3.0開發(fā)之多對多和一對一
  • EJB3.0之實體Bean的繼承
  • EJB3.0部署消息驅(qū)動Bean拋javax.naming.NameNotFoundException異常

標(biāo)簽:鄭州 武威 紅河 大興安嶺 拉薩 岳陽 馬鞍山 亳州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《EJB 3.0開發(fā)指南之多表映射》,本文關(guān)鍵詞  EJB,3.0,開發(fā)指南,之多,表,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《EJB 3.0開發(fā)指南之多表映射》相關(guān)的同類信息!
  • 本頁收集關(guān)于EJB 3.0開發(fā)指南之多表映射的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    色老汉一区二区三区| 午夜久久久久久久久久一区二区| 精品在线你懂的| 欧美一区二区不卡视频| 丝袜亚洲另类欧美| 欧美日韩国产在线观看| 伊人色综合久久天天| 99久久久久免费精品国产 | 亚洲精品网站在线观看| 成人激情免费视频| 国产精品久久久一区麻豆最新章节| 久草热8精品视频在线观看| 久久久精品国产免费观看同学| 另类小说欧美激情| 国产亚洲综合性久久久影院| 岛国精品在线观看| 亚洲美女视频在线观看| 欧美日韩你懂得| 秋霞国产午夜精品免费视频| www日韩大片| 成人av集中营| 亚洲成年人影院| 欧美大片日本大片免费观看| 福利91精品一区二区三区| 亚洲精品国产无天堂网2021| 777a∨成人精品桃花网| 久久99国产精品久久99| √…a在线天堂一区| 欧美日韩一级大片网址| 国产九九视频一区二区三区| 亚洲视频在线观看三级| 欧美一区日韩一区| 岛国一区二区在线观看| 天天综合网天天综合色| 中文字幕欧美国产| 欧美喷水一区二区| 成人免费三级在线| 美女在线观看视频一区二区| 国产精品毛片无遮挡高清| 欧美精品少妇一区二区三区| 丁香激情综合五月| 日韩电影一二三区| 亚洲欧美色图小说| 久久精品一区四区| 在线电影欧美成精品| 色综合天天视频在线观看| 韩国成人在线视频| 日韩专区在线视频| 亚洲欧美区自拍先锋| 久久影院午夜论| 欧美日韩国产美| 91在线观看免费视频| 美女视频黄免费的久久| 亚洲激情网站免费观看| 国产欧美一区二区精品性 | 7777女厕盗摄久久久| 99re这里都是精品| 国产成人免费在线视频| 视频一区在线播放| 亚洲女同女同女同女同女同69| 精品精品国产高清一毛片一天堂| 欧美在线免费视屏| 91在线码无精品| 岛国av在线一区| 国产美女在线观看一区| 久久精品国产一区二区| 天堂在线亚洲视频| 亚洲资源在线观看| 亚洲色图20p| 国产精品久久久久久久久搜平片 | 一区二区三区在线视频观看| 中文子幕无线码一区tr| 久久综合九色综合97婷婷女人 | 久久久午夜精品理论片中文字幕| 欧美另类高清zo欧美| 色国产综合视频| 日本大香伊一区二区三区| 97久久超碰国产精品| youjizz国产精品| 国产成人aaaa| 国产成人aaa| 成人av电影在线观看| 成人高清在线视频| 99久久久久久| 91蝌蚪porny九色| 色偷偷久久人人79超碰人人澡| 99久久精品免费| 色呦呦日韩精品| 欧美日韩国产系列| 日韩视频一区在线观看| 欧美一区2区视频在线观看| 91精品国产综合久久久久久漫画| 56国语精品自产拍在线观看| 8x8x8国产精品| 日韩欧美久久久| 久久久国产午夜精品| 亚洲国产精品v| 夜夜精品视频一区二区 | 亚洲一区二区免费视频| 亚洲中国最大av网站| 午夜天堂影视香蕉久久| 激情五月播播久久久精品| 国产69精品一区二区亚洲孕妇| 国产91精品欧美| 在线视频你懂得一区| 日韩视频一区二区三区在线播放| 欧美精品一区二区三区在线播放| 国产亚洲一二三区| 亚洲视频免费在线观看| 亚洲第一av色| 国产剧情一区二区| 欧美在线色视频| 久久综合久久99| 亚洲久草在线视频| 偷拍自拍另类欧美| 国产91高潮流白浆在线麻豆| 欧美亚男人的天堂| 26uuu久久综合| 亚洲欧洲综合另类| 经典三级在线一区| 日本精品一区二区三区高清| 欧美一区二区三区精品| 国产精品久久99| 蜜臀av国产精品久久久久 | 精品一区二区三区免费视频| 99久久综合色| 日韩欧美国产一二三区| 亚洲少妇中出一区| 国产在线精品免费| 欧美日韩国产综合视频在线观看| 久久伊99综合婷婷久久伊| 亚洲视频资源在线| 国产精品66部| 制服丝袜日韩国产| 国产精品白丝在线| 国产一区二区三区免费播放| 欧美日韩激情一区| 亚洲欧美日韩国产成人精品影院 | 国产永久精品大片wwwapp | 免费成人美女在线观看.| 99久久伊人精品| www成人在线观看| 午夜精品福利一区二区蜜股av| 成人综合在线网站| 精品欧美久久久| 日本伊人精品一区二区三区观看方式| 97久久精品人人爽人人爽蜜臀| 久久久久国产精品厨房| 日韩av电影免费观看高清完整版| 91麻豆国产在线观看| 欧美极品另类videosde| 理论电影国产精品| 91精品国产91久久综合桃花| 一区二区三区av电影| 懂色一区二区三区免费观看 | 国产色爱av资源综合区| 蜜臀av在线播放一区二区三区| 在线视频综合导航| 综合av第一页| 成人精品gif动图一区| 亚洲精品在线三区| 蜜臀91精品一区二区三区| 日韩一区二区三区av| 午夜激情综合网| 欧美亚男人的天堂| 亚洲午夜在线电影| 欧美日韩亚洲不卡| 亚洲国产aⅴ成人精品无吗| 欧美羞羞免费网站| 日韩精品一二三四| 日韩区在线观看| 久久www免费人成看片高清| 日韩欧美成人一区| 久久成人久久爱| 久久久亚洲国产美女国产盗摄| 国产精品综合一区二区三区| 久久久久久久综合| 波多野洁衣一区| 亚洲精选一二三| 91成人在线观看喷潮| 亚洲国产日韩a在线播放| 欧美色综合网站| 免费精品视频在线| 亚洲精品在线一区二区| 成人av在线播放网址| 亚洲免费观看高清完整版在线| 欧洲日韩一区二区三区| 青草国产精品久久久久久| 精品国产亚洲在线| 国产福利一区二区三区视频 | 欧美精品一区二区三区蜜桃| 国产精品1区2区3区在线观看| 中文字幕不卡三区| 欧洲精品视频在线观看| 麻豆精品一区二区综合av| 国产三级精品视频| 色国产精品一区在线观看| 久久精品国产一区二区| 亚洲欧美一区二区视频| 4438x亚洲最大成人网|