您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“MyBatis中基于別名typeAliases的設(shè)置方法”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
<?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> <!-- 設(shè)置別名 --> <typeAliases> <!-- type指的是javabean的完全限定名 alias就是指代別名--> <typeAlias alias="student" type="cn.entity.Student" /> </typeAliases> <environments default="development"> <environment id="development"> <!-- 使用jdbc的事務(wù) --> <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>
通過(guò)這種方式設(shè)置別名在以后的操作是如果用到了某個(gè)javabean的完全限定名的時(shí)候我們就可以使用alias設(shè)置的值來(lái)代替,從而簡(jiǎn)化了編程。
<?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> <!-- 設(shè)置別名 --> <typeAliases> <!-- 通過(guò)package, 可以直接指定package的名字, mybatis會(huì)自動(dòng)掃描你指定包下面的javabean, 并且默認(rèn)設(shè)置一個(gè)別名,默認(rèn)的名字為: javabean 的首字母小寫(xiě)的非限定類名來(lái)作為它的別名 --> <package name="cn.entity" /> </typeAliases> <environments default="development"> <environment id="development"> <!-- 使用jdbc的事務(wù) --> <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>
通過(guò)這種方式更加簡(jiǎn)化了編程,因?yàn)樵趯?shí)際開(kāi)發(fā)中會(huì)有很多的javabean,這里只需要指定這些javabean所在的包就行了,那么默認(rèn)他的別名是javabean 的首字母小寫(xiě)的非限定類名來(lái)作為它的別名。
/** * 學(xué)生實(shí)體類 * @author hyj * */ @Alias(value="student") public class Student { private Integer id;//編號(hào) 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 + "]"; } }
1.修改beammapper.xml
2.修改全局配置mybatis-config.xml (新增了別名)
3.包的別名
會(huì)自動(dòng)識(shí)別這個(gè)包下小寫(xiě)開(kāi)頭的類.
好處是可以簡(jiǎn)略地直接用小寫(xiě)開(kāi)頭的類名來(lái)用,更簡(jiǎn)潔
壞處是如果項(xiàng)目一多,類一多起來(lái),就不好在beanmapper來(lái)ctrl來(lái)查找到對(duì)應(yīng)的類
這里一個(gè)解決方法是別名的時(shí)候換成包的別名,但是依舊治標(biāo)不治本.
所以這時(shí)候推薦使用注解
在每個(gè)beam包下使用注解來(lái)識(shí)別這個(gè)類
如:
這里取的別名跟上面的配置的不一樣,會(huì)報(bào)錯(cuò)找不到category這個(gè)類
因?yàn)榈陌杨惾×藗€(gè)不一樣的別名,
這時(shí)候改回正確的就可以正常運(yùn)行了
mybatis-config.xml
properties
:屬性集(引入外部資源)
resource
:加載類路徑下的資源
url
:引用網(wǎng)絡(luò)路徑或磁盤(pán)路徑下的資源
mappers
:加載已經(jīng)寫(xiě)好的sql映射配置文件并注冊(cè)到全局配置文件
“MyBatis中基于別名typeAliases的設(shè)置方法”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。