创建及配置Mybatis项目
创始人
2025-05-31 02:53:20
########################################################################################################################
#   declare   吼吼吼!hohoho~~~~ 开始了开始了                                                                             # 
#   begin                                                                                                              #
#     代码肌肉兄贵         ~~~~~~      {  ]       OH  YEAH~~~    author:Vincent                                          # 
#              ________  |^^\  }  _____\ \                                                                             #                                                 
#             \  ______ (_-__\ }  ________\       来到代码世界~展示我的超能力                                              #                                   
#               \ \     |____|____/                                                                                    #                                   
#                 [  }   | __/__ /             祝小伙儿们看完文章后                                                       #                                  
#      ^ ^                |__/__/      工作顺利,吃啥啥没够儿~!                                                          #                                   
#  这里是ISO-8859-1        |__/__|       不要惹我,一拳从多线程给你打成hello world!                                      #                                    
#  西欧字符集  ------>    /  \??/   \         欢迎关注微信 2012letitgo2012                                                #                                   
#    中文乱码!!!!    |    | |     |                                                                                  #                                     
#                       \   /  \   /                                                                                   # 
########################################################################################################################

今天来和小伙伴聊聊如何创建并配置一个Mybatis项目。

前提:

mybaits 的前身叫做 ibatis,被其他公司收购之后由ibatis更名为mybaits。

mybaits是半自动化持久层框架,hibernate是全自动化持久层框架。

那如何创建一个Mybatis项目呢,接下来我们来讨论一下。

创建Mybatis项目:

创建Mybatis项目有以下流程

1.创建一个java项目

2.在src创建一个lib包

3.把mybatis的包放入lib中(包括jdbc驱动,因为要连数据库,我这里放入orcle驱动。用mysql就放入mysql驱动)

4.通过build path把所有包引入项目

5.配置mybatis标签库

  1. 创建一个java项目

使用eclipse创建一个java项目,分别创建com.dao.mapper包,com.dao.pojo包。创建mybatis.xml配置文件。在com.dao.mapper包下创建mapper配置文件。

2.在src创建一个lib包

3.引入mybatis包

把mybatis的包放入lib中(包括jdbc驱动,因为要连数据库,我这里放入orcle驱动。用mysql就放入mysql驱动)

4.通过build path把所有包引入项目

右键单击src,按以下顺序build path->Libraries->Add JARS,把lib中的包全部引入项目

选中lib中拷贝的所有mybatis包。

build path成功之后如图:

5.配置mybatis标签库

为mybatis项目配置标签库。将两个文件引入项目

mybatis-3-config.dtd

mybatis-3-mapper.dtd

mybatis-3-config.dtd为mybatis.xml配置文件使用的标签库文件

mybatis-3-mapper.dtd为mybatis mapper文件使用的标签库文件

那么怎么样进行配置呢,首先点击window-preferences-XML Catalog。

点击add添加mybatis标签库文件

通过File System找到操作系统mybatis config文件。

key 则填入值-//mybatis.org//DTD Config 3.0//EN

通过File System找到操作系统mybatis mapper文件。

key 则填入值-//mybatis.org//DTD Mapper 3.0//EN

单击OK配置完成,之后进行确认是否添加成功。

将config和mapper标签库的配置信息添加到mybatis 的config文件中和mapper文件中:

那么mybatis的config和mapper文件配置例子如下:

mybatis配置文件:




mybatis mapper文件:

mybatis mapper文件:



下面我们来一个Mybatis编程的具体例子:

首先引入一个文件log4j.properties到src文件夹中。这个文件允许在mybatis项目中看到详细输出。

创建3张表

