Mybatis注解增刪改查的實(shí)例代碼
要點(diǎn)
有另一種方法來(lái)完成語(yǔ)句映射。 它們映射的語(yǔ)句可以不用 XML 來(lái)配置,而可以使用 Java 注解來(lái)配置。
使用注解來(lái)映射簡(jiǎn)單語(yǔ)句會(huì)使代碼顯得更加簡(jiǎn)潔,但對(duì)于稍微復(fù)雜一點(diǎn)的語(yǔ)句,Java 注解不僅力不從心,還會(huì)讓你本就復(fù)雜的 SQL 語(yǔ)句更加混亂不堪。
如果你需要做一些很復(fù)雜的操作,最好用 XML 來(lái)映射語(yǔ)句。
需要在config.xml中注冊(cè)Java接口
<mappers> <mapper class="com.mybatis.DAO.PeopleMapper"/> </mappers>
要用class=
查
public interface PeopleMapper { @Select("select * from people") List<People> getPeopleList(); }
增
可以先開(kāi)啟事務(wù)自動(dòng)提交
public static SqlSession getSqlSession(){ return sqlSessionFactory.openSession(true); } }
Mapper.java
public interface PeopleMapper { @Select("select * from people") List<People> getPeopleList(); @Insert("insert into people(id, name, age, address) VALUES (#{id},#{name},#{age},#{address})") int addPeople(People people); }
test
public class PeopleDAOtest { @Test public void print() { SqlSession sqlSession = MybatisUtils.getSqlSession(); PeopleMapper peopleMapper = sqlSession.getMapper(PeopleMapper.class); List<People> people = peopleMapper.getPeopleList(); for (People p :people){ System.out.println(p); } sqlSession.close(); } @Test public void add(){ SqlSession sqlSession = MybatisUtils.getSqlSession(); PeopleMapper peopleMapper = sqlSession.getMapper(PeopleMapper.class); peopleMapper.addPeople(new People(6,"圣迭戈",456,"啥地方")); print(); } }
因?yàn)橐呀?jīng)自動(dòng)提交了,所以不需要sqlSession.commit();
刪
注解@Param
只能用于基本數(shù)據(jù)類(lèi)型
傳入的參數(shù)只能和sql語(yǔ)句中參數(shù)一樣
多個(gè)參數(shù)
樣例
public interface PeopleMapper { @Delete("delete people from people where id=#{uid}") int delPeople(@Param("uid") int i); }
test
public class PeopleDAOtest { @Test public void del(){ SqlSession sqlSession = MybatisUtils.getSqlSession(); PeopleMapper peopleMapper = sqlSession.getMapper(PeopleMapper.class); peopleMapper.delPeople(6); print(); } }
改
Mapper.java
public interface PeopleMapper { @Update("update mybatis.people set name=#{name} ,age=#{age} ,address=#{address} where id=#{id}") int updateP(People people); }
test
public class PeopleDAOtest { @Test public void update(){ SqlSession sqlSession = MybatisUtils.getSqlSession(); PeopleMapper peopleMapper = sqlSession.getMapper(PeopleMapper.class); peopleMapper.updateP(new People(5,"圣迭戈",456,"啥地方")); print(); } }
總結(jié)
到此這篇關(guān)于Mybatis注解增刪改查的文章就介紹到這了,更多相關(guān)Mybatis注解增刪改查內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Oracle + mybatis實(shí)現(xiàn)對(duì)數(shù)據(jù)的簡(jiǎn)單增刪改查實(shí)例代碼
- Spring boot + mybatis + Vue.js + ElementUI 實(shí)現(xiàn)數(shù)據(jù)的增刪改查實(shí)例代碼(二)
- Spring boot + mybatis + Vue.js + ElementUI 實(shí)現(xiàn)數(shù)據(jù)的增刪改查實(shí)例代碼(一)
- Mybatis實(shí)現(xiàn)數(shù)據(jù)的增刪改查實(shí)例(CRUD)
- 簡(jiǎn)述Mybatis增刪改查實(shí)例代碼
- Mybatis實(shí)現(xiàn)增刪改查(CRUD)實(shí)例代碼
- SpringBoot整合MybatisPlus實(shí)現(xiàn)增刪改查功能
- Mybatis實(shí)現(xiàn)增刪改查
- Mybatis步驟分解實(shí)現(xiàn)一個(gè)增刪改查程序
相關(guān)文章
@RequestMapping 如何使用@PathVariable 從URI中獲取參數(shù)
這篇文章主要介紹了@RequestMapping 如何使用@PathVariable 從URI中獲取參數(shù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08SpringBoot + validation 接口參數(shù)校驗(yàn)的思路詳解
這篇文章主要介紹了SpringBoot + validation 接口參數(shù)校驗(yàn),本文通過(guò)項(xiàng)目實(shí)踐+場(chǎng)景分析給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10Springsession nginx反向代理集成過(guò)程
這篇文章主要介紹了Springsession nginx反向代理集成過(guò)程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04cmd中javac和java使用及注意事項(xiàng)詳解
這篇文章主要介紹了cmd中javac和java使用及注意事項(xiàng)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07Java CGLib動(dòng)態(tài)代理機(jī)制(全面解析)
下面小編就為大家?guī)?lái)一篇Java CGLib動(dòng)態(tài)代理機(jī)制(全面解析)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08SpringMVC 重定向參數(shù)RedirectAttributes實(shí)例
這篇文章主要介紹了SpringMVC 重定向參數(shù)RedirectAttributes實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12