注:本文参考了孤傲苍狼关于MyBatis学习总结,在此表示感谢,原文链接为http://www.cnblogs.com/xdp-gacl/p/4261895.html。

1、新建project,勾选create from archetype,选择org.apache.maven.archetypes:maven-archetype-quickstart。

填写GroupId: com.wuhao.database,ArtifactId: mysql,version: 1.0-snapshot。

2、修改pom.xml文件,增加external libraries: mysql以及org.mybatis。pom.xml文件内容如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.wuhao.database</groupId>
<artifactId>mysql</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging> <name>mysql</name>
<url>http://maven.apache.org</url> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency> <dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.18</version>
</dependency> <dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.1.1</version>
</dependency>
</dependencies>
</project>

pom.xml

3、在src/main/resources目录下创建conf.xml文件: 主要用来配置mysql数据库信息等功能(通过调用db.properties配置文件)。

在src/main/resources/com/wuhao/database目录下创建userMapper.xml文件: 用来实现数据表的create、remove、update、select功能。

在src/main/resources/com/wuhao/database目录下创建db.properties文件,里面包含连接数据库的信息。

具体的注释见代码。

<?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> <!-- 引用db.properties配置文件 -->
<properties resource="com/wuhao/database/db.properties" /> <!-- 配置实体类的别名。注意<typeAliases>的位置,需要放在<configuration>标签下面靠前的位置,<properties>标签后面,
<environments>以及<mappers>标签前面。
-->
<typeAliases>
<!-- 以下2种方法选其一即可。 第1种方法:使用typeAlias,为单个类设置别名。 -->
<typeAlias type="com.wuhao.database.entity.User" alias="User" />
<!-- 第2种方法:使用package,为包下面的所有类设置别名,默认规则为com.wuhao.database.entity.User设置为User,去除前面的包名。 -->
<!-- <package name="com.wuhao.database.entity" /> -->
</typeAliases> <!--
development : 开发模式;
work : 工作模式
-->
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<!-- 配置数据库连接信息,${driver}等变量名需要在引用的配置文件中找 -->
<dataSource type="POOLED">
<property name="driver" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
</dataSource>
</environment>
</environments> <mappers>
<!-- 注册petMapper.xml文件,petMapper.xml位于com.wuhao.database这个包下,所以resource写成
com/wuhao/database/petMapper.xml -->
<mapper resource="com/wuhao/database/userMapper.xml" /> <!-- 注册UserMapper映射接口 -->
<mapper class="com.wuhao.database.dao.UserMapperInterface" /> </mappers> </configuration>

conf.xml

