注:本文参考了孤傲苍狼关于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. The server is busy, please refresh

  2. mstsc本地驱动器

    mstsc 可以把本地驱动器 挂载到服务器上

  3. 2018.09.27 hdu4507吉哥系列故事——恨7不成妻(数位dp)

    传送门 一道比较综合的数位dp. 维护三个值:[L,R][L,R][L,R] 区间中与7无关的数的数量,与7无关的数之和,与7无关的数的的平方和. 然后可以用第一个值推第二个,第一个和第二个值推第三个 ...

  4. 浮点数转byte数组

    ; float b=34.56745f; float c=0.0; ,,,}; byte* t=fbs; float2Bytes(t,b); unsigned int addrF=(unsigned ...

  5. try-catch+thows异常范围说明

    方式一: CatalogPO deleteTarget = null; /** 查询是否存在 **/ deleteTarget = catalogMapper.findByCatalogId(cata ...

  6. Field '***********' doesn't have a default value

    今天做配置文件一直报这个错误: 原因是主键是integer类型,没有设置自增模式,所以会出现这个问题,是表的结构问题.更改用navicat

  7. 函数作用域和块级作用域--你不知道的JavaScript

    et和const在{}内声明都会变为外部不能访问的值,但是const声明的是常量,也不能修改 函数是 JavaScript 中最常见的作用域单元.本质上,声明在一个函数内部的变量或函数会在所处的作用域 ...

  8. python创建二维数组

    c=[[0]*3 for i in range(3)] c=[[0 for i in range(3)] for i in range(3)]

  9. web大文件上传(web应用---SSH框架)

    版权所有 2009-2018荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/ 产品首页:http://www.ncmem.com/webapp/up6.2/in ...

  10. Swift1.2与Xcode6.3 beta

    Xcode6.3和Swift1.2都已经发布.这次发布增强了Swift编译器也给Swift增加了一些新的特性.详细内容可以看这里.这里主要关注比较重要的内容. 编译器的改进 Swift1.2的编译器更 ...