300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Mybatis ResultType处理返回类型

Mybatis ResultType处理返回类型

时间:2024-01-23 04:54:35

相关推荐

Mybatis ResultType处理返回类型

目录

1. 使用resultType返回List

2.使用resultType返回单个对象

3.使用resultType返回List,适用于多表查询返回结果集

4.使用resultType返回Map,适用于多表查询返回单个结果集,object>

1. 使用resultType返回List<T>

Mapper.xml

<select id="resultType2" resultType="String">selectbook_namefrom tb_book</select>

service层

List<String> resultType2();

实现类

//创建对象private BookMapper bookMapper;/*** 给bookMapper set,get方法* @return*/public BookMapper getBookMapper() {return bookMapper;}public void setBookMapper(BookMapper bookMapper) {this.bookMapper = bookMapper;}@Overridepublic List<String> resultType2() {return bookMapper.resultType2();}

使用junit测试

package com.jmh.mybatis.service.impl;import com.jmh.mybatis.mapper.BookMapper;import com.jmh.mybatis.model.Book;import com.jmh.mybatis.model.BookVo;import com.jmh.mybatis.service.IBookService;import com.jmh.mybatis.utils.MybatisSqlSessionFactory;import org.apache.ibatis.annotations.MapKey;import org.apache.ibatis.session.SqlSession;import org.junit.After;import org.junit.Before;import org.junit.Test;import java.util.List;import java.util.Map;import java.util.Set;import static org.junit.Assert.*;public class DemoTest {//获取对象private Book book;private IBookService iBookService;private SqlSession sqlSession;@Beforepublic void setUp() throws Exception {book=new Book();sqlSession = MybatisSqlSessionFactory.getSqlsession();BookMapper mapper = sqlSession.getMapper(BookMapper.class);BookServiceImpl iml=new BookServiceImpl();iml.setBookMapper(mapper);iBookService= iml;}@Afterpublic void tearDown() throws Exception {mit();MybatisSqlSessionFactory.closeSqlsession();}@Testpublic void resultType2() {List<String> books = iBookService.resultType2();for (String b : books) {System.out.println(b);}}}

测试如下

2.使用resultType返回单个对象

Mapper.xml

<select id="resultType3" resultType="com.jmh.mybatis.model.Book">select<include refid="Base_Column_List" />from tb_book where book_id=306</select>

service层

Book resultType3();

实现类

//创建对象private BookMapper bookMapper;/*** 给bookMapper set,get方法* @return*/public BookMapper getBookMapper() {return bookMapper;}public void setBookMapper(BookMapper bookMapper) {this.bookMapper = bookMapper;}@Overridepublic Book resultType3() {return bookMapper.resultType3();}

使用junit测试

package com.jmh.mybatis.service.impl;import com.jmh.mybatis.mapper.BookMapper;import com.jmh.mybatis.model.Book;import com.jmh.mybatis.model.BookVo;import com.jmh.mybatis.service.IBookService;import com.jmh.mybatis.utils.MybatisSqlSessionFactory;import org.apache.ibatis.annotations.MapKey;import org.apache.ibatis.session.SqlSession;import org.junit.After;import org.junit.Before;import org.junit.Test;import java.util.List;import java.util.Map;import java.util.Set;import static org.junit.Assert.*;public class DemoTest {//获取对象private Book book;private IBookService iBookService;private SqlSession sqlSession;@Beforepublic void setUp() throws Exception {book=new Book();sqlSession = MybatisSqlSessionFactory.getSqlsession();BookMapper mapper = sqlSession.getMapper(BookMapper.class);BookServiceImpl iml=new BookServiceImpl();iml.setBookMapper(mapper);iBookService= iml;}@Afterpublic void tearDown() throws Exception {mit();MybatisSqlSessionFactory.closeSqlsession();}@Testpublic void resultType3() {Book book = iBookService.resultType3();System.out.println(book);}}

3.使用resultType返回List<Map>,适用于多表查询返回结果集

mapper接口

需要使用注解才能使用map其实这个主要功能也不大 将就着用吧

@MapKey("id")List<Map<String,Object>> resultType4();

mapper.xml

<select id="resultType4" resultType="java.util.Map">select book_id,price,book_name from tb_book</select>

service层

List<Map<String,Object>> resultType4();

实现类

//创建对象private BookMapper bookMapper;/*** 给bookMapper set,get方法* @return*/public BookMapper getBookMapper() {return bookMapper;}public void setBookMapper(BookMapper bookMapper) {this.bookMapper = bookMapper;}@Overridepublic List<Map<String, Object>> resultType4() {return bookMapper.resultType4();}

使用junit测试

package com.jmh.mybatis.service.impl;import com.jmh.mybatis.mapper.BookMapper;import com.jmh.mybatis.model.Book;import com.jmh.mybatis.model.BookVo;import com.jmh.mybatis.service.IBookService;import com.jmh.mybatis.utils.MybatisSqlSessionFactory;import org.apache.ibatis.annotations.MapKey;import org.apache.ibatis.session.SqlSession;import org.junit.After;import org.junit.Before;import org.junit.Test;import java.util.List;import java.util.Map;import java.util.Set;import static org.junit.Assert.*;public class DemoTest {//获取对象private Book book;private IBookService iBookService;private SqlSession sqlSession;@Beforepublic void setUp() throws Exception {book=new Book();sqlSession = MybatisSqlSessionFactory.getSqlsession();BookMapper mapper = sqlSession.getMapper(BookMapper.class);BookServiceImpl iml=new BookServiceImpl();iml.setBookMapper(mapper);iBookService= iml;}@Afterpublic void tearDown() throws Exception {mit();MybatisSqlSessionFactory.closeSqlsession();}@Testpublic void resultType4() {List<Map<String, Object>> maps = iBookService.resultType4();for (Map<String, Object> map : maps) {System.out.println(map);}}}

4.使用resultType返回Map<String,Object>,适用于多表查询返回单个结果集

mapper接口

@MapKey("id")Map<String,Object> resultType5();

mapper.xml

<select id="resultType5" resultType="java.util.Map">select book_id,price from tb_book</select>

service层

Map<String,Object> resultType5();

实现类

//创建对象private BookMapper bookMapper;/*** 给bookMapper set,get方法* @return*/public BookMapper getBookMapper() {return bookMapper;}public void setBookMapper(BookMapper bookMapper) {this.bookMapper = bookMapper;}@Overridepublic Map<String, Object> resultType5() {return bookMapper.resultType5();}

使用junit测试

package com.jmh.mybatis.service.impl;import com.jmh.mybatis.mapper.BookMapper;import com.jmh.mybatis.model.Book;import com.jmh.mybatis.model.BookVo;import com.jmh.mybatis.service.IBookService;import com.jmh.mybatis.utils.MybatisSqlSessionFactory;import org.apache.ibatis.annotations.MapKey;import org.apache.ibatis.session.SqlSession;import org.junit.After;import org.junit.Before;import org.junit.Test;import java.util.List;import java.util.Map;import java.util.Set;import static org.junit.Assert.*;public class DemoTest {//获取对象private Book book;private IBookService iBookService;private SqlSession sqlSession;@Beforepublic void setUp() throws Exception {book=new Book();sqlSession = MybatisSqlSessionFactory.getSqlsession();BookMapper mapper = sqlSession.getMapper(BookMapper.class);BookServiceImpl iml=new BookServiceImpl();iml.setBookMapper(mapper);iBookService= iml;}@Afterpublic void tearDown() throws Exception {mit();MybatisSqlSessionFactory.closeSqlsession();}@Testpublic void resultType5() {Map<String, Object> map = iBookService.resultType5();System.out.println(map);}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。