<?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,namespace的值习惯上设置成包名+sql映射文件名,这样就能够保证namespace的值是唯一的
例如namespace="me.gacl.mapping.userMapper"就是me.gacl.mapping(包名)+userMapper(userMapper.xml文件去除后缀)
-->
<mapper namespace="com.wuhao.database.userMapper">
<!-- 在select标签中编写查询的SQL语句, 设置select标签的id属性为getUser,id属性值必须是唯一的,不能够重复
使用parameterType属性指明查询时使用的参数类型,resultType属性指明查询返回的结果集类型
resultType="me.gacl.entity.User"就表示将查询结果封装成一个User类的对象返回
User类就是users表所对应的实体类
--> <!-- 创建用户 -->
<insert id="addUser" parameterType="User">
insert into user(id, username, password, email) VALUES (#{id}, #{username}, #{password}, #{email})
</insert> <!-- 删除用户 -->
<delete id="deleteUser" parameterType="String">
delete from user where id = #{id}
</delete> <!-- 修改用户 -->
<update id="updateUser" parameterType="User">
update user set username = #{username}, password = #{password}, email = #{email} where id = #{id}
</update> <!-- 根据id查询得到一个User对象 -->
<select id="getUser" parameterType="String" resultType="User">
select * from user where id = #{id}
</select> <!-- 查询所有用户 -->
<select id="getAllUsers" resultType="User">
select * from user
</select> </mapper>

userMapper.xml

driver = com.mysql.jdbc.Driver
url = jdbc:mysql://localhost:3306/mytest
username = root
password = 333

db.properties

4、创建基本的各种类和接口,User类,UserDao类,UserMapperInterface接口,以及用于测试的TestUserByAnnotationMapper类以及TestUserByXmlMapper类。整个目录结构如下图:

5、mytest数据库中创建表: user。

6、附源码mysql.zip。

IntelliJ IDEA配置maven3.3.3+mybatis3.1.1的更多相关文章

  1. IntellIJ IDEA 配置 Maven 以及 修改 默认 Repository

    转自:IntellIJ IDEA 配置 Maven 以及 修改 默认 Repository 今天将IntellIJ IDEA 关于Maven的配置总结一下,方便以后可参考. IDEA版本: Intel ...

  2. IntelliJ IDEA 配置运行程序

    IntelliJ IDEA 对于Javaer开发来说还是很nice的,就是第一次用可能配置项有点生疏,这里就记录一下IntelliJ IDEA 配置运行程序. 1. 点击Edit Config... ...

  3. IntelliJ IDEA 配置maven

    以下内容引自http://blog.csdn.net/qq_32588349/article/details/51461182. 使用IntelliJ IDEA 配置Maven(入门)         ...

  4. 使用IntelliJ IDEA 配置Maven(转)

    1. 下载Maven 官方地址:http://maven.apache.org/download.cgi 解压并新建一个本地仓库文件夹 2.配置本地仓库路径 3.配置maven环境变量 4.在Inte ...

  5. Intellij IDEA 配置Tomcat远程调试

    一.前言 在服务器端开发过程中,由于服务器环境差异导致运行结果不符合预期. 所以就需要到IDEA Debug 服务器代码.看起来貌似很高大上的事情. 今天就说说使用Intellij IDEA 配置的方 ...

  6. Mac下Tomcat安装与Intellij IDEA配置Tomcat

    Mac下Tomcat安装与Intellij IDEA配置Tomcat 一 安装 1 下载地址:https://tomcat.apache.org/download-90.cgi 2 将压缩包解压后移至 ...

  7. IntellIJ IDEA 配置 Vue 支持 打开Vue项目

    [参考]零基础 Vue 开发环境搭建 打开运行Vue项目 IDEA版本: IntelliJ IDEA 2017.2 Windows 7 X64 IntelliJ IDEA下载地址:https://ww ...

  8. 使用IntelliJ IDEA 配置Maven(转)

    原文地址:使用IntelliJ IDEA 配置Maven 1. 下载Maven 官方地址:http://maven.apache.org/download.cgi 解压并新建一个本地仓库文件夹 2.配 ...

  9. IntelliJ idea配置python

    为什么选择Intellij?因为我需要系统地管理python工程,Intellij可断点调试. 1.下载IntelliJ idea 在百度中搜索“IntelliJ idea”,并点击官网地址进行下载: ...

随机推荐

  1. 欲哭无泪的p-value = 0.051 | 做几次重复能得到较低的p-value

    欲哭无泪的p-value = 0.051 | 做几次重复能得到较低的p-value 已有 1469 次阅读 2017-12-15 14:12 |个人分类:RNA-seq|系统分类:科普集锦|关键词:R ...

  2. qt基本类

    多firstpage secondpage thirdpage fouthpage  实现 多页面 xml解析 实现 按钮 和 slot实现 mysql数据库访问实现

  3. python不用声明数据类型

    不用声明变量一样,Python不用去声明函数的返回类型,是由于其“若类型”的语言特性决定的. 在其他语言中,例如C/C++语言中在存储一个数据之前,都需要在内存中给这个数据开辟一个固定的内存空间,并给 ...

  4. c++11多线程学习笔记之二 mutex使用

    // 1111111.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> #include ...

  5. linq group by / distinct

    https://www.cnblogs.com/qixu/p/6033532.html http://www.cnblogs.com/A_ming/archive/2013/05/24/3097062 ...

  6. install pip(mac)

    simple method:  sudo easy_install pip you have done!and can install the other py programs using pip ...

  7. WebService安全加密

    众所周知,WebService访问API是公开的,知道其URL者均可以研究与调用.那么,在只允许注册用户的WebService应用中,如何确保API访问和通信的安全性呢?本文所指的访问与通信安全性包括 ...

  8. 简明PR教程

    注意:本文供培训使用且仅为第一版 作者也不打算继续更新 本篇文章最早是在为内部培训时所编写的文章 有些疏漏且没有进行校正等工作 我尽力用最简单通俗的语言给大家介绍PR的使用方法 简明PR教程 1.编辑 ...

  9. 2018.08.06 bzoj1503: [NOI2004]郁闷的出纳员(非旋treap)

    传送门 平衡树简单题. 直接用fhgtreap实现分裂和合并就没了. 代码: #include<bits/stdc++.h> #define N 100005 using namespac ...

  10. 有趣的NaN类型

    在学习Java集合的时候遇到了Float.isNaN(float)函数,点进去一看就不理解了,函数实现如下: public static boolean isNaN(float v) { return ...