一、下载mybatis和数据库驱动的jar,我这里用到的数据库是pgAdmin III ,所以我下载的jar包分别为mybatis-3.0.2 jar和po's'tgresql-42.2.1.jar,如图所示

二、创建一个java项目,导入下载的jar包,构建的结构如下图所示:

三、分析

1.现在数据库中创建一个名为mybatis的数据库:创建的列有id(自动生长的)、name、sex、age,具体的创建过程自己创建。

2.先创建一个User.java类,如下图:

package com.mybatis.model.impl;

public class User {
private Integer id;
private String name;
private String sex;
private Integer age;
public User()
{
}
public User(final String name,final String sex,final Integer age)
{
this.name=name;
this.sex=sex;
this.age=age;
}
public Integer getId()
{
return this.id;
}
public void setId(final Integer id)
{
this.id=id;
} public String getName()
{
return this.name;
}
public void setName(final String name)
{
this.name=name;
} public String getSex()
{
return this.sex;
}
public void setSex(final String sex)
{
this.sex=sex;
} public Integer getAge()
{
return this.age;
}
public void setAge(final Integer age)
{
this.age=age;
}
@Override
public String toString()
{
return "User [id="+id+",name="+name+",sex="+sex+",age"+age+"]";
}
}

3.创建一个UserMapper.java接口,这里只是负责提供数据CRUD的接口,具体的实现在下面的UserMapper.xml文件中。

package com.mybatis.mapper;

import java.util.List;

import com.mybatis.model.impl.User;

public interface UserMapper {

    public void insertUser(User user) throws Exception;

    public User selectOneUser(int id) throws Exception;

    public List<User> selectAllUser() throws Exception;

    public void deleteUser() throws Exception;

}

4.创建一个xml文件,名为UserMapper.xml,映射到上面的UserMapper接口。

