欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mybatis-plus多表查詢操作方法

 更新時(shí)間:2023年12月25日 11:09:47   作者:hexu_blog  
這篇文章主要介紹了mybatis-plus多表查詢操作方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

在多表查詢返回結(jié)果時(shí):應(yīng)該如何處理呢?

 第一種:在xml中使用  resultMap 處理,我本人不推薦,因?yàn)椋ㄈ绻粋€(gè)xml中如果有多個(gè)多張表查詢,就得寫多個(gè)resultMap與之對應(yīng))

第二種:返回結(jié)果用實(shí)體接收,但是返回的是多張表的字段,那就得寫一個(gè)實(shí)體中包含多張表的所有屬性才能接收,這里也不建議

第三種:也是準(zhǔn)備說的

    1).我們查詢返回的結(jié)果無非是一個(gè)個(gè)的map類型,然后封裝進(jìn)入List中,看一下xml文件

    <!-- 查詢超管列表 -->
  <select id="managerList" resultType="map" >
     SELECT m.*,r.rolename FROM 
         tbl_manager_info m
        INNER JOIN 
           tbl_role_info  r
         ON 
           m.account=r.account
         AND 
           m.type='0'
           <if test="account!=null and account!='' ">
              AND m.account=#{account}
           </if>
          ORDER BY 
             m.createdtime 
           DESC
  </select>

2). java代碼中的mapper,返回的類型我們設(shè)置為List<Map<String,Object>>即可,這里必須繼承BaseMapper類,才能實(shí)現(xiàn)分頁,注意了

    public interface ManagerMapper extends BaseMapper<TblManagerInfo>{
	//查詢超管列表
	public List<Map<String,Object>> managerList(Pagination page,Map<String,Object> params) throws Exception;

3). service層,記得繼承  IService

public interface ManagerService extends IService<TblManagerInfo>{
	//查詢超管列表
	public Page<Map<String,Object>> managerList(Page<Map<String,Object>> page,Map<String,Object> params)throws Exception;
}

4).service實(shí)現(xiàn)類

@Service
public class ManagerServiceImpl  extends ServiceImpl<ManagerMapper, TblManagerInfo> implements ManagerService {
	@Autowired
	private ManagerMapper managerDao;
	@Override
	public Page<Map<String, Object>> managerList(
			Page<Map<String, Object>> page, Map<String, Object> params)
			throws Exception {
		  return page.setRecords(managerDao.managerList(page, params));
	}
}

5).controller層

  //超管列表
	@RequestMapping("/admin/queryManagerList")
	@ResponseBody
	public ResultVo queryManagerList(HttpServletResponse response,HttpServletRequest request,
			@RequestParam("page") Integer pageNo,
			@RequestParam("limit") Integer pageSize,
			@RequestParam(value="account",defaultValue="")String account
			) throws Exception{
		//這是我自己定義的封裝類,返回前端的整和
		ResultVo rv=ResultVo.getResultVo();
		try {
			Map<String,Object> params=new WebUtils().getMap();
			params.put("account", account);
            //這個(gè)位置開始調(diào)用
			Page<Map<String,Object>> page=new Page<Map<String,Object>>(pageNo, pageSize);
			managerService.managerList(page,params);//這里就得到數(shù)據(jù)了
			rv.setCount(page.getTotal());//往封裝類存入數(shù)據(jù)量
			rv.setData(page.getRecords());//往封裝類存入數(shù)據(jù)
			rv.setCode("0");
		} catch (Exception e) {
			rv.setCode("1");
			e.printStackTrace();
		}
		return rv;
	}

到此這篇關(guān)于mybatis-plus多表查詢的文章就介紹到這了,更多相關(guān)mybatis-plus多表查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳談jpa中表的@OneToMany等關(guān)聯(lián)關(guān)系

    詳談jpa中表的@OneToMany等關(guān)聯(lián)關(guān)系

    這篇文章主要介紹了詳談jpa中表的@OneToMany等關(guān)聯(lián)關(guān)系,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Spring Boot的應(yīng)用啟動與關(guān)閉的方法

    Spring Boot的應(yīng)用啟動與關(guān)閉的方法

    本篇文章主要介紹了Spring Boot的應(yīng)用啟動與關(guān)閉的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-12-12
  • java格式化數(shù)值成貨幣格式示例

    java格式化數(shù)值成貨幣格式示例

    這篇文章主要介紹了java格式化數(shù)值成貨幣格式示例,格式化一個(gè)數(shù)值,比如123456789.123,希望顯示成"$123,456,789.123",需要的朋友可以參考下
    2014-04-04
  • Spring中如何使用Comparator接口

    Spring中如何使用Comparator接口

    Comparator比較器接口可以將自身傳遞給排序方法(比如Collections.sort或Arrays.sort),以便對排序順序進(jìn)行精確控制。本文講述Spring中如何使用Comparator接口
    2021-06-06
  • Java+element實(shí)現(xiàn)excel的導(dǎo)入和導(dǎo)出

    Java+element實(shí)現(xiàn)excel的導(dǎo)入和導(dǎo)出

    本文主要介紹了Java+element實(shí)現(xiàn)excel的導(dǎo)入和導(dǎo)出,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • Spring?Boot如何通過Actuator顯示git和build的信息

    Spring?Boot如何通過Actuator顯示git和build的信息

    這篇文章主要介紹了Spring?Boot通過Actuator顯示git和build的信息,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-01-01
  • Java?Mybatis框架由淺入深全解析上篇

    Java?Mybatis框架由淺入深全解析上篇

    MyBatis是一個(gè)優(yōu)秀的持久層框架,它對jdbc的操作數(shù)據(jù)庫的過程進(jìn)行封裝,使開發(fā)者只需要關(guān)注SQL本身,而不需要花費(fèi)精力去處理例如注冊驅(qū)動、創(chuàng)建connection、創(chuàng)建statement、手動設(shè)置參數(shù)、結(jié)果集檢索等jdbc繁雜的過程代碼本文將為大家初步的介紹一下MyBatis的使用
    2022-07-07
  • Java迭代器遍歷list的方法及代碼分析

    Java迭代器遍歷list的方法及代碼分析

    在本篇內(nèi)容里系小編給大家分享的是一篇關(guān)于Java迭代器遍歷list的方法總結(jié)內(nèi)容,有需要的朋友們可以參考學(xué)習(xí)下。
    2022-11-11
  • Springboot如何使用OSHI獲取和操作系統(tǒng)和硬件信息

    Springboot如何使用OSHI獲取和操作系統(tǒng)和硬件信息

    這篇文章主要介紹了Springboot如何使用OSHI獲取和操作系統(tǒng)和硬件信息問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • springbean的八種加載方式匯總

    springbean的八種加載方式匯總

    這篇文章主要介紹了springbean的八種加載方式,一種是XML方式聲明bean,使用@Component及其衍生注解@Controller?、@Service、@Repository定義bean,還有其他方法,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-10-10

最新評論