https://www.cnblogs.com/zxdup/

一。Mybatis的创建

1.创建一个新的项目,建议选 Empty Project(空项目), 之后回跳转到Project Structure(项目构建)。

对项目结构进行设置

在Project中设置SDK

  1. Modules(模块):表示项目中的模块,可此时添加模块(也可之后添加),先创建一个Java模块,在项目下右键,new folder (lib:存放jar包)。
  2. Facets:发布版本号
  3. 之后即创建完成。

二.Mybatis的配置

1.拷贝jar包:

拷贝log4j,mybatis,mysql三个jar包至项目lib下,拷贝之后并不可以直接用,全部选中右键点击Add as Library(添加为库),可用之后前面会有一个箭头。

2.配置config.xml

主配置文件与log4j.properties拷贝至src下,主配置文件配置如下(连接MySQL):

<?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">
<!--!DOCTYPE configuration SYSTEM "mybatis-3-config.dtd" -->
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/> <!--!事务管理器-->
<dataSource type="POOLED"> <!--!连接池-->
<property name="driver" value="com.mysql.cj.jdbc.Driver"/> <!--!可在mysql连接库中找到-->
<property name="url" value="jdbc:mysql://127.0.0.1:3306/news?characterEncoding=utf8&amp;useUnicode=true&amp;serverTimezone=Asia/Shanghai"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
</configuration>

之后配置成功,进入下一步。

