Mybatis环境搭建和使用实例代码

网友投稿 330 2023-03-08


Mybatis环境搭建和使用实例代码

Mybatis的简介:

MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache softwarhttp://e foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到github.

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

1、MyBatis的作用:

简单的说MyBatis实现的是DAO层,通过XML文件配置SQL,映射到PO。

2、需要准备的引用包

mybatis-3.2.8.jar:myBatis框架使用

ojdbc6.jar:数据库连接

Mybatis环境的配置(这里是单独的配置mybatis):

第一:mybatis jar包的下载和导入

v3.4.5的下载地址是:

http://xiazai.jb51.net/201712/yuanma/mybatis-3.4.5.rar

如果不想使用3.4.5版本的话,但是如果地址也忘记的话,我们可以在github.com官网上直接搜索:mybatis

搜索结果如图:

这时候点击Download Latest ,然后选择自己想下载的版本就可以了。

将下载的压缩包解压,并且把mybatis-3.4.5.jar以及lib文件夹里面的jar全部导入到eclipse里面。当然这时候也需要将mysql的驱动的jar包导入mysql-connector-java-5.1.44.jar。

因为这里我们没有用Maven所以下面的配置就不用了,因为我们都已经把所有的jar手动导入了:

org.mybatis

mybatis

3.4.5

2、配置文件的书写

在自己的项目中创建一个source folder,存放自己的配置文档创建sqlMappersConfig.xml,并且将下面的配置(官方提供的配置,将官方的配置改成自己的)copy进去:

PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-config.dtd">

sqlConnect.properties中的配置如下:

sqlDriver:com.mysql.jbdc.Driver

sqlUrl:mysql:jbdc://172.20.60.2/spectergk?useUnicode=true&characterEncoding=UTF8

sqlUserName:test

sqlUserPwd:111111

好了到目前为止我们把需要配置的config基本配置完成了,但是这只是config的配置,测试代码:

public void functionTest(){

//System.out.println("开始做mybatis");

InputStream inputStream = null;

try {
        inputStream = Resources.getResourceAsStream("SqlMapConfig.xml");

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

/*

* 创建工厂

*/

SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

/*

* 打开ssion

*/

SqlSession sqlSession = sqlSessionFactory.openSession();

System.out.println(sqlSession);

sqlSession.close();

try {

inputStream.close();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

这时候打印是有值的证明我们配置成功,剩下的我们就可以对mapper进行设置了

第二:mapper的创建和使用,因为mybatis的mapper可以使用动态代理,所有我们这里直接使用动态代理:

在pojo包中创建:

User.java

在mappers包中创建:

UserMapper.java

在与sqlMappersConfig.xml的同级目录下面创建创建:

User.xml

并且在sqlMappersConfig.xml配置如下代码:

实现在对数据库简单的增删改查,具体的实现如下面代码:

User.xml

PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

select * from user where uid = #{v}girtDpw

select * from user where realname like "%"#{v}"%";

INSERT into user(uid,username,realname,mobile,mainpid,sex) values(#{uid},#{username},#{realname},#{mobile},#{mainpid},#{sex});

SELECT LAST_INSERT_ID()

INSERT into user(username,realname,mobile,mainpid,sex) values(#{username},#{realname},#{mobile},#{mainpid},#{sex});

INSERT into user(uid,username,realname,mobile,mainpid,sex) values

(#{item.uid},#{item.username},#{item.realname},#{item.mobile},#{item.mainpid},#{item.sex})

INSERT into user(uid,username,realname,mobile,mainpid,sex) values

(#{item.uid},#{item.username},#{item.realname},#{item.mobile},#{item.mainpid},#{item.sex})

UPDATE user set username = #{username} where uid = #{uid}

delete from user where uid = #{v}

delete from user where uid in (

#{item}

)

因为是动态的加载所以这里只要写接口就行了:

package com.spectergk.mybatis.mappers;

import java.util.List;

import com.spectergk.mybatis.pojo.User;

public interface UserMapper {

/*

* 根据用户的id查询

*/

public User selectUserById(String id);

/*

* 根据用户的姓名 模糊查询

*/

public List selectUsersbyUserName(String username);

/*

* 插入一个用户

*/

public void insertOneUser(User user);

/*

* 插入一个用户 并且返回插入的user的id

*/

public void insertOneUserGetid(User user);

/*

* 插入多个用户

*/

public void insetUsers(List users);

/*

* 插入多个用户 这里传输array

*/

public void insetUsersArray(User[] users);

/*

* updateUser 更新

*/

public void updateUser(User user);

/*

* 删除一个

*/

public void deleteOneUser(String uid);

/*

* deleteMoreUsers删除多个

*/

public void deleteMoreUsers(List uids);

}

因为测试的代码所以这里只写模糊插叙的测试代码:

//根据用户名 模糊查询查询

public void fuzzysearch(){

System.out.println("开始做mybatis");

InputStream inputStream = null;

try {

inputStream = Resources.getResourceAsStream("SqlMapConfig.xml");

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

/*

* 创建工厂

*/

this.sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

/*

* 打开ssion

*/

SqlSession sqlSession = this.sqlSessionFactory.openSession();

System.out.println(sqlSession);

UserMapper userMapper = sqlSession.getMapper(UserMapper.class);

List users = userMapper.selectUsersbyUserName("刘");

for (User user : users) {

System.out.println(user);

}

sqlSession.close();

}

总结

以上所述是给大家介绍的Mybatis的环境的搭建和使用实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,会及时回复大家的。在此也非常感谢大家对我们网站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:mui back 返回刷新页面的实例
下一篇:百度Java面试题 前200页精选(中)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~