用户表:
create table users(id int primary key,name varchar2(30) unique not null)
create sequence users_id increment by 1 start with 0 minvalue 0;
insert into users values(users_id.nextval,'tom');
insert into users values(users_id.nextval,'mike');
insert into users values(users_id.nextval,'bob');
commit;商品表:
create table Mybatisgoods(id int primary key,goodname varchar2(30) not null,price number)/
create sequence goods_id increment by 1 start with 0 minvalue 0;
insert into Mybatisgoods values(goods_id.nextval,'雪碧',6);
insert into Mybatisgoods values(goods_id.nextval,'可乐',6);
insert into Mybatisgoods values(goods_id.nextval,'大重九',9.9);
commit;订单表:
create table dingdan(id int primary key,ddnum varchar2(30) not null,userid number,num number,goodid number,price number,constraint fk_dingdan_userid_uid foreign key(userid) references users(id),constraint fk_dingdan_goodid_mgid foreign key(goodid) references Mybatisgoods(id))/
create sequence dingdan_id increment by 1 start with 0 minvalue 0;
insert into dingdan values(dingdan_id.nextval,4,1,4,1,24);
insert into dingdan values(dingdan_id.nextval,5,2,5,2,30);
insert into dingdan values(dingdan_id.nextval,6,3,6,3,60);
commit;

package com.mybatishomework;import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import java.util.Map;import javax.annotation.Resource;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 {InputStream input = Resources.getResourceAsStream("mybatis.xml"); SqlSessionFactory fac = new SqlSessionFactoryBuilder().build(input);SqlSession sql = fac.openSession();List list = sql.selectList("c1.selectUsersAll");for(Map m : list){System.out.println(m);}
//        System.out.println(list);sql.commit();sql.close();}
}

使用inputStream流读取mybatis.xml文件。

InputStream input = Resources.getResourceAsStream("mybatis.xml");

SqlSessionFactory fac = new SqlSessionFactoryBuilder().build(input);

开启查询session

SqlSession sql = fac.openSession();

List list = sql.selectList("c1.selectUsersAll");

在dml操作中要记住关闭提交和关闭session,不然sql运行不会产生结果。

sql.commit();

sql.close();

好啦!小伙伴儿们^_^~~~~~~!mybatis项目的创建及简单查询语句的运行,你们会了吗。

如果想了解更多mybatis技巧,请关注我的博客其他文章吧,我是大眼仔。

########################################################################################################################
#     end;                                                                                                             #
#     代码肌肉兄贵         ~~~~~~      {  ]       OH  YEAH~~~    author:Vincent                                          # 
#              ________  |^^\  }  _____\ \                                                                             #                                                 
#             \  ______ (_-__\ }  ________\       来到代码世界~展示我的超能力                                              #                                   
#               \ \     |____|____/                                                                                    #                                   
#                 [  }   | __/__ /             祝小伙儿们看完文章后                                                       #                                  
#      ^ ^                |__/__/      工作顺利,吃啥啥没够儿~!                                                          #                                   
#  这里是ISO-8859-1        |__/__|       不要惹我,一拳从多线程给你打成hello world!                                        #                                    
#  西欧字符集  ------>    /  \??/   \         欢迎关注微信 2012letitgo2012                                                #                                   
#    中文乱码!!!!    |    | |     |                                                                                  #                                     
#                       \   /  \   /                                                                                   # 
########################################################################################################################

相关内容

热门资讯

今年我省粮食产量达515.56... (来源:辽宁日报)转自:辽宁日报 图为在中储粮(盘锦)储运有限公司,装运粮食的重型卡车排起长队...
国家发展改革委部署促进投资止跌... (来源:辽宁日报)转自:辽宁日报 新华社北京12月13日电 (记者魏玉坤) 记者13日从全国发展和改...
江苏省实施《中华人民共和国森林... (来源:新华日报) 目 录 第一章 总则 第二章 森林、林木和林地权属管理...
姜堰数字化产品讲“活”理论 (来源:新华日报) □ 本报记者 卢佳乐 通讯员 姜宣 “王教授,您约我‘喝茶论道’,...
联合国维和部队在苏丹遇袭 6人... 转自:财联社【联合国维和部队在苏丹遇袭 6人死亡】财联社12月14日电,当地时间13日,苏丹武装部队...