eclipse 整合mybatis的过程
一、下载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的过程的更多相关文章
- spring 整合 mybatis 中数据源的几种配置方式
因为spring 整合mybatis的过程中, 有好几种整合方式,尤其是数据源那块,经常看到不一样的配置方式,总感觉有点乱,所以今天有空总结下. 一.采用org.mybatis.spring.mapp ...
- SpringBoot系列-整合Mybatis(注解方式)
目录 一.常用注解说明 二.实战 三.测试 四.注意事项 上一篇文章<SpringBoot系列-整合Mybatis(XML配置方式)>介绍了XML配置方式整合的过程,本文介绍下Spring ...
- 零基础学习java------40---------Maven(maven的概念,安装,maven在eclipse中使用),springboot(spring整合springmvc(注解),spring整合mybatis(常见的配置文件)),前端页面(bootstrap软件)
一 maven 1. Maven的相关概念 1.1 项目开发中遇到的问题 (1)都是同样的代码,为什么在我的机器上可以编译执行,而在他的机器上就不行? (2)为什么在我的机器上可以正常打包,而配置管理 ...
- eclipse 创建maven 项目 动态web工程完整示例 maven 整合springmvc整合mybatis
接上一篇: eclipse 创建maven 项目 动态web工程完整示例 eclipse maven工程自动添加依赖设置 maven工程可以在线搜索依赖的jar包,还是非常方便的 但是有的时候可能还需 ...
- eclipse整合spring+springMVC+Mybatis
一.新建Maven项目 点击菜单栏File项,选择New->Project,选中Maven Project,如下图: 二.配置pom.xml <?xml version="1.0 ...
- eclipse下maven springMVC 整合 mybatis
参考文档:http://blog.csdn.net/zhshulin/article/details/37956105 1.搭建maven工程,具体参见我另一篇博客:http://www.cnbl ...
- Spring Boot整合Mybatis并完成CRUD操作
MyBatis 是一款优秀的持久层框架,被各大互联网公司使用,本文使用Spring Boot整合Mybatis,并完成CRUD操作. 为什么要使用Mybatis?我们需要掌握Mybatis吗? 说的官 ...
- Eclipse 安装mybatis的编辑插件
1.MyEditor安装的方式 Eclipse 安装mybatis的编辑插件有以下4种方式,您可以使用下列方法之一来安装MyBatis的编辑器: Eclipse 3.7的(市场客户机安装):此图像拖放 ...
- SpringBoot整合Mybatis之项目结构、数据源
已经有好些日子没有总结了,不是变懒了,而是我一直在奋力学习springboot的路上,现在也算是完成了第一阶段的学习,今天给各位总结总结. 之前在网上找过不少关于springboot的教程,都是一些比 ...
随机推荐
- JAVA企业级应用TOMCAT实战(三)
JVM优化涉及到两大方面我个人的理解 .如何分配JVM的内存空间 .我应该使用什么垃圾回收器 JVM产生的垃圾需要回收.回收有不同的回收器. JVM的调优需要了解各个垃圾回收机制的原理. 终极目标:降 ...
- java中ThreadLocal的使用
文章目录 在Map中存储用户数据 在ThreadLocal中存储用户数据 java中ThreadLocal的使用 ThreadLocal主要用来为当前线程存储数据,这个数据只有当前线程可以访问. 在定 ...
- 【Linux常见命令】ls命令
ls - list directory contents ls命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录). 语法: ls [OPTION]... [FILE]... l ...
- RedHat Enterprise Linux 5.8 升级openssl
RedHat Enterprise Linux 5.8升级openssl,遇到以下问题,做下标记: 由于之前安装RedHat Enterprise Linux 5.8 时候只安装了服务器环境,没有安装 ...
- 使用PHP-Beast加密你的PHP源代码
PHP-Beast是一个PHP源码加密的模块,其使用DES算法加密,用户可以自定义加密的key来加密源代码. 1. PHP-Beast的安装 $ wget https://github.com/lie ...
- inotifywait实现文件监控
应用场景文件监控可以配合rsync实现文件自动同步,例如监听某个目录,当文件变化时,使用rsync命令将变化的文件同步.(可用于代码自动发布) 安装noitify下载地址:http://github. ...
- 信息竞赛进阶指南--Tire树
// 假设字符串由小写字母构成 int trie[SIZE][26], tot = 1; // Trie的插入 void insert(char* str) { int len = strlen(st ...
- centos安装libconfig
安装很简单,生成的.so文件会被安装到/usr/local/lib目录,记得修改/etc/profile. 安装过程会出现两个错误: What is makeinfo, and how do I ge ...
- 王颖奇 201771010129 《面向对象程序设计(java)》第二周学习总结
<面向对象程序设计(java)>第二周学习总结 王颖奇 201771010129 第一部分:实验目的与要求 ①理论部分目的与要求 (1)基本知识(2)数据类型(3)变量(4)运算符(5)类 ...
- js函数传递参数的方式------传值与传递指针
原则: 1. 基本类型:传值 2. 对象:传递指针 应用场景之一: 用jq选择器获取某个div后(例如:element),准备进行某些修改,之后添加到页面中去. 采取例一的方式,append后发现修改 ...