Mybatis筆記(三):通過註釋執行SQL語句
阿新 • • 發佈:2021-10-13
時間:2021/10/13
在之前的專案中,SQL語句都是在xml配置檔案中編寫的,這裡我們使用註釋來編寫SQL語句,具體如下:
UserDao.java檔案內容如下:
1 package bupt.machi.dao; 2 3 import bupt.machi.pojo.User; 4 import org.apache.ibatis.annotations.Param; 5 import org.apache.ibatis.annotations.Select; 6 7 import java.util.List; 8 import java.util.Map; 910 public interface UserDao { 11 12 //通過註釋獲取全部user 13 @Select("select * from mybatis.user") 14 List<User> getUserList(); 15 16 //Param註釋說明了引數在mysql引數中使用的名字 17 @Select("select * from mybatis.user where id = #{id} and name = #{name}") 18 User getUserByIdAndName(@Param("id") intid, @Param("name") String name); 19 }
關於@Param()註解
- 基本型別引數或者String,需要加上
- 引用型別不用加
- 如果只有一個基本型別的話,可以忽略,但是建議都加上
在使用註釋來執行SQL語句時,也需要在mybatis配置檔案中註冊,註冊程式碼如下:
1 <mappers> 2 <!--resource必須是/--> 3 <mapper class="bupt.machi.dao.UserDao"/> 4 </mappers>
之前在進行增刪改時,每次都需要提交事務,如果在工具類MybatisUtils中給openSession方法新增引數true,則可以自動提交事務,具體如下:
1 public static SqlSession getSqlSession(){ 2 //獲取SqlSession物件 3 //這裡如果傳了引數true,就會自動提交事務,以後就不用寫commit了 4 return sqlSessionFactory.openSession(true); 5 }努力,向上,自律