2. 修改pom.xml,添加MyBatis依赖

  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>com.deppon.demo</groupId>
  5. <artifactId>test05</artifactId>
  6. <packaging>war</packaging>
  7. <version>0.0.1-SNAPSHOT</version>
  8. <name>test05 Maven Webapp</name>
  9. <url>http://maven.apache.org</url>
  10. <!-- 属性配置 -->
  11. <properties>
  12. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  13. </properties>
  14. <dependencies>
  15. <dependency>
  16. <groupId>junit</groupId>
  17. <artifactId>junit</artifactId>
  18. <version>4.10</version>
  19. <scope>test</scope>
  20. </dependency>
  21. <!-- 添加MyBatis依赖 -->
  22. <dependency>
  23. <groupId>org.mybatis</groupId>
  24. <artifactId>mybatis</artifactId>
  25. <version>3.1.1</version>
  26. </dependency>
  27. <dependency>
  28. <groupId>log4j</groupId>
  29. <artifactId>log4j</artifactId>
  30. <version>1.2.16</version>
  31. </dependency>
  32. <dependency>
  33. <groupId>org.slf4j</groupId>
  34. <artifactId>slf4j-api</artifactId>
  35. <version>1.6.1</version>
  36. </dependency>
  37. <dependency>
  38. <groupId>org.slf4j</groupId>
  39. <artifactId>slf4j-nop</artifactId>
  40. <version>1.6.4</version>
  41. </dependency>
  42. </dependencies>
  43. <build>
  44. <finalName>test05</finalName>
  45. </build>
  46. </project>

3. 添加mybatis-config.xml

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE configuration
  3. PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-config.dtd">
  5. <configuration>
  6. <!-- 全局别名设置,在映射文件中只需写别名,而不必写出整个类路径  -->
  7. <typeAliases>
  8. <typeAlias type="com.deppon.test05.entity.PersonEntity" alias="PersonEntity"/>
  9. </typeAliases>
  10. <environments default="development">
  11. <environment id="development">
  12. <transactionManager type="JDBC" />
  13. <dataSource type="POOLED">
  14. <property name="driver" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
  15. <property name="url" value="jdbc:sqlserver://localhost:1433;DatabaseName=Demo" />
  16. <property name="username" value="ygy" />
  17. <property name="password" value="shishi" />
  18. </dataSource>
  19. </environment>
  20. </environments>
  21. <mappers>
  22. <mapper resource="com/deppon/test05/mapper/PersonEntityMapper.xml" />
  23. </mappers>
  24. </configuration>

