在MyBatis+MySQL中,将查询的结果放到Map的几种方式

1、基于XML形式,将查询的结果放到Map中

	/**
	 * 将查询到的用户信息放到Map当中,然后从HashMap中获取用户信息
	 */
	@Test
	public void GetUserFromMap(){
		SqlSession sqlSession = MybatisUtils.SqlSessionManualCommit();
		String statement = userNameSpace + "getUserFromMap";
		HashMap<String,Object> user = sqlSession.selectOne(statement, 1);	
		sqlSession.close();
		System.out.println("map");
		System.out.println(user);
		//目的是为了要注意,从hashMap中获取值,要注意key的大小写
		System.out.println(user.get("name"));
		System.out.println(user.get("NAME"));
	}
	<!-- 将查询的结果放到map当中 -->
	<select id="getUserFromMap" parameterType="int" resultType="map">
		SELECT
		ID,NAME,AGE FROM USER WHERE ID=#{id}
	</select>

2、基于注解的方式,将查询的结果放到Map中

	@Test
	public void getUserFromMap(){
		SqlSession sqlSession = MybatisUtils.SqlSessionAutoCommit();
		UserMapper userMapper=sqlSession.getMapper(UserMapper.class);
		HashMap<String,Object> userMap=userMapper.getUserFromMap(1);
		sqlSession.close();
		System.out.println(userMap);	
	}

	@Select("select id,name,age from user where id=#{id}")
	public HashMap<String,Object> getUserFromMap(int id);

3、备注声明

        以上部分笔者仅仅展示了核心代码,其代码细节的部分,详情请见笔者上传到码云的项目mybatis1


猜你喜欢

转载自blog.csdn.net/liubin5620/article/details/80491565