maven项目重构-使用了mybatis generator插件
1.在worksapce下,dos窗口输入spring init -g=com.briup.apps -a=poll3 -d=mysql,mybatis,web poll3
2.下载依赖,cd到poll3,执行mvn install,会报错,因为没有配置数据库的初始数据
解决方法:eclipse导入poll3,打开/resources/application.properties,输入
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/pro2.0
spring.datasource.username=root
spring.datasource.password=root
mybatis.mapper-locations= classpath:/mapper/**/*.xml
mybatis.mapper-locations=classpath:/mapper/**/*.xml 这个配置是为了让dao层找到mapper.xml文件的资源位置,和mapper文件夹下的mapper.xml映射
3.修改pox.xml,内容如下
<?xml version="1.0" encoding="UTF-8"?>
<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.</modelVersion> <groupId>com.braup.apps</groupId>
<artifactId>poll</artifactId>
<version>0.0.-SNAPSHOT</version>
<packaging>jar</packaging> <name>demo</name>
<description>Demo project for Spring Boot</description> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0..RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent> <properties>
<project.build.sourceEncoding>UTF-</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties> <dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency> <!-- swagger API文档 -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.</version>
</dependency> <dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.</version>
</dependency> <dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build> </project>
4.三层架构

5.src/main/resources下新建mapper文件夹,用来保存mapper.xml文件
6.在config包下创建MybatisConfig.java,用来配置mybatis
package com.briup.apps.poll.config; import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Configuration; @Configuration
@MapperScan("com.briup.apps.poll")
public class MybatisConfig { }
本来应该在DemoApplication.java中配置,已进行标记
package com.braup.apps.poll; import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
@MapperScan("com.braup.apps.poll.dao")
public class DemoApplication { public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
7.进行测试,mvn spring-boot:run,启动成功表明热部署,三层架构,swagger部署成功
8.编写数据库访问层代码
8.1.手写(时间长,费劲,代码冗余)
8. 2.使用mybatis generator(自动生成bean和dao以及mapper.xml文件)。
mybatis不是框架,是一个插件,不属于项目的一部分,产生的代码是项目的一部分。
8.3配置mabatis generator框架
8.3.1 pom.xml添加依赖
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.</version>
</plugin>
8.3.2添加配置文件src/main/resources下添加------------1.根据那些表产生bean. 2.产生的pojo放在哪里. 3.产生的mapper接口放在哪里 4.产生的mapper实现类放在哪里 ........
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<!-- mybatis-generator的核心配置文件 -->
<generatorConfiguration>
<classPathEntry location="/Users/lichunyu/springboot/repository/mysql/mysql-connector-java/5.1.45/mysql-connector-java-5.1.45.jar" /> <context id="DB2Tables" targetRuntime="MyBatis3">
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://127.0.0.1:3306/poll2.0"
userId="root"
password="root">
</jdbcConnection> <!--指定生成的类型为java类型,避免数据库中number等类型字段 -->
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver> <!--自动生成的实体的存放包路径 -->
<javaModelGenerator targetPackage="com.briup.apps.poll.bean" targetProject="./src/main/java">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator> <!--自动生成的*Mapper.xml文件存放路径 -->
<sqlMapGenerator targetPackage="mapper" targetProject="./src/main/resources">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator> <!--自动生成的*Mapper.java存放路径 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.briup.apps.poll.dao" targetProject="./src/main/java">
<property name="enableSubPackages" value="true" />
</javaClientGenerator> <!-- 映射配置 --> <table tableName="poll_survy" domainObjectName="Survy" ></table>
<!--
<table tableName="poll_school" domainObjectName="School" ></table>
<table tableName="poll_grade" domainObjectName="Grade" ></table>
<table tableName="poll_clazz" domainObjectName="Clazz" ></table>
<table tableName="poll_course" domainObjectName="Course" ></table>
<table tableName="poll_grade_course" domainObjectName="GradeCourse" ></table>
<table tableName="poll_user" domainObjectName="User" ></table>
<table tableName="poll_option" domainObjectName="Option" ></table>
<table tableName="poll_question" domainObjectName="Question" ></table>
<table tableName="poll_questionnaire" domainObjectName="Questionnaire" ></table>
<table tableName="poll_questionnaire_question" domainObjectName="QuestionnaireQuestion" ></table>
-->
</context>
</generatorConfiguration>
8.3.3开始工作-( 要关闭项目)
mvn -Dmybatis.generator.overwrite=true mybatis-generator:generate
maven项目重构-使用了mybatis generator插件的更多相关文章
- Eclipse 使用mybatis generator插件自动生成代码
Eclipse 使用mybatis generator插件自动生成代码 标签: mybatis 2016-12-07 15:10 5247人阅读 评论(0) 收藏 举报 .embody{ paddin ...
- Mybatis-Generator_学习_02_使用Mapper专用的MyBatis Generator插件
源码见:https://github.com/shirayner/tk-mybatis-generator 一.要点 二.具体实现 1.项目结构 2.配置 pm.xml <?xml versio ...
- Mybatis Generator插件和PageHelper使用
最近,开始接触web项目开发,项目使用springboot和mybatis,以前一直以为开发过程中实体类,mybatis的xml文件都需要自己手动的去创建. 同事推荐说Mybatis Generato ...
- Mybatis分页-利用Mybatis Generator插件生成基于数据库方言的分页语句,统计记录总数 (转)
众所周知,Mybatis本身没有提供基于数据库方言的分页功能,而是基于JDBC的游标分页,很容易出现性能问题.网上有很多分页的解决方案,不外乎是基于Mybatis本机的插件机制,通过拦截Sql做分页. ...
- Myeclipse2014添加mybatis generator插件
Myeclipse2014把mybatis generator插件直接放在dropins文件夹下,重启后不能成功安装mybatis插件. 既然离线安装不成功,可以选择在线安装 1.选择 Help-&g ...
- mybatis generator 插件安装及使用
现在Mybatis特别火,但是在开发中却要经常写实体类和配置文件,会不会特别烦人,所以可以利用Mybatis的代码生成插件来生成这部分代码: 1,打开eclipse,点击Help>Softwar ...
- Maven项目中Spring整合Mybatis
Maven项目中Spring整合Mybatis 添加jar包依赖 spring需要的jar包依赖 <dependency> <groupId>org.springframewo ...
- Eclipse MyBatis Generator插件安装
目录 Eclipse MyBatis Generator插件安装 Eclipse MyBatis Generator插件安装 1.进入Eclipse Marketplace [Help] -> ...
- maven(18)-mybatis generator插件
generator的作用 使用mybatis框架,在初始项目或修改数据库时,相应的要在JAVA项目中去写一些数据模型文件,DAO,映射XML等配置,而这个插件的作用就是自动生成这些文件,以节省大 ...
随机推荐
- mvn命令着中package、install、deploy的区别
参考:https://blog.csdn.net/zhaojianting/article/details/80324533 常用操作区别 mvn clean package 依次执行了clean.r ...
- HTML常用技巧
1. 为网页链接添加快捷键:accesskey 属性 https://zhidao.baidu.com/question/2267343500557447508.html 2. 键盘事件设置快捷键:h ...
- Oracle中的dual表简介
dual是一个虚拟表,用来构成select的语法规则,oracle保证dual里面永远只有一条记录.我们可以用它来做很多事情,如下: 1.查看当前用户,可以在 SQL Plus中执行下面语句 sql代 ...
- 登录和退出Mysql
这里介绍的是通过cmd方式登录和退出Mysql的方式 一.登录命令 登录命令:mysql.exe -h主机地址 -P端口 -u用户名 -p密码 即依次输入服务器地址.服务器监听的端口.用 ...
- golang ---获取磁盘信息
package main import ( "fmt" "github.com/StackExchange/wmi" ) type Storage struct ...
- 上传自己的 NuGet 包
参考:https://blog.csdn.net/gulijiang2008/article/details/41724927 STEP 1:在NuGet上注册并获取API Key STEP 2:下载 ...
- Sql Server 使用游标辅助循环
项目临时表#TMPxmdt 存有ID,起始年度,完成年度(int型)两个字段: 实现功能:将#TMPxmdt表中每个ID对应的起始年度至完成年度中所有年度以(ID, ND)的形式插入另一个临时表#TM ...
- [winfrom]C#中使用SendMessage
在C#中,程序采用了的驱动采用了事件驱动而不是原来的消息驱动,虽然.net框架提供的事件已经十分丰富,但是在以前的系统中定义了丰富的消息对系统的编程提供了方便的实现方法,因此在C#中使用消息有时候还是 ...
- RAS非对称加密
加解密密钥不一致,一般私钥不公开,使用公钥加密,私钥解密,使用私钥加密,公钥可以解密. java代码 import javax.crypto.Cipher; import java.security. ...
- UML软件工程第一次实验
顶层设计 UC1诊所设备管理 UC1.1 统计设备使用情况 用况标识号 UC1.1 用况名称 统计设备使用情况 创建者 派克 创建时间 2017-9-25 参与者 客户 说明 客户需要知道自己诊所设备 ...