mybatis(没涉及springmvc) 昨天学的,好不容易按照项目总结的
测试类(test)发送请求 到 sqlMapConfig.xml(工厂)
第一种:(mapper)
(test的sqlSession.getMapper(UserMapper.java(mapper接口()),传入并获取获取同名的xml的同id)
sqlMapConfig.xml(工厂)内容的指定路径去查找指定的mapper文件, 映射userMapper接口
(由于UseMapper是接口和实现的形式,所以mapper class=""找JAVA类型的接口入手)
1.test类
1.获取sqlMapConfig.xml(包含UserMapper.xml)
2.创建工厂sqlSessionFactory
3.获取sqlSeession
4.UserMapper userMapper = sqlSession.getMapper(UserMapper.class);(userMapper.java作为接口,其中导入的User实体类)
5.返回通过id(如findUserById)已在UserMapper.xml已定义的sql语法
(由于从接口进入,得到了User实体,但是没有指定编辑Sql语法的xml的位置,所以1。和2.要求在一个包内而且同名!!)
(userpapper.xml要求1.namespace必须指定为 User实体类的路径 2.初始化构建sql语法)
(由test类实现userMapper.java接口)
第二种:(dao)
test类 根据工厂内容的指定路径去查找指定的mapper文件,以<mapper resource="sqlmap/User.xml”>映射 user.xml
(user.xml要求1.namespace必须指定为 User实体类的路径 2.初始化构建sql语法)
1.test类
1.获取sqlMapConfig.xml(包含user.xml)
2.创建工厂sqlSessionFactory
2.实例了 已实现userDao接口的userDaoimpl的带有sqlSessionFactory(工厂)参数的 A对象(userMapper.java作为接口,其中导入的User实体类)
2.跳转到UserDaoImpl.java(实现类 )
1.获取sqlSeession
2。返回通过id(如findUserById)已在user.xml已定义的sql语法
3.跳转到test类
1.。返回上面的新建user类对象
2.打印上面的user
第三种:(正常)
sqlMapConfig.xml(工厂)内容的指定路径去查找指定的mapper文件,以<mapper resource="sqlmap/User.xml”>映射user.xml
(user.xml要求1.namespace必须指定为 User实体类的路径 2.初始化构建sql语法)
1.test类
1.获取sqlMapConfig.xml(包含user.xml)
2.创建工厂sqlSessionFactory
3.获取sqlSeession
4.(User user = sqlSession.selectOne(“findUserById”,10);)
(返回通过id(如findUserById)已在user.xml已定义的sql语法)
5.打印user对象