六个文件开启mybatis之旅
来源:互联网 发布:景区网络运营方案 编辑:程序博客网 时间:2024/06/04 18:34
第一个文件(POJO):User.java
public class User { private Long id; private String name; private String sex; private int age; public User() { } public User(String name, String sex, int age) { this.name = name; this.sex = sex; this.age = age; } //省略了getter,setter}
第二个文件UserMapper.java
public interface UserMapper { public void save(User user); public User getUser(Long id); }
第三个文件(配置文件)mybatis-config.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="cacheEnabled" value="false"/> <setting name="useGeneratedKeys" value="true"/> <setting name="defaultExecutorType" value="REUSE"/> </settings> <typeAliases> <typeAlias type="mybatis.User" alias="User"></typeAlias> </typeAliases> <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/test"/> <property name="username" value="root"/> <property name="password" value="password"/> </dataSource> </environment> </environments> <mappers> <mapper resource="UserMapper.xml"/> </mappers></configuration>
第四个文件(映射文件)UserMapper.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="mybatis.UserMapper"> <insert id="save" parameterType="User"> insert into "user"(name,age,sex) values(#{name},#{age},#{sex}) </insert> <select id="getUser" parameterType="java.lang.Long"> SELECT * FROM "user" where id=#{id} </select></mapper>
第五个文件(工具类)MybatisUtil.java
public class MyBatisUtil { private final static SqlSessionFactory sqlSessionFactory; static { String resource = "mybatis-config.xml"; Reader reader = null; try { reader = Resources.getResourceAsReader(resource); } catch (IOException e) { e.printStackTrace(); } sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader); } public static SqlSessionFactory getSqlSessionFactory(){ return sqlSessionFactory; }}
第六个文件(测试类)TestMapper.java
public class TestMapper { static SqlSessionFactory sqlSessionFactory= null; static { sqlSessionFactory = MyBatisUtil.getSqlSessionFactory(); } @Test public void testSave(){ SqlSession sqlSession = sqlSessionFactory.openSession(); try { UserMapper userMapper = sqlSession.getMapper(UserMapper.class); User user = new User("Tom","男",13); userMapper.save(user); sqlSession.commit(); } finally { sqlSession.close(); } } @Test public void getUser(){ SqlSession sqlSession = sqlSessionFactory.openSession(); try { UserMapper userMapper = sqlSession.getMapper(UserMapper.class); User user = userMapper.getUser(1L); System.out.println("name:"+user.getName()); } finally { sqlSession.close(); } }}
note (如果以上代码你直接copy过去的话,以下的问题似乎并不会出现….emmm就当做个记录吧):
1 配置文件和映射文件的文件头别搞混了,不然会报出莫名其妙的错误——Cause: org.xml.sax.SAXParseException; lineNumber: 5; columnNumber: 36; 必须为元素类型 “mapper” 声明属性 “namespace”。
2 配置文件里别把mapper忘了,不然就会报错——Type interface com.UserMapper is not known to the MapperRegistry(这个错误一般智商不会犯#捂脸#)
阅读全文
0 0
- 六个文件开启mybatis之旅
- mybatis之映射文件
- 开启厦门之旅
- 开启Perl之旅
- 开启XML之旅
- 开启Hadoop之旅
- 开启golang之旅
- 开启CSDN之旅
- C++之旅开启
- 开启CSDN之旅
- 开启博客之旅
- 开启Activiti之旅
- 开启嵌入式之旅
- 开启博客之旅
- 开启CSDN之旅
- 开启博客之旅
- 开启博客之旅
- 开启博客之旅
- 7.3
- 《数据可视化与数据挖掘——基于Tableau和SPSS Modeler图形界面》之连接数据库
- 在Linux上的使用开源C++日志库 ---log4cplus
- maven怎么 引入自定义jar的三种方式 图文教程
- RabbitMQ消息队列(一): Detailed Introduction 详细介绍
- 六个文件开启mybatis之旅
- MessageDigest 详解
- IntelliJIDEA编写servlet程序
- 利用mysqlbinlog闪回数据
- 五天面试 Google、Facebook、Airbnb 等硅谷五家顶级公司,我是如何都拿到 Offer 的
- Diagnostic Messages for this Task: Error: Java heap space
- java学习第一天
- JS入门 01
- git学习一:基础介绍