码迷,mamicode.com
首页 > 其他好文 > 详细

mybatis初入门

时间:2014-08-13 01:24:55      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:blog   http   java   os   io   数据   ar   cti   

昨天刚接触mybatis,感觉吧。

对于我这个菜鸟来说,能学什么就是什么,完全没有感觉。。。

还是说说mybatis吧。

mybatis的配置xml,实体类,dao。

configuration.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>  
    <typeAliases>  
        <!--给实体类起一个别名 blog -->  
        <typeAlias type="com.demo.po.Blog" alias="blog" />  
    </typeAliases>  
    <!--数据源配置  这块用 mysql数据库 -->  
    <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/jfinal_demo" />  
                <property name="username" value="root" />  
                <property name="password" value="123" />  
            </dataSource>  
        </environment>  
    </environments>  
    <mappers>  
        <!--blogMapper.xml装载进来  同等于把“dao”的实现装载进来 -->  
        <mapper resource="com/demo/mybatis/blogMapper.xml" />  
    </mappers>  
</configuration>

dao    (xxxxMapper.java)

// dao层 方法名要和xxxMapper.xml的select id对应起来
package com.demo.dao;        

import com.demo.po.Blog;

public interface BlogMapper {
	public Blog find(String id);
}

xxxxMapper.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">  
    <!--这块等于dao接口的实现  namespace必须和接口的类路径一样-->  
<mapper namespace="com.demo.dao.BlogMapper">  
    <!-- findById必须和接口中的方法名一样  返回一个Blog 就是刚才的别名  如果不弄别名要连类路径一起写 麻烦-->  
    <select id="find" parameterType="HashMap" resultType="Blog">  
        select  
        * from blog where id=#{id}  
    </select>  
</mapper>

实体类

package com.demo.po;

public class Blog {
        // 数据库字段
	private int id;
	private String title;
	private String content;
	// 添加get set方法
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	public String getContent() {
		return content;
	}
	public void setContent(String content) {
		this.content = content;
	}
}

Test(测试类)

package com.demo.test;

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;

import com.demo.dao.BlogMapper;
import com.demo.po.Blog;

public class Test {
      	
    /** 
     * 获得MyBatis SqlSessionFactory   
     * SqlSessionFactory负责创建SqlSession,一旦创建成功,就可以用SqlSession实例来执行映射语句,commit,rollback,close等方法。 
     * @return 
     */  
    private static SqlSessionFactory getSessionFactory() {  
        SqlSessionFactory sessionFactory = null;  
        // 这块跟你的mybatis配置路径,最好写全,我就报过错
        String resource = "com/demo/configuration.xml";  
        try {  
            sessionFactory = new SqlSessionFactoryBuilder().build(Resources  
                    .getResourceAsReader(resource));  
        } catch (IOException e) {  
            // TODO Auto-generated catch block  
            e.printStackTrace();  
        }  
        return sessionFactory;  
    }  
  
    public static void main(String[] args) {  
        SqlSession sqlSession = getSessionFactory().openSession();  
        BlogMapper blogMapper = sqlSession.getMapper(BlogMapper.class);  
        Blog blog = blogMapper.find("2");  
        System.out.println(blog.getTitle());  
  
    }  
}


mybatis初入门,布布扣,bubuko.com

mybatis初入门

标签:blog   http   java   os   io   数据   ar   cti   

原文地址:http://my.oschina.net/u/1757165/blog/300541

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!