Eclipse+maven+mybatis
2015-09-06 22:52
459 查看
该文章讲解了Mybatis部署,适合初学者。
environments:环境;default--使用哪个环节
environment:环境定义,可有多个;id--环节标识
transactionManager:事物处理;type--事物处理的类型,其值有两种JDBC--直接使用JDBC的提交和回滚设置,另一种是MANAGED,几乎什么都不做,让容器来管理事物。
dataSource:数据源配置;type--数据源类型,POOLED--池(常用)。
mappers:映射文件位置。
select:查询语句,id--对应接口文档的方法名,parameterType--参数,resultType--返回值;#{参数名}--引用参数
1 mybatis-config.xml --mybatis配置文件
1.1 代码
<?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"><!-- "POOLED"表示使用缓存 --> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/springmvc?useUnicode=true&characterEncoding=utf-8"/> <property name="username" value="root"/> <property name="password" value="root"/> </dataSource> </environment> </environments> <mappers> <mapper resource="mapping/userMapper.xml"/> </mappers> </configuration>
1.2 分析
configuration:根元素environments:环境;default--使用哪个环节
environment:环境定义,可有多个;id--环节标识
transactionManager:事物处理;type--事物处理的类型,其值有两种JDBC--直接使用JDBC的提交和回滚设置,另一种是MANAGED,几乎什么都不做,让容器来管理事物。
dataSource:数据源配置;type--数据源类型,POOLED--池(常用)。
mappers:映射文件位置。
2 实体类
package com.yxd.model; /* * 项目名称:spirngDao * 包名:com.yxd.model * 类名:user * 备注:用户-实体类 */ public class User { private String id; //ID private String name; //姓名 private String password; //密码 public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
3 DAO接口
注意:使用mybatis时,该接口可以没有实现类,因为mybatis的映射文件就相当于该类的实现类了。package com.yxd.dao; import com.yxd.model.User; /* * 项目名称:spirngDao * 包名:com.yxd.dao * 类名:userDao * 备注:用户-DAO接口 */ public interface UserDao { public User getUserByID(User user); //查询 }
4 mybatis的映射文件
mybatis的映射文件也是mybatis的核心运用。4.1 代码
<?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="mapping.userMapper"><!-- 相当于UserDao接口的实现类,namespace=该文件的包名+文件名 --> <select id="getUserByID" parameterType="com.yxd.model.User" resultType="com.yxd.model.User"><!-- id必须与接口中的方法名一致 --> select * from user where id = #{id} </select> </mapper>
4.2 分析
mapper:根元素;namespace--标识,其值为mapper文件的路径(包名)+文件名(不带格式)select:查询语句,id--对应接口文档的方法名,parameterType--参数,resultType--返回值;#{参数名}--引用参数
5 测试类
package com.yxd.mybatis; import java.io.InputStream; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import com.yxd.model.User; //测试mybatis部署 public class TestUser { public static void main(String[] args){ //mybatis的配置文件 String resource="mybatis-config.xml"; //加载mybaatis的配置文件,PS:此过程中也加载了关联的映射文件 InputStream is=TestUser.class.getClassLoader().getResourceAsStream(resource); System.out.println(is); //构建sqlSession工厂 SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(is); //创建能执行映射文件中的sql的sqlSession SqlSession session=sessionFactory.openSession(); String statement="mapping.userMapper.getUserByID";//映射sql 标识字符串 User user=new User(); user.setId("1"); //执行查询返回一个唯一的user对象的sql user=session.selectOne(statement, user); System.out.println(user.getName()); } }
相关文章推荐
- mac下myEclipse安装及配置
- 【JavaSE】day14_XML
- 学习日志---线索二叉树和翻转二叉树
- 使用jvisualvm来远程观察Java程序及jvisualvm插件[转]
- 【JavaSE】day14_线程安全_synchroized关键字
- Myeclipse无法弹出javax包下的所有类的提示---解决方法
- 转:Java eclipse下 Ant build.xml实例详解
- Java:单例模式的七种写法
- 【软考】J2SE视频——java入门总结
- Java基本数据类型
- java中显示类型转换和隐式类型转换
- eclipse添加hadoop插件+WordCount程序
- java内存分配分析/栈内存、堆内存
- JAVA包装类
- Java中的各种注释详解
- jdk,jre与jvm的区别与联系
- JAVA Io 缓冲输入输出流
- Eclipse快捷键大全
- java学习-面向对象02
- java类的初始化顺序