[Seasar-user:12054] Re: S2JDBCのEntityアノテーションのname属性
    Koichi Kobayashi
    [E-MAIL ADDRESS DELETED]
       
    2007年 12月 12日 (水) 15:15:15 JST
    
    
  
小林 (koichik) です.
Date:    Wed, 12 Dec 2007 14:51:45 +0900
From:    "kiyoshi hosoda" <[E-MAIL ADDRESS DELETED]>
To:      [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:12052] Re: S2JDBCのEntityアノテーションのname属性
> ・@Entityのname属性を指定する → name属性の値がエンティティ名
> ・テーブル名が指定されない → エンティティ名をアンダースコア記法に変換したものがテーブル名
> 
> このケースではなにか違和感を感じるというだけです。漠然としていてすみません。
エンティティ名というのは Java の世界で使う
識別子であり,RDBMS の世界で使う識別子では
ありません.
そこを誤解しているために違和感を憶えるのでは
ないでしょうか.
エンティティ名が Java の世界の識別子ということは,
@Entity(name="EMPLOYEE")
や
@Entity(name="FOO_BAR_BAZ")
のような指定はあり得なくて,
@Entity(name="Employee")
であったり,
@Entity(name="FooBarBaz")
であるということです.
それを RDBMS の世界の識別子,つまりテーブル名と
する際に,S2JDBC はキャメル記法からアンダー
スコア区切りの識別子に変換するのがデフォルトと
いうことです.
とはいえ,EMPLOYEE が E_M_P_L_O_Y_E_E は
ちょっとどうかという気はします.
大文字が続く場合は _ を挿入しなくていいかも.
-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>
    
    
Seasar-user メーリングリストの案内