<?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.mybatis.mapper.UserMapper"><!-- 这个是映射到上面的UserMapper接口的 -->
<insert id="insertUser" parameterType="com.mybatis.model.impl.User" useGeneratedKeys="true"
keyProperty="id" >
insert into tb_user(name,sex,age)
values(#{name},#{sex},#{age})
</insert> <select id="selectAllUser" resultType="com.mybatis.model.impl.User">
select * from tb_user
</select>
<delete id="deleteUser">
delete from tb_user </delete>
<select id="selectOneUser" parameterType="java.lang.Integer"
resultType="com.mybatis.model.impl.User">
select * from tb_user where id=#{id}
</select>
</mapper>

5.创建一个mybatis.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"> <!-- XML配置文件包含对MyBatis系统的核心设置 -->
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<!-- <property name="driver" value="com.mysql.jdbc.Driver" /> -->
<property name="driver" value="org.postgresql.Driver" />
<property name="url" value="jdbc:postgresql://localhost:5432/mybatis"/>
<property name="username" value="postgres" />
<property name="password" value="p" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="UserMapper.xml"/>
</mappers>
</configuration>

6.创建一个MybatisTest.java类类运行测试。

package com.mybatis.test;
import java.io.Reader;
import java.util.List; 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.mybatis.mapper.UserMapper;
import com.mybatis.model.impl.User;; public class MyBatisTest { public static void main(final String[] args) throws Exception{
// TODO Auto-generated method stub
//读取MyBatis配置文件
final Reader reader=Resources.getResourceAsReader("mybatis.xml");;
//初始化mybatis,创建SqlSessionFactory类的实例。
final SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(reader);
//创建Session实例
final SqlSession session=sqlSessionFactory.openSession();
//创建User对象
final UserMapper userMapper=session.getMapper(UserMapper.class);
//插入数据
User user=new User("Carson","男",23);
userMapper.insertUser(user);
user=new User("THL","女",23);
userMapper.insertUser(user);
session.commit(); //查询数据
final List<User> list=userMapper.selectAllUser();
System.out.println(list); //删除数据
// userMapper.deleteUser();
session.commit();
session.close(); } }

6.运行的结果如图,这是在没有运行删除语句时产生的结果。

以上是个人代码,如果有要转发的,请点赞,thx~.

eclipse 整合mybatis的过程的更多相关文章

  1. spring 整合 mybatis 中数据源的几种配置方式

    因为spring 整合mybatis的过程中, 有好几种整合方式,尤其是数据源那块,经常看到不一样的配置方式,总感觉有点乱,所以今天有空总结下. 一.采用org.mybatis.spring.mapp ...

  2. SpringBoot系列-整合Mybatis(注解方式)

    目录 一.常用注解说明 二.实战 三.测试 四.注意事项 上一篇文章<SpringBoot系列-整合Mybatis(XML配置方式)>介绍了XML配置方式整合的过程,本文介绍下Spring ...

  3. 零基础学习java------40---------Maven(maven的概念,安装,maven在eclipse中使用),springboot(spring整合springmvc(注解),spring整合mybatis(常见的配置文件)),前端页面(bootstrap软件)

    一 maven 1. Maven的相关概念 1.1 项目开发中遇到的问题 (1)都是同样的代码,为什么在我的机器上可以编译执行,而在他的机器上就不行? (2)为什么在我的机器上可以正常打包,而配置管理 ...

  4. eclipse 创建maven 项目 动态web工程完整示例 maven 整合springmvc整合mybatis

    接上一篇: eclipse 创建maven 项目 动态web工程完整示例 eclipse maven工程自动添加依赖设置 maven工程可以在线搜索依赖的jar包,还是非常方便的 但是有的时候可能还需 ...

  5. eclipse整合spring+springMVC+Mybatis

    一.新建Maven项目 点击菜单栏File项,选择New->Project,选中Maven Project,如下图: 二.配置pom.xml <?xml version="1.0 ...

  6. eclipse下maven springMVC 整合 mybatis

    参考文档:http://blog.csdn.net/zhshulin/article/details/37956105   1.搭建maven工程,具体参见我另一篇博客:http://www.cnbl ...

  7. Spring Boot整合Mybatis并完成CRUD操作

    MyBatis 是一款优秀的持久层框架,被各大互联网公司使用,本文使用Spring Boot整合Mybatis,并完成CRUD操作. 为什么要使用Mybatis?我们需要掌握Mybatis吗? 说的官 ...

  8. Eclipse 安装mybatis的编辑插件

    1.MyEditor安装的方式 Eclipse 安装mybatis的编辑插件有以下4种方式,您可以使用下列方法之一来安装MyBatis的编辑器: Eclipse 3.7的(市场客户机安装):此图像拖放 ...

  9. SpringBoot整合Mybatis之项目结构、数据源

    已经有好些日子没有总结了,不是变懒了,而是我一直在奋力学习springboot的路上,现在也算是完成了第一阶段的学习,今天给各位总结总结. 之前在网上找过不少关于springboot的教程,都是一些比 ...

随机推荐

  1. tp5.0看点

    前置操作:操作一些其他动作,例如要操作其他表格的数据啊,操作之前要有什么动作为前提或者要注意的动作. 模型事件:操作数据,例如照片的上传修改和删除. 两者的区别在于“前置操作”是动作,而“模型事件”只 ...

  2. css中的宽和高

    width width表示宽 height height表示高 max-width.min-width max-width表示最大宽度 min-width表示最小宽度 max-height.min-h ...

  3. 2019-2020-1 20199310《Linux内核原理与分析》第八周作业

    1.问题描述 在前面的文章中,学习了在Linux系统之中如何创建一个新进程进行追踪,本文将围绕编译链接的过程和ELF可执行文件格式,对Linux内核装载和启动一个可执行程序. 2.解决过程 2.1 E ...

  4. SVN部署(Centos7,Ubuntu)

    SVN 简介 SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上很多版本控制服务已从CVS迁移到Sub ...

  5. HTTP 1.1, 返回值100.

    HTTP 1.1支持只发送header信息(不带任何body信息),如果服务器认为客户端有权限请求服务器,则返回100,否则返回401.客户端如果接受到100,才开始把请求body发送到服务器. 这样 ...

  6. UVALive 7505 Hungry Game of Ants

    1. 笔记 比较容易的动态规划题.往左很好考虑,往右用dpi表示前i只都被k吃掉后,k继续往右仍然不死的情况数.状态转移方程为dp[I]=dp[I+1]+...+dp[j],分别对应第I+1位向左,. ...

  7. Alpine Linux 3.9.2 发布,轻量级 Linux 发行版

    开发四年只会写业务代码,分布式高并发都不会还做程序员?   Alpine Linux 3.9.2 已发布,Alpine Linux 是一款面向安全的轻量级 Linux 发行版,体积十分的小. Alpi ...

  8. 学会HTML就可以找工作了

    对编程小白来讲,想要学习门槛低,学习周期短,难度指数可忽略.短时间内可能找一份薪资不错编程相关工作,那就把HTML作为入门级语言吧. 网页设计师 (//upload-images.jianshu.io ...

  9. 无法打开到SQL Server的连接 (Microsoft SQL Server, 错误:53) .

    标题: 连接到服务器 ------------------------------ 无法连接到 MSSQLSERVER. ------------------------------ 其他信息: 在与 ...

  10. APP路由还能这样玩

    本文主要讲述一种设计思路,组件化架构市面上已经有很多大厂成熟的方案,但是在组件化过程中,偶尔会遇到2个独立业务子模块间没有相互引用,也需要能直接调用对方的功能,因此我想到通过方法路由来解决,如果还有疑 ...