1.工程目录结构 如下
2.准备好log4j、mysql、mybatis等jar包。
// 把mybatis配置文件写入inputstream中
InputStream inputStream = Resources
.getResourceAsStream("mybatis-config.xml");
// session工厂
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder()
.build(inputStream);
// 保存会话
SqlSession sqlSession = sessionFactory.openSession();
//加载mapper
PersonMapper pMapper = sqlSession.getMapper(PersonMapper.class);
3.mybatis 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>
<settings>
<setting name="logImpl" value="LOG4J" />
</settings>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC">
</transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url"
value="jdbc:mysql://localhost:3306/stutest?characterEncoding=UTF-8" />
<property name="username" value="root" />
<property name="password" value="123456" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="personmapper/Personmapper.xml" />
</mappers>
</configuration>
mapper xml (注意:ID 对应接口中调用的方法名 #{列名}要和实体类的属性名称一致,区分大小写)
<?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="mapper.PersonMapper">
<select id="selectNoEntity" resultType="entity.PersonEntity">
SELECT * from dept where
deptno=#{DEPTNO}
</select>
<insert id="insertNoEntity" parameterType="entity.PersonEntity" useGeneratedKeys="true" keyProperty="DEPTNO">
INSERT into dept(deptno,dname,loc) values(#{DEPTNO},#{DNAME},#{LOC})
</insert>
<select id="selectAllEntity" resultType="entity.PersonEntity" >
SELECT * from dept
</select>
</mapper>
插入中文可能会乱码的解决方法:
1.登录mysql :进入mysql的bin路径:C:\Program Files\MySQL\MySQL Server 5.7\bin 输入命令:mysql -uroot -p
2.show variables like 'character%' 改server results client 为utf8