詳解Mybatis(五)Mapper接口
(1)Mapper接口和原理
Mapper組建
- 1、Mapper文件和Mapper接口應(yīng)該放在同一個(gè)接口中
- 2、Mapper文件中的namespace應(yīng)該設(shè)置為Mapper接口的全限定名稱
- 3、Mapper文件中的操作元素ID對應(yīng)Mapper接口的方法名稱
Mapper原理:
動(dòng)態(tài)代理
(2)配置文件
userMapper.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!-- 為這個(gè)mapper指定一個(gè)唯一的namespace,namespace的值習(xí)慣上設(shè)置成包名+sql映射文件名,這樣就能夠保證namespace的值是唯一的 例如namespace="me.gacl.mapping.userMapper"就是me.gacl.mapping(包名)+userMapper(userMapper.xml文件去除后綴) --> <mapper namespace="Mybatis.domain.Mapper.UserMapper"> <resultMap type="User" id="BaseResultMap"> <result column="t_id" property="id"/> <result column="t_name" property="name"/> <result column="t_salary" property="salary"/> </resultMap> <!-- 保存操作 --> <insert id="save" useGeneratedKeys="true" keyProperty="id"> INSERT INTO t_user (name , salary) VALUES (#{name},#{salary}) </insert> <!-- 更改操作 --> <update id="update"> update t_user where name=#{name},salary=#{salary} where id=#{id} </update> <!-- 刪除操作 --> <delete id="delete" > delete from t_user where id=#{id} </delete> <!-- 查詢單個(gè)操作 --> <select id="select" parameterMap="java.lang.Long" resultType="Mybatis.domain.User"> select * from t_user where id = #{id} </select> <!-- 查詢多個(gè)操作 --> <select id="selectAll" resultType="User"> select id,name,salary from t_user </select> </mapper>
UserMapper.java
import java.util.List; import Mybatis.domain.User; public interface UserMapper { void save(User u); void update(User u); void delete(Long id); User select(User u); List<User> selectAll(); }
以上所述是小編給大家介紹的Mybatis Mapper接口詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- Mybatis Mapper接口工作原理實(shí)例解析
- Mybatis MapperScannerConfigurer自動(dòng)掃描Mapper接口生成代理注入到Spring的方法
- 詳解mybatis通過mapper接口加載映射文件
- mybatis如何通過接口查找對應(yīng)的mapper.xml及方法執(zhí)行詳解
- 詳解MyBatis的getMapper()接口、resultMap標(biāo)簽、Alias別名、 盡量提取sql列、動(dòng)態(tài)操作
- 在IDEA中安裝MyBatis Log Plugin插件,執(zhí)行mybatis的sql語句(推薦)
- mybatis 批量將list數(shù)據(jù)插入到數(shù)據(jù)庫的實(shí)現(xiàn)
- Mybatis mapper接口動(dòng)態(tài)代理開發(fā)步驟解析
相關(guān)文章
SpringBoot動(dòng)態(tài)定時(shí)任務(wù)、動(dòng)態(tài)Bean、動(dòng)態(tài)路由詳解
這篇文章主要介紹了SpringBoot動(dòng)態(tài)定時(shí)任務(wù)、動(dòng)態(tài)Bean、動(dòng)態(tài)路由詳解,之前用過Spring中的定時(shí)任務(wù),通過@Scheduled注解就能快速的注冊一個(gè)定時(shí)任務(wù),但有的時(shí)候,我們業(yè)務(wù)上需要?jiǎng)討B(tài)創(chuàng)建,或者根據(jù)配置文件、數(shù)據(jù)庫里的配置去創(chuàng)建定時(shí)任務(wù),需要的朋友可以參考下2023-10-10Spring Boot + thymeleaf 實(shí)現(xiàn)文件上傳下載功能
最近同事問我有沒有有關(guān)于技術(shù)的電子書,我打開電腦上的小書庫,但是郵件發(fā)給他太大了,公司又禁止用文件夾共享,于是花半天時(shí)間寫了個(gè)小的文件上傳程序,部署在自己的Linux機(jī)器上,需要的朋友可以參考下2018-01-01解決SpringMVC接收不到ajaxPOST參數(shù)的問題
今天小編就為大家分享一篇解決SpringMVC接收不到ajaxPOST參數(shù)的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-08-08JDK自帶的序列化方式優(yōu)缺點(diǎn)及實(shí)現(xiàn)原理面試精講
這篇文章主要為大家介紹了JDK自帶的序列化方式優(yōu)缺點(diǎn)及實(shí)現(xiàn)原理面試精講,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10jetbrain?fleet對標(biāo)vscode實(shí)際操作
Gradle是一個(gè)基于Apache Ant和Apache Maven概念項(xiàng)目自動(dòng)化構(gòu)建開源工具,jetbrain家的fleet(已獲得預(yù)覽權(quán)限)直接對標(biāo)vscode?,?fleet有望超過vscode嗎?今天我們實(shí)際操作下2021-12-12springboot 使用Spring Boot Actuator監(jiān)控應(yīng)用小結(jié)
本篇文章主要介紹了springboot 使用Spring Boot Actuator監(jiān)控應(yīng)用小結(jié),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-02-02