map
接口UserDao
//万能的Map插入一个用户
void addUser2(Map<String,Object>map);
实现类UserDaoImpl
@Override
public void addUser2(Map<String, Object> map) {}
Mybatis工具类MybatisUtils
package com.tjrac.utils;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.IOException;
import java.io.InputStream;
//sqlSessionFactory->sqlSession
public class MybatisUtils {private static SqlSessionFactory sqlSessionFactory;static {try {//获取sqlSessionFactory对象String resource="mybatis-config.xml";InputStream inputStream= Resources.getResourceAsStream(resource);sqlSessionFactory =new SqlSessionFactoryBuilder().build(inputStream);} catch (IOException e) {e.printStackTrace();}}//既然优势sqlSessionFactory,我们就可以从中获取SqlSession的实例了。//SqlSession包含的SQL命令所需的所有方法。public static SqlSession getSqlSession(){return sqlSessionFactory.openSession();}
}
UserMapper.xml
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!--mybatis的核心配置文件是有一定顺序的 -->
<!--
id:就是对应的namesoace方法名
resultType:Sql语句执行的返回方法-->
<mapper namespace="com.tjrac.dao.UserDao"> <insert id="addUser2" parameterType="map">insert into mybatis.user (id, name, paw) value (#{userid},#{username},#{userpaw});</insert>
</mapper>
测试类UserDaoTest
package com.tjrac.dao;
import com.tjrac.pogo.User;
import com.tjrac.utils.MybatisUtils;
import org.apache.ibatis.session.SqlSession;
import org.junit.Test;import java.util.HashMap;
import java.util.List;
import java.util.Map;public class UserDaoTest {@Testpublic void upUser2(){//第一步:获取SqlSession对象SqlSession sqlSession = MybatisUtils.getSqlSession();//第二步:执行SQLUserDao userDao= sqlSession.getMapper(UserDao.class);Map<String,Object> map =new HashMap<String,Object>();map.put("userid","5");map.put("username","郑承");map.put("userpaw","456789");userDao.addUser2(map);//提交事务,很重要sqlSession.commit();sqlSession.close();}
}
javaweb笔记、Map传递参数,直接在sql中取出Key!【parameterType=“map”】
对象传递参数,直接sql中取对象的属性即可!【parameterType=“Object”】
只有一个类型基本参数的情况下,可以直接取到!
多个参数用Map或注解
核心配置文件
mybatis-config.xml
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态