您的位置:首页 > 其它

Mybatis学习笔记-入门

2016-02-04 11:02 387 查看



User.java实体类
[b]conf.xml

[code=xml;toolbar:false"><?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>
<!-- 
development 开发模式
work 工作模式
 -->
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/mybatis" />
<property name="username" value="root" />
<property name="password" value="123456" />
</dataSource>
</environment>
</environments>

<mappers>
<mapper resource="com/mybatis/beans/userMapper.xml"/>
</mappers>
</configuration>


[b]测试方法
import java.io.IOException;
import java.io.Reader;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

public class Test {
public static void main(String[] args) throws IOException {
String resource = "conf.xml";
//加载Mybatis的配置文件(它也加载关联的映射文件)
Reader reader = Resources.getResourceAsReader(resource);
//构建SqlSession的工厂
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
//创建能执行映射文件中SQL语句的SqlSession 
SqlSession session = sessionFactory.openSession();
//映射SQL的标识字符串
String s = "com.mybatis.beans.userMapper" + ".getUser";
//执行查询返回一个唯一的User对象
User user = session.selectOne(s, 3);
//关闭session
session.close();
System.out.println(user);
}
}或者使用下面的方法测试

[b]可以将连接数据库的配置写到db.properties中
db.properties
[code=bash;toolbar:false">jdbc.username=root
jdbc.password=123456
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.jdbcUrl=jdbc:mysql://localhost:3306/mybatis

<?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>
<!-- 
development 开发模式
work 工作模式
 -->
<properties resource="db.properties">
</properties>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driverClass}" />
<property name="url" value="${jdbc.jdbcUrl}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</dataSource>
</environment>
</environments>

<mappers>
<mapper resource="com/mybatis/beans/userMapper.xml"/>
</mappers>
</configuration>
[b]添加log4j

①添加log4j-1.2.17.jar到类路径下
②添加log4j.xml到src下
当实体类的字段名和数据库表的字段名不一致时,用如下的两种方式来配置<?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.atguigu.day03_mybaits.test4.orderMapper">
<!-- ①
根据id查询orders表得到一个order对象
order_id  order_no  order_price 是数据库表中的字段
id  orderNo  price 是实体类中的字段
 -->
<select id="getOrder" parameterType="int" resultType="Order">
SELECT order_id id, order_no orderNo, order_price price FROM orders WHERE order_id=#{id}
</select>

<select id="getOrder2" parameterType="int" resultMap="getOrder2Map">
SELECT * FROM orders WHERE order_id=#{id}
</select>

<!--  ② 定义一个键值对映射
resultMap : 封装一些映射关系
id : 专门针对主键
result : 针对一般字段
-->
<resultMap type="Order" id="getOrder2Map">

<id property="id" column="order_id"/>
<result property="orderNo" column="order_no"/>
<result property="price" column="order_price"/>
</resultMap>
</mapper>

http://yunpan.cn/cgwRwJYafX3sv  提取码 fad7
本文出自 “优赛工作室” 博客,请务必保留此出处http://shamrock.blog.51cto.com/2079212/1558965
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: