文章出處
運行這個測試程序,就可以看到結果了。
文章列表
前面一章,已經搭建好了eclipse,mybatis,mysql的環境,并且實現了一個簡單的查詢。請注意,這種方式是用SqlSession實例來直接執行已映射的SQL語句:
session.selectOne("com.yihaomen.mybatis.models.UserMapper.selectUserByID", 1)
其實還有更簡單的方法,而且是更好的方法,使用合理描述參數和SQL語句返回值的接口(比如IUserOperation.class),這樣現在就可以至此那個更簡單,更安全的代碼,沒有容易發生的字符串文字和轉換的錯誤.下面是詳細過程:
在src_user源碼目錄下建立 com.yihaomen.mybatis.inter 這個包,并建立接口類 IUserOperation , 內容如下:
package com.yihaomen.mybatis.inter; import com.yihaomen.mybatis.model.User; public interface IUserOperation { public User selectUserByID(int id); }
請注意,這里面有一個方法名 selectUserByID 必須與 User.xml 里面配置的 select 的id 對應(<select id="selectUserByID")
重寫測試代碼
public static void main(String[] args) { SqlSession session = sqlSessionFactory.openSession(); try { IUserOperation userOperation=session.getMapper(IUserOperation.class); User user = userOperation.selectUserByID(1); System.out.println(user.getUserAddress()); System.out.println(user.getUserName()); } finally { session.close(); } }
整個工程結構圖現在如下:

這種方式,要注意的一個地方就是。在User.xml 的配置文件中,修改為 mapper namespace="com.yihaomen.mybatis.inter.IUserOperation" ,命名空間非常重要,不能有錯,必須與我們定義的package 和 接口一致。

這種方式,要注意的一個地方就是。在User.xml 的配置文件中,修改為 mapper namespace="com.yihaomen.mybatis.inter.IUserOperation" ,命名空間非常重要,不能有錯,必須與我們定義的package 和 接口一致。
運行這個測試程序,就可以看到結果了。
文章列表
全站熱搜