三。实体类映射

  1. 在src.com下创建bean包,之后在bean下创建实体类,与数据库中的实体类一一对应,类中属性与数据库中属性一一对应,选中属性右键generater中getter and setter。
  2. 在src.com下创建dao包,在dao下创建UsersMapper接口,写出数据库操作方法名,并不实现。eg:
    package com.dao;
    
    import com.bean.Users;
    import java.util.List;
    public interface UsersMapper {
    Users findById(int id);
    List<Users> findAll(); // Alt+Enter
    void add(Users user);
    void delete(int id);
    void update(Users user);
    }
  3. 配置mybatis与数据库之间的映射,创建映射文件xml,需要与接口名字相一致,并实现对数据库操作的实现。(xml文件的前三行是必须有的),传过来的参数用#{参},对象类型的则可以直接可用其属性。eg:
    <?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.dao.UsersMapper"><!--!命名空间,尽量与路径保持一致-->
    <select id="findById" parameterType="int"
    resultType="com.bean.Users">
    select
    id,nickname,realname,pwd,phone,email,address,create_time createTime,type,realid<!--!其中createtime是日期类型,使用数据库中的原名create_time来转换-->
    from n_users where id = #{id}
    </select>
    <select id="findAll" resultType="com.bean.Users">
    select
    id,nickname,realname,pwd,phone,email,address,create_time createTime,type,realid
    from n_users order by id
    </select>
    <insert id="add" parameterType="com.bean.Users"> <!--!insert中id列不可以指定,id是auto_increment(自动增长)-->
    insert into n_users
    (nickname,realname,pwd,phone,email,address,create_time,type,realid)
    values
    (#{nickname},#{realname},#{pwd},#{phone},#{email},#{address},#{createTime},#{type},#{realid})
    </insert> <!--!其中nickname在类中是私有的,调用方式为:nickname-》Nickname->getNickname()-->
    <update id="update" parameterType="com.bean.Users">
    update n_users set
    nickname = #{nickname},
    realname = #{realname},
    pwd = #{pwd},
    phone = #{phone},
    email = #{email},
    address = #{address},
    create_time = #{createTime},
    type = #{type},
    realid = #{realid}
    where id = #{id}
    </update>
    <delete id="delete" parameterType="int">
    delete from n_users where id = #{id}
    </delete>
    </mapper>
  4. 在主配置文件config中配置映射文件UsersMapper.xml,使UsersMapper.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">
    <!--!DOCTYPE configuration SYSTEM "mybatis-3-config.dtd" -->
    <configuration>
    <environments default="development">
    <environment id="development">
    <transactionManager type="JDBC"/> <!--!事务管理器-->
    <dataSource type="POOLED"> <!--!连接池-->
    <property name="driver" value="com.mysql.cj.jdbc.Driver"/> <!--!可在mysql连接库中找到-->
    <property name="url" value="jdbc:mysql://127.0.0.1:3306/news?characterEncoding=utf8&amp;useUnicode=true&amp;serverTimezone=Asia/Shanghai"/>
    <property name="username" value="root"/>
    <property name="password" value="123456"/>
    </dataSource>
    </environment>
    </environments>
    <mappers>
    <mapper resource="com/dao/UsersMapper.xml"/>
    </mappers
    >
    </configuration>

https://www.cnblogs.com/zxdup/

转载请注明作者.

(1).Mybatis的创建。配置。映射。dao映射的更多相关文章

  1. mybatis自己主动生成mapper,dao,映射文件

    一.先创建数据脚本,这里用的mysql数据脚本 drop table VOTE_ITEM; drop table VOTE_OPTION; drop table VOTE_SUBJECT; drop ...

  2. mybatis笔记 - 初始配置及dao的封装

    1.用户实体类 package com.javasm.entity; /** * *TODO 用户表实体类 * @author CaoLei 2018年6月26日上午10:50:12 * Manage ...

  3. Java框架之MyBatis 06-全局配置-mapper映射-分步查询

    MyBatis MyBatis是Apache的一个开源项目iBatis, iBatis一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架. iBatis  提供的持 ...

  4. 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap

    上篇<深入浅出Mybatis系列(七)---mapper映射文件配置之insert.update.delete>介绍了insert.update.delete的用法,本篇将介绍select ...

  5. 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap good

    上篇<深入浅出Mybatis系列(七)---mapper映射文件配置之insert.update.delete>介绍了insert.update.delete的用法,本篇将介绍select ...

  6. MyBatis 使用简单的 XML或注解用于配置和原始映射

    MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis .My ...

  7. 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap[转]

    上篇<深入浅出Mybatis系列(七)---mapper映射文件配置之insert.update.delete>介绍了insert.update.delete的用法,本篇将介绍select ...

  8. Mybatis基于XML配置SQL映射器(一)

    Durid和Mybatis开发环境搭建 SpringBoot搭建基于Spring+SpringMvc+Mybatis的REST服务(http://www.cnblogs.com/nbfujx/p/76 ...

  9. mybatis整合spring 之 基于接口映射的多对一关系

    转载自:http://my.oschina.net/huangcongmin12/blog/83731 mybatis整合spring 之  基于接口映射的多对一关系. 项目用到俩个表,即studen ...

随机推荐

  1. std::string 字符串分割

    #include <iostream> #include <string> #include <vector> std::vector<std::string ...

  2. Java JUC之Atomic系列12大类实例讲解和原理分解

    Java JUC之Atomic系列12大类实例讲解和原理分解 2013-02-21      0个评论       作者:xieyuooo 收藏    我要投稿 在java6以后我们不但接触到了Loc ...

  3. 如何使用Jsoup爬取网页内容

    前言: 这是一篇迟到很久的文章了,人真的是越来越懒,前一阵用jsoup实现了一个功能,个人觉得和selenium的webdriver原理类似,所以今天正好有时间,就又来更新分享了. 实现场景: 爬取博 ...

  4. python 中自带的堆模块heapq

    import heapq my_heap = [] #使用列表保存数据 #网列表中插入数据,优先级使用插入的内容来表示,就是一个比较大小的操作,越大优先级越高 heapq.heappush(my_he ...

  5. 免费申请通配符类型SSL证书

    折腾起因 最近做了个小网站wawoo.fun,一个做mac壁纸的小网站,网站还处在初级阶段,不能跟大神的比.网站发布后发现因为没有使用https,谷歌浏览器会在地址栏提示网站不安全.因此想提升下网站的 ...

  6. VideoView--简单获取进度条的方法

    使用MediaController类就可以简单的把视频中的进度条加进去 实例: 现在布局哪里放一个VideoView,然后: videoView = (VideoView) findViewById( ...

  7. docker(2)

    docker三大核心组件的概念 1镜像: Docker 镜像类似于虚拟机镜像,可以将它理解为一个只读的模板.例如,一个镜像可以包含一个基本的操作系统环境,里面仅安装了 Apache 应用程序(或用户需 ...

  8. java并发中ExecutorService的使用

    文章目录 创建ExecutorService 为ExecutorService分配Tasks 关闭ExecutorService Future ScheduledExecutorService Exe ...

  9. Spring Boot JPA 中transaction的使用

    文章目录 @Transactional的实现 @Transactional的使用 Transaction的传播级别 REQUIRED SUPPORTS MANDATORY NEVER NOT_SUPP ...

  10. java 之 jsp详解

    jsp所需环境 eclipse JSP/Servlet 环境 jsp处理 以下步骤表明了 Web 服务器是如何使用JSP来创建网页的: 就像其他普通的网页一样,您的浏览器发送一个 HTTP 请求给服务 ...