`
dcrpp
  • 浏览: 44794 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

MyBatis试用

阅读更多

今天刚听说iBATIS改名为MyBatis,实际上就是iBATIS 3.0.1。以前都是用hibernate或者JPA,同时听说iBATIS 3与iBATIS 2 相比,变化挺大的,于是今天花了点时间学习了一下,做了个小例子。

 

准备工作:建立相应的数据库,表,添加一条记录用于测试。

 

第一步当然是建立项目,导入jar包,导入mybatis-3.0.1.jar,和mysql的jdbc驱动。

 

第二步 新建一个类User,包含主键,用户名,密码等属性

 

package cn.dcr.mybatis.entity;

public class User {
	private Long id;
	private String userName;
	private String password;
	private int age;

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

}

 第三步,写sql映射的xml文件

 

<?xml version="1.0" encoding="UTF-8" ?>  
<!DOCTYPE mapper  
PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"  
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">  
  
<mapper namespace="cn.dcr.mybatis.entity.UserMapper">  
    <select id="selectOne" parameterType="long" resultType="cn.dcr.mybatis.entity.User">  
        select * from user where id = #{id}  
    </select>  
</mapper>

 

 第四步,写MyBatis配置文件,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>
	<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/test"/> 
				<property name="username" value="root"/> 
				<property name="password" value="root"/> 
			</dataSource> 
		</environment> 
	</environments> 
	<mappers> 
		<mapper resource="cn/dcr/mybatis/entity/User.xml"/> 
	</mappers>
</configuration>

 

第五步,编写Util类,用于初始化SqlSessionFactory

 

package cn.dcr.mybatis.util;

import java.io.IOException;
import java.io.Reader;

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

public class Util {
	
	private static SqlSessionFactory sqlSessionFactory = null;
	
	static {
		String resource = "configuration.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;
	}
}

 

 

第六步,编写Dao类,用于封装增删改查等操作(为简单起见,这个类只有一个根据id查询出对应的User对象的方法)

 

package cn.dcr.mybatis.dao;

import org.apache.ibatis.session.SqlSession;

import cn.dcr.mybatis.entity.User;
import cn.dcr.mybatis.util.Util;

public class UserDao {
	public User query(Long id){
		SqlSession session = Util.getSqlSessionFactory().openSession();
		User user = null;
		try{
			 user = (User)session.selectOne("cn.dcr.mybatis.entity.UserMapper.selectOne", id);
		}catch(Exception e){
			e.printStackTrace();
		}finally{
			session.close();
		}
		return user;
	}
}

 

第七步,编写测试类

 

package cn.dcr.mybatis.test;

import cn.dcr.mybatis.dao.UserDao;
import cn.dcr.mybatis.entity.User;

public class UserTest {
	public static void main(String[] args){
		UserDao userDao = new UserDao();
		User user = userDao.query(1L);
		
		System.out.println(user.getId());
		System.out.println(user.getUserName());
		System.out.println(user.getPassword());
		System.out.println(user.getAge());
	}
}

 

 

运行一下,能够成功查询出对应的记录。

 

先到这,等有功夫在研究一下详细用法。

 

比较详细了,不上传源码了。

分享到:
评论
7 楼 kaixin123456789 2011-09-28  
6 楼 柏新星 2011-07-30  
不错就是纯基础了点 呵呵
5 楼 Dominic_jin 2011-06-14  
happyfish356 写道
你这也写得太简单了吧,虽然我今天刚入门看这个,学了一会儿就碰见比这麻烦得多的问题了

精简了点,但更容易获得兴趣和信心嘛,我刚刚看过国外的一篇关于Mybatis入门文章,看的头疼。
很好·
4 楼 happyfish356 2011-06-10  
你这也写得太简单了吧,虽然我今天刚入门看这个,学了一会儿就碰见比这麻烦得多的问题了
3 楼 java_web 2010-07-10  
java_web 写道
请教问题
你好 我按你文章些写的,在Eclipse中配置了MyBatis的环境。
完全和你些的一样,但是运行的时候获取configuration.xml文件的是报异常
java.io.IOException: Could not find resource configuration.xml
,我看了下,在classes目录下有这个文件。

能把目录结构发给我下吗?
bc_pc@qq.com



已经解决了,问题在路径上。
2 楼 java_web 2010-07-10  
请教问题
你好 我按你文章些写的,在Eclipse中配置了MyBatis的环境。
完全和你些的一样,但是运行的时候获取configuration.xml文件的是报异常
java.io.IOException: Could not find resource configuration.xml
,我看了下,在classes目录下有这个文件。

能把目录结构发给我下吗?
bc_pc@qq.com
1 楼 弃天笑 2010-06-04  
很不错的例子,已经运行成功了
我发一些sql代码吧
create database test;
use test;
create table User
(
id int auto_increment,
userName varchar(255) not null,
password varchar(255) not null,
sex int not null,
primary key(id)
);
insert into User (id,userName,password,sex)
values (1,'soda','123456',1);

相关推荐

    Mybatis3试用笔记.docx

    这篇试用笔记主要记录了在Eclipse3.6和MySQL5.1环境下使用Mybatis3.0.6的一些关键步骤。 首先,你需要下载并安装相关软件。Eclipse3.6.2是一个流行的Java集成开发环境,而Mybatis3.0.6则是要试用的版本。同时,还...

    基于Java语言的MyBatis-Flex框架设计源码试用分析

    该项目为基于Java语言的MyBatis-Flex框架设计的源码试用分析,包含98个文件,涵盖74个Java源文件、9个XML配置文件、8个模板文件、3个Markdown文件、2个SQL文件、1个Git忽略文件和1个YAML文件。此项目主要针对MyBatis...

    mybatis代码生成工具

    "欢迎体验下载"则表达了开发者希望更多的人能够试用并反馈他们的使用体验,进一步完善和优化这款工具。 【标签】"mybatis generator"是MyBatis Generator的简称,这是一个官方提供的代码生成工具。它通过解析数据库...

    MyBatisCodeHelper免费版idea插件

    根据mybatis接口中的方法名生成mybatis的sql 支持find,update,delete,count方法 只需定义一个方法名就可以得到完整mybatis xml代码 可生成大部分单表操作sql 极大提升效率 mybatis接口文件的mapper xml之间的相互...

    一款辅助MyBatis的代码生成工具,参考可以通过读取Excel、DB等数据源来生成实体.rar

    Mybatis Generator 是 MyBatis 官方提供的一个代码生成工具,完全可以胜任这个工作,不过最近在开发“编程猫”开源网站的时候试用了一下 MyBatis-Plus 官方提供 AutoGenerator,发现配置更简单,开发效率更高!...

    后端学习,从0搭建,服务器白嫖阿里云,使用Springboot,mysql,mybatis,swagger2,lom.zip

    阿里云经常提供学生优惠或试用服务,让开发者能够在云端部署自己的应用。 在实际操作中,你需要先注册阿里云账号,然后申请相应的免费资源。接下来,你将在阿里云服务器上配置环境,安装必要的软件,比如Java、...

    2021年java员工试用期工作总结.doc

    - 不断深化Java技术,特别是框架如Spring Boot、MyBatis等的应用,提升开发效率。 - 加强项目管理知识的学习,提高项目进度控制和风险管理能力。 - 提升自我学习能力,养成主动探索和解决问题的习惯,提高工作...

    2022年java工程师试用期工作总结.docx

    - 应该能够熟练使用相关开发工具和框架,如Eclipse、IntelliJ IDEA、Spring Boot、MyBatis等。 - 能够解决开发过程中的错误,通过与团队成员的沟通找到解决方案,保证项目进度。 4. **学习与成长**: - 在试用期...

    2022年java工程师的试用期工作总结范文.docx

    - B2B广告招商平台改版:此项目可能涉及数据库设计、后台服务开发和用户界面优化,需要掌握Java Web技术,如Spring Boot、Hibernate或MyBatis等。 - 智能建站广告平台:可能包含自动化建站工具的开发,涉及AI和...

    2022年java试用期满员工工作总结优质.docx

    5. **自我学习与提升**:员工认识到自我学习的重要性,尤其是在Java领域的持续学习,包括新技术、框架和最佳实践,如Spring框架、MyBatis等。 6. **问题解决与主动性**:员工应具备主动发现问题和解决问题的能力,...

    2022年java程序员试用期个人工作总结.docx

    在技术层面上,我深入理解了公司采用的Java技术和相关框架,如Spring Boot、MyBatis等,这让我能够在项目中快速上手并进行模块编码工作。在时代项目中,我负责了公告管理模块和部分特配单模块的开发,确保所完成的...

    idea-MyBatisCodeHelperPro新版本免费使用教程

    MyBatisCodeHelperPro是一款专为IntelliJ IDEA设计的MyBatis增强工具,它极大地简化了MyBatis框架的开发工作。以下是一些关键知识点: 1. **安装插件**:首先,用户需要知道如何在IntelliJ IDEA中查找并安装插件。...

    (优质)程序员转正答辩ppt

    2. **技术栈与技能掌握**:展示对Java语言的熟练程度,可能包括核心概念(如面向对象、异常处理、多线程)、框架应用(Spring Boot、MyBatis等)、数据库操作(SQL、JPA)以及常用的开发工具(IDEA、Git等)。...

    Maven+SSM(spring4+mybaties3)+Sql Server查询分页

    在IT行业中,构建高效、可维护的Web应用是至关重要的,而Maven+SSM(Spring4+MyBatis3)+SQL Server的组合则是一个常见的解决方案。这个组合提供了全面的框架支持,使得开发人员能够轻松地进行数据查询和分页操作。...

    一个加密的好东东 很小而且很实用 但绝对强悍一、

    最后提到的“一、ExeSoft荣誉出品高强度文件夹加密大师,但适用30次后得注册”,揭示了软件可能有一个试用期限制,用户在免费试用30次之后需要进行注册,这通常意味着购买正式版以解锁全部功能。 从标签“加密”...

    MybatisCodeHelper2.0.3插件及注册码,已打包,idea自动保存编译插件

    用户可以从官方渠道购买或者寻找试用版的激活码。 3. **注意事项**: - **兼容性**:确保插件版本与IDE版本相匹配,以免出现兼容性问题。 - **更新与维护**:定期检查插件更新,以获取新的特性和修复的bug,保持...

    SSM-2.4.0.622-beta

    这个版本号可能表示这是一个测试版(beta),在正式发布之前供开发者试用和评估。 Spring框架的核心特性可以支持IOC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)。控制...

    员工入职转正申请表.docx

    对框架如Spring、MyBatis的应用能力;以及在实际项目中解决特定问题的经验。此外,员工也会提及自己的技能提升,例如学习了新的编程工具,提高了代码调试能力,或者增强了团队协作技巧。 "工作自查"是员工自我评估...

    物流管理系统

    该系统正处于试用阶段,意味着它在实际环境中不断接受测试和改进,以满足用户需求。 首先,我们来看看这个系统的技术栈。主要采用了以下几个技术组件: 1. **Java**: 作为后端开发的主要语言,Java以其稳定性和跨...

Global site tag (gtag.js) - Google Analytics