IntelliJ IDEA配置maven3.3.3+mybatis3.1.1
注:本文参考了孤傲苍狼关于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。

IntelliJ IDEA配置maven3.3.3+mybatis3.1.1的更多相关文章
- IntellIJ IDEA 配置 Maven 以及 修改 默认 Repository
转自:IntellIJ IDEA 配置 Maven 以及 修改 默认 Repository 今天将IntellIJ IDEA 关于Maven的配置总结一下,方便以后可参考. IDEA版本: Intel ...
- IntelliJ IDEA 配置运行程序
IntelliJ IDEA 对于Javaer开发来说还是很nice的,就是第一次用可能配置项有点生疏,这里就记录一下IntelliJ IDEA 配置运行程序. 1. 点击Edit Config... ...
- IntelliJ IDEA 配置maven
以下内容引自http://blog.csdn.net/qq_32588349/article/details/51461182. 使用IntelliJ IDEA 配置Maven(入门) ...
- 使用IntelliJ IDEA 配置Maven(转)
1. 下载Maven 官方地址:http://maven.apache.org/download.cgi 解压并新建一个本地仓库文件夹 2.配置本地仓库路径 3.配置maven环境变量 4.在Inte ...
- Intellij IDEA 配置Tomcat远程调试
一.前言 在服务器端开发过程中,由于服务器环境差异导致运行结果不符合预期. 所以就需要到IDEA Debug 服务器代码.看起来貌似很高大上的事情. 今天就说说使用Intellij IDEA 配置的方 ...
- Mac下Tomcat安装与Intellij IDEA配置Tomcat
Mac下Tomcat安装与Intellij IDEA配置Tomcat 一 安装 1 下载地址:https://tomcat.apache.org/download-90.cgi 2 将压缩包解压后移至 ...
- IntellIJ IDEA 配置 Vue 支持 打开Vue项目
[参考]零基础 Vue 开发环境搭建 打开运行Vue项目 IDEA版本: IntelliJ IDEA 2017.2 Windows 7 X64 IntelliJ IDEA下载地址:https://ww ...
- 使用IntelliJ IDEA 配置Maven(转)
原文地址:使用IntelliJ IDEA 配置Maven 1. 下载Maven 官方地址:http://maven.apache.org/download.cgi 解压并新建一个本地仓库文件夹 2.配 ...
- IntelliJ idea配置python
为什么选择Intellij?因为我需要系统地管理python工程,Intellij可断点调试. 1.下载IntelliJ idea 在百度中搜索“IntelliJ idea”,并点击官网地址进行下载: ...
随机推荐
- The server is busy, please refresh
- mstsc本地驱动器
mstsc 可以把本地驱动器 挂载到服务器上
- 2018.09.27 hdu4507吉哥系列故事——恨7不成妻(数位dp)
传送门 一道比较综合的数位dp. 维护三个值:[L,R][L,R][L,R] 区间中与7无关的数的数量,与7无关的数之和,与7无关的数的的平方和. 然后可以用第一个值推第二个,第一个和第二个值推第三个 ...
- 浮点数转byte数组
; float b=34.56745f; float c=0.0; ,,,}; byte* t=fbs; float2Bytes(t,b); unsigned int addrF=(unsigned ...
- try-catch+thows异常范围说明
方式一: CatalogPO deleteTarget = null; /** 查询是否存在 **/ deleteTarget = catalogMapper.findByCatalogId(cata ...
- Field '***********' doesn't have a default value
今天做配置文件一直报这个错误: 原因是主键是integer类型,没有设置自增模式,所以会出现这个问题,是表的结构问题.更改用navicat
- 函数作用域和块级作用域--你不知道的JavaScript
et和const在{}内声明都会变为外部不能访问的值,但是const声明的是常量,也不能修改 函数是 JavaScript 中最常见的作用域单元.本质上,声明在一个函数内部的变量或函数会在所处的作用域 ...
- python创建二维数组
c=[[0]*3 for i in range(3)] c=[[0 for i in range(3)] for i in range(3)]
- web大文件上传(web应用---SSH框架)
版权所有 2009-2018荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/ 产品首页:http://www.ncmem.com/webapp/up6.2/in ...
- Swift1.2与Xcode6.3 beta
Xcode6.3和Swift1.2都已经发布.这次发布增强了Swift编译器也给Swift增加了一些新的特性.详细内容可以看这里.这里主要关注比较重要的内容. 编译器的改进 Swift1.2的编译器更 ...