以下为原生mybatis
1、导入jar包
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<!-- 原生mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.1</version>
</dependency>
2、配置xml文件
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/test/dao/GoodMapper.xml"/>
</mappers></configuration>
注意: 在xml文件中, &需要转义,即&
3、创建一个java文件
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
SqlSession sqlSession = sqlSessionFactory.openSession();
List<Object> list = sqlSession.selectList("Good.getGood");
for (Object object : list) {
System.out.println(object);
}
sqlSession.close();
4、配置Mapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="">
<select id="getGood" resultType="com.nut.pojo.Good">
select id,name,color,price from goods
</select>
</mapper>
注意:使用什么查询语句,前面标签就是啥。查询语句-》select 插入-》insert 更新-》update 删除-》delete
可使用生成代理对象的模式
3(改)、
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
SqlSession sqlSession = sqlSessionFactory.openSession();
GoodDaoI gdi = sqlSession.getMapper(GoodDaoI.class);
List<Good> list= gdi.selectAll();
for (Good good : list) {
System.out.println(good);
}
sqlSession.close();
4、配置Mapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.nut.dao.GoodDaoI">
<select id="selectAll" resultType="com.nut.pojo.Good">
select id,name,color,price from goods
</select>
</mapper>
编写xml
函数传值的三种方式
1、如果所传值均为基本数据类型,可直接传递,在xml文件使用 #{0} #{1}... 依次类推的形式调用,调用顺序即为在参数列表中的顺序
示例:
2、直接传递一个封装好的对象,无论是Map,还是普通的Object,或者是自己写的对象。
示例:
在传一个自己写的对象的时候,#{} 里面的值时类的属性值
3、使用注解传值
注意:在使用第二种和第三种时,在if的判断条件中
test="#{变量名 判断条件}"
上面两个都要写在括号内
子查询