java 获取sqlsession_获取Java的MyBatis框架项目中的SqlSession的方法
從XML中構(gòu)建SqlSessionFactory從XML文件中構(gòu)建SqlSessionFactory的實(shí)例非常簡(jiǎn)單。這里建議你使用類路徑下的資源文件來配置.
String resource = "org/mybatis/example/Configuration.xml";
Reader reader = Resources.getResourceAsReader(resource);
sqlMapper = new SqlSessionFactoryBuilder().build(reader);
XML配置文件包含對(duì)MyBatis系統(tǒng)的核心設(shè)置,包含獲取數(shù)據(jù)庫(kù)連接實(shí)例的數(shù)據(jù)源和決定事務(wù)范圍和控制的事務(wù)管理器。如例:
/p>
當(dāng)然,在XML配置文件中還有很多可以配置的,上面的示例指出的則是最關(guān)鍵的部分。
從SqlSessionFactory中現(xiàn)在,我們已經(jīng)知道如何獲取SqlSessionFactory對(duì)象了,基于同樣的啟示,我們就可以獲得SqlSession的實(shí)例了。SqlSession對(duì)象完全包含以數(shù)據(jù)庫(kù)為背景的所有執(zhí)行SQL操作的方法。你可以用SqlSession實(shí)例來直接執(zhí)行已映射的SQL 語句。例如:
SqlSession session = sqlMapper.openSession();
try{
Blog blog = (Blog)session.selectOne("org.mybatis.example.BlogMapper.selectBlog",101);
}finally{
session.close();
}
現(xiàn)在有一種更簡(jiǎn)潔的方法。使用合理描述參數(shù)和SQL語句返回值的接口(比如BlogMapper.class),這樣現(xiàn)在就更簡(jiǎn)單,更安全的代碼,http://www.cppcns.com沒有容易發(fā)生的字符串文字和轉(zhuǎn)換的錯(cuò)誤。例如:
S編程客棧qlSession session = sqlSessionFactory.openSession();
try {
BlogMapper mapper = session.getMapper(BlogMapper.class);
Blog blog = mapper.selectBlog(101);
}finally{
session.close();
}
探究已映射的SQL語句這里給出一個(gè)基于XML映射語句的示例,這些語句應(yīng)該可以滿足上述示例中SqlSession對(duì)象的調(diào)用。
/p>
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
select * from Blog where id = #{id}
在命名空間“com.mybatis.example.BlogMapper”中,它定義了一個(gè)名為“selectBlog”的映射語句,這樣它允許你使用完全限定名“org.mybatis.example.BlogMapper.selectBlog”來調(diào)用映射語句,我們下面示例中的寫法也就是這樣的。
Blog blog = (Blog)session.selectOne("org.mybatis.example.BlogMapper.selectBlog", 101);
但下面的調(diào)用更有優(yōu)勢(shì):
映射接口對(duì)應(yīng)映射xml文件的命令空間,接口方法對(duì)應(yīng)映射xml文件中定義的SQL映射的ID。???????????
BlogMapper mapper = session.getMapper(BlogMapper.class);
Blog blog = mapper.selectBlog(101);
首先它不是基于文字的,那就更安全了。第二,如果你的IDE有代碼補(bǔ)全功能,那么你可以利用它來操縱已映射的SQL語句。第三,不需要強(qiáng)制類型轉(zhuǎn)換,同時(shí)BlogMapper接口可以保持簡(jiǎn)潔,返回值類型很安全(參數(shù)類型也很安全)。
本文標(biāo)題: 獲取Java的MyBatis框架項(xiàng)目中的SqlSession的方法
本文地址: http://www.cppcns.com/ruanjian/java/151944.html
總結(jié)
以上是生活随笔為你收集整理的java 获取sqlsession_获取Java的MyBatis框架项目中的SqlSession的方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 玻屏阿克鲁门窗怎么样?
- 下一篇: 用PNF添加剂修复烧机油不能多行驶怎么办