PersonEntityMapper.xml

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.deppon.test05.mapper.PersonEntityMapper">
  6. <!-- 查询所有用户 -->
  7. <select id="queryAll" resultType="PersonEntity" >
  8. select * from t_person
  9. </select>
  10. <!-- 插入一条记录 -->
  11. <insert id="insert" parameterType="PersonEntity">
  12. insert into t_person(id , name) values(#{id} , #{name})
  13. </insert>
  14. </mapper>

IPersonEntityDao.java

  1. package com.deppon.test05.dao;
  2. import java.util.List;
  3. import com.deppon.test05.entity.PersonEntity;
  4. public interface IPersonEntityDao {
  5. /**
  6. * 插入一条记录
  7. * @param person
  8. */
  9. public void insert(PersonEntity person);
  10. /**
  11. * 查询所有记录
  12. * @return
  13. */
  14. public List<PersonEntity> queryAll();
  15. }

PersonEntityDao.java

  1. package com.deppon.test05.dao.impl;
  2. import java.util.List;
  3. import org.apache.ibatis.session.SqlSession;
  4. import com.deppon.test05.dao.IPersonEntityDao;
  5. import com.deppon.test05.entity.PersonEntity;
  6. import com.deppon.test05.util.MyBatisUtil;
  7. public class PersonEntityDao implements IPersonEntityDao {
  8. public static final String NAMESPACE = "com.deppon.test05.mapper.PersonEntityMapper";
  9. @Override
  10. public void insert(PersonEntity person) {
  11. SqlSession session = MyBatisUtil.getSession();
  12. session.insert(NAMESPACE + ".insert" , person);
  13. session.commit();
  14. session.close();
  15. }
  16. @Override
  17. public List<PersonEntity> queryAll() {
  18. SqlSession session = MyBatisUtil.getSession();
  19. List<PersonEntity> personList = session.selectList(NAMESPACE + ".queryAll");
  20. session.commit();
  21. session.close();
  22. return personList;
  23. }
  24. }

PersonEntity.java

  1. package com.deppon.test05.entity;
  2. public class PersonEntity implements java.io.Serializable {
  3. private static final long serialVersionUID = -1138245964662330288L;
  4. private Integer id;
  5. private String name;
  6. public Integer getId() {
  7. return id;
  8. }
  9. public void setId(Integer id) {
  10. this.id = id;
  11. }
  12. public String getName() {
  13. return name;
  14. }
  15. public void setName(String name) {
  16. this.name = name;
  17. }
  18. @Override
  19. public String toString() {
  20. return "PersonEntity [id=" + id + ", name=" + name + "]";
  21. }
  22. }

MyBatisUtil.java

  1. package com.deppon.test05.util;
  2. import java.io.IOException;
  3. import java.io.InputStream;
  4. import org.apache.ibatis.io.Resources;
  5. import org.apache.ibatis.session.SqlSession;
  6. import org.apache.ibatis.session.SqlSessionFactory;
  7. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
  8. public class MyBatisUtil {
  9. private static SqlSessionFactory factory = null;
  10. private static void initialFactory() {
  11. String resource = "mybatis-config.xml";
  12. try {
  13. InputStream in = Resources.getResourceAsStream(resource);
  14. factory = new SqlSessionFactoryBuilder().build(in);
  15. } catch (IOException e) {
  16. e.printStackTrace();
  17. }
  18. }
  19. public static SqlSession getSession() {
  20. if(factory == null) {
  21. initialFactory();
  22. }
  23. return factory.openSession();
  24. }
  25. }

测试程序:

  1. package com.deppon.test05.dao;
  2. import java.util.List;
  3. import org.junit.Before;
  4. import org.junit.Test;
  5. import com.deppon.test05.dao.impl.PersonEntityDao;
  6. import com.deppon.test05.entity.PersonEntity;
  7. public class PersonEntityDaoTest {
  8. private IPersonEntityDao personEntityDao;
  9. @Before
  10. public void before() {
  11. personEntityDao = new PersonEntityDao();
  12. }
  13. @Test
  14. public void testQueryAll() {
  15. List<PersonEntity> personList = personEntityDao.queryAll();
  16. for(PersonEntity each : personList) {
  17. System.out.println(each);
  18. }
  19. }
  20. @Test
  21. public void testInsert() {
  22. PersonEntity person = new PersonEntity();
  23. person.setId(200);
  24. person.setName("乔巴");
  25. personEntityDao.insert(person);
  26. }
  27. }

项目结构如下图所示:

注意:记得那两条命令哦,亲(前面的博客有)

maven学习5 构建MyBatis项目的更多相关文章

  1. Maven的学习资料收集--(八) 构建MyBatis项目

    在这里,写一下,怎么使用Maven构建MyBatis项目. 1. 新建一个Web项目 可以参考前面的博客 2. 修改pom.xml,添加MyBatis依赖 <project xmlns=&quo ...

  2. 【maven学习】构建maven web项目

    Maven Web应用 创建Web应用程序 要创建一个简单的java web应用程序,我们将使用Maven的原型 - web应用插件.因此,让我们打开命令控制台,进入到C: MVN目录并执行以下命令m ...

  3. IDEA中maven搭建Spring+SpringMVC+mybatis项目

    一.介绍 使用IDEA搭建maven web项目,整合框架Spring+SpringMVC+mybatis 项目结构图:

  4. springboot学习之构建简单项目搭建

    概述 相信对于Java开发者而言,spring和springMvc两个框架一定不陌生,这两个框架需要我们手动配置的地方非常多,各种的xml文件,properties文件,构建一个项目还是挺复杂的,在这 ...

  5. maven 学习---Eclipse构建Maven项目

    1. 安装m2eclipse插件    要用Eclipse构建Maven项目,我们需要先安装meeclipse插件    点击eclipse菜单栏Help->Eclipse Marketplac ...

  6. Maven学习- 使用Maven构建Web项目

    从网上查了一些资料,才算明白(也就是怎么操作吧),怎么使用Maven构建一个Web项目,找到一篇文档,主要都是从这里学到的: 下载地址:使用Eclipse构建Maven的Web项目.docx 现自己在 ...

  7. maven 学习---Maven构建自动化-Hudson

    建立自动化定义场景,依赖项目建设过程中被启动,一旦项目生成成功完成,以确保相关的项目是稳定的. 实例 考虑一个团队正在开发一个项目总线核心API上的其他两个项目的应用程序,网页UI和应用程序的桌面UI ...

  8. maven 学习---Maven项目文档

    本教程将教你如何一步到位创建应用程序的文档.因此,让我们开始,到  C:/MVN 创建java应用程序consumerBanking. OpenconsumerBanking文件夹,然后执行以下命令m ...

  9. Maven学习:Eclipse使用maven构建web项目(转)

    Maven学习:Eclipse使用maven构建web项目(转) 8.更改class路径:右键项目,Java Build Path -> Source 下面应该有4个文件夹.src/main/j ...

随机推荐

  1. 二 web爬虫,scrapy模块以及相关依赖模块安装

    当前环境python3.5 ,windows10系统 Linux系统安装 在线安装,会自动安装scrapy模块以及相关依赖模块 pip install Scrapy 手动源码安装,比较麻烦要自己手动安 ...

  2. shell基础复习笔记

    变量的设置 以等号连接,等号两边不能有空格 变量名首个字符必须是英文,可以使用下划线,不能使用标点符号,不能使用bash里的关键字 可以使用转义字符\将特殊符号(如Enter.$.空格.!等)变成一般 ...

  3. C++空类和string类

    1. 空类 1.1 空类默认哪六个成员函数. class Empty { public: Empty(); //缺省构造函数 Empty e; Empty( const Empty& ); / ...

  4. MySQL数据库维护、备份、和复制

    预防性维护的基本原则:1)启动MySQL服务器提供的自动恢复功能2)有计划的开展预防心维护工作,定期对表进行检查,日常的表检查有助于及时发现各种小问题,并在问题变得更糟之前将其纠正.3)建立数据库备份 ...

  5. python面向对象编程 继承 组合 接口和抽象类

    1.类是用来描述某一类的事物,类的对象就是这一类事物中的一个个体.是事物就要有属性,属性分为 1:数据属性:就是变量 2:函数属性:就是函数,在面向对象里通常称为方法 注意:类和对象均用点来访问自己的 ...

  6. SQL Server中解决死锁的新方法介绍

    SQL Server中解决死锁的新方法介绍 数据库操作的死锁是不可避免的,本文并不打算讨论死锁如何产生,重点在于解决死锁,通过SQL Server 2005, 现在似乎有了一种新的解决办法. 将下面的 ...

  7. Node大文件处理

    之前有个需求要将文件解析再处理,当时直接将整个文件内容读到内存中然后解析,也是没有考虑到大文件的问题,那么要如何解析大文件呢? 输入:文件的内容是多个json,按顺序排列 输出:解析后的json数据 ...

  8. react use axios拦截器

    import axios from 'axios'; improt Promise from 'es6-promise'; Promise.polyfill(); const axiosService ...

  9. C#基础知识梳理系列

    1. 这个系列深入的从IL层面谈了C#各种基本知识的本质,十分值得学习: http://www.cnblogs.com/solan/category/398748.html

  10. PhotoPicker 从头到脚

    1. 简介 PhotoPicker, 是一款开源的图片选择器.效果上和微信相似. 2. 使用方法 2.1 添加依赖 dependencies { compile 'me.iwf.photopicker ...