/** * @author : xjszsd * @date : 2021-12-13 16:20 */
public interface IAccountDao {
// Возвращаем карту записей; ключ — это имя столбца, а значение — соответствующее значение.
Map<String,Object> selectAll(Integer id);
/** * Если тип ключа карты изменен здесь на другой тип, это не повлияет на назначение @MapKey ключу карты. * @return */
@MapKey("name")//Укажите поле id в базе данных как ключ карты
Map<String,Map<String,Object>> select();
}
<!-- Map<String,Object> selectAll(Integer id); -->
<select id="selectAll" parameterType="Integer" resultType="java.util.Map">
select id , money from account where id=#{id}
</select>
<!-- Map<String,Map<String,Object>> select(); -->
<select id="select" resultType="java.util.Map">
select id,name,money from account
</select>
3.1 Подготовка
@Before
public void init() throws IOException {
//1. Читаем файл конфигурации.
in = Resources.getResourceAsStream("SqlMapConfig.xml");
//2. Создаем фабрику SqlSessionFactory.
SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
factory=builder.build(in);
//3. Используем фабрику для создания объектов SqlSession.
session= factory.openSession();
}
@After
public void after() throws IOException {
session.close();
in.close();
}
3.2 Значением карты является класс Java
@Test
public void selectTest(){
IAccountDao mapper = session.getMapper(IAccountDao.class);
Map<String, Object> map = mapper.selectAll(1);
System.out.println(map);
}
результат:
3.3 Значением карты является класс карты.
@Test
public void selectTest2(){
IAccountDao mapper = session.getMapper(IAccountDao.class);
Map<String, Map<String, Object>> map = mapper.select();
System.out.println(map);
}
результат:
Заявление об авторских правах: Содержание этой статьи добровольно предоставлено пользователями Интернета, а мнения, выраженные в этой статье, представляют собой только точку зрения автора. Этот сайт предоставляет только услуги по хранению информации, не имеет никаких прав собственности и не принимает на себя соответствующие юридические обязательства. Если вы обнаружите на этом сайте какое-либо подозрительное нарушение авторских прав/незаконный контент, отправьте электронное письмо, чтобы сообщить. После проверки этот сайт будет немедленно удален.
Издатель: Лидер стека программистов полного стека, укажите источник для перепечатки: https://javaforall.cn/186021.html Исходная ссылка: https://javaforall.cn