MyBatisの別名typeAliasesによる設定
6110 ワード
MyBatis別名type Aliasesの設定
第一種類:設定ファイルでtypeAliasノードにtypeを設定する方式で
第二の方式:設定ファイルでtype Aliasesノードにpackageを設定する方式
第三種類:注解による方法@Alias
一、別名(mapperから種類を探してmybatis-configに変えました)
1.beammapper.xmlを修正する
2.グローバル配置を修正するmybatis-config.xml(別名を追加しました)
3.カバンの別名
このカバンの小文字の先頭のクラスは自動的に認識されます。
二、別名の好と悪
利点は、簡単に最初のクラス名を小文字で書くことができます。より簡潔です。
デメリットはプロジェクトが多いと、種類が多くなると、ベストマッチがctrlに来て対応するクラスを探すことができません。
ここの一つの解決方法は別名の時にカバンの別名に変えますが、相変わらず治癒しません。
この時は注を使うことをおすすめします。
三、注釈の使用
各beamパッケージの下に注釈を使ってこのクラスを識別します。
例えば:
ここで取った別名は上の配置と違って、categoryという種類が見当たりません。
なぜならば、クラスを別名にして、
この時は正しいものに戻して正常に運行します。
四、いくつかの知識点
mybatis-config.xml
settings設定(グローバル特性に基づく)
typealiasの別名
以上は個人の経験ですので、参考にしていただければと思います。
第一種類:設定ファイルでtypeAliasノードにtypeを設定する方式で
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- -->
<typeAliases>
<!-- type javabean alias -->
<typeAlias alias="student" type="cn.entity.Student" />
</typeAliases>
<environments default="development">
<environment id="development">
<!-- jdbc -->
<transactionManager type="JDBC" />
<!-- -->
<dataSource type="POOLED">
<property name="driver" value="oracle.jdbc.driver.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl" />
<property name="username" value="test" />
<property name="password" value="test" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="cn/dao/StudentDAO.xml" />
</mappers>
</configuration>
このようにエイリアスを設定して以降の操作は、あるjavabeanの完全な限定名を使用した場合、私たちはalias設定の値を使って代替でき、プログラミングを簡単にしました。第二の方式:設定ファイルでtype Aliasesノードにpackageを設定する方式
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- -->
<typeAliases>
<!-- package, package , mybatis javabean, , :
javabean -->
<package name="cn.entity" />
</typeAliases>
<environments default="development">
<environment id="development">
<!-- jdbc -->
<transactionManager type="JDBC" />
<!-- -->
<dataSource type="POOLED">
<property name="driver" value="oracle.jdbc.driver.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl" />
<property name="username" value="test" />
<property name="password" value="test" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="cn/dao/StudentDAO.xml" />
</mappers>
</configuration>
このような方法によってプログラミングがより簡単になりました。実際の開発には多くのjavabeanがあります。ここではこれらのjavabeanのカバンを指定するだけでいいです。それでは彼の別名はjavabeanのイニシャル小文字の非限定類名です。第三種類:注解による方法@Alias
/**
*
* @author hyj
*
*/
@Alias(value="student")
public class Student {
private Integer id;//
private Integer age;//
private String name;//
public Student() {
}
public Student(Integer id, Integer age, String name) {
super();
this.id = id;
this.age = age;
this.name = name;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Student [id=" + id + ", age=" + age + ", name=" + name + "]";
}
}
mybatisのtype Aliasesの別名と注釈は理解します。一、別名(mapperから種類を探してmybatis-configに変えました)
1.beammapper.xmlを修正する
2.グローバル配置を修正するmybatis-config.xml(別名を追加しました)
3.カバンの別名
このカバンの小文字の先頭のクラスは自動的に認識されます。
二、別名の好と悪
利点は、簡単に最初のクラス名を小文字で書くことができます。より簡潔です。
デメリットはプロジェクトが多いと、種類が多くなると、ベストマッチがctrlに来て対応するクラスを探すことができません。
ここの一つの解決方法は別名の時にカバンの別名に変えますが、相変わらず治癒しません。
この時は注を使うことをおすすめします。
三、注釈の使用
各beamパッケージの下に注釈を使ってこのクラスを識別します。
例えば:
ここで取った別名は上の配置と違って、categoryという種類が見当たりません。
なぜならば、クラスを別名にして、
この時は正しいものに戻して正常に運行します。
四、いくつかの知識点
mybatis-config.xml
properties
:属性セット(外部リソースの導入)resource
:クラスパス下のリソースをロードするurl
:ネットワークパスまたはディスクパスのリソースを参照するmappers
:既に作成されたsqlマッピングプロファイルを読み込み、グローバルプロファイルに登録するsettings設定(グローバル特性に基づく)
typealiasの別名
以上は個人の経験ですので、参考にしていただければと思います。