Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。

特点

1. 轻松创建独立的Spring应用程序
2. 嵌入的Tomcat、jetty等web容器,无需部署WAR文件
3. 提供一系列的“starter” 来简化的Maven配置
4. 开箱即用,尽可能自动配置Spring

环境搭建

用IDEA创建一个新项目File-->New Project-->Spring Initializr

Next-->填写Group和Artifact

Next-->选择项目需要的依赖

Next-->填写完项目名称和选择项目位置之后点击Finish

等待编译完成,运行,出现如下图说明搭建成功

完善一下目录结构:

创建一个Hello World Controller作为项目的入口

 @Controller
@EnableAutoConfiguration
public class HelloWorld {
@RequestMapping("/")
@ResponseBody
String home(){
return "Hello World!";
}
}

运行http://localhost:8080/出现

JDBC连接数据库

项目不使用application.properties文件 而使用更加简洁的application.yml文件: 
将原有的resource文件夹下的application.properties文件删除,创建一个新的application.yml配置文件, 
文件的内容如下:

server:
port:
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/test?useSSL=false&characterEncoding=UTF-8
password: root
username: root
driver-class-name: com.mysql.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource
mybatis:
type-aliases-package: com.example.demo.model
mapper-locations: classpath:mappers/*.xml

application.yml

pom.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.example</groupId>
<artifactId>springbootdemo</artifactId>
<version>0.0.-SNAPSHOT</version>
<packaging>jar</packaging> <name>springbootdemo</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-aop</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<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>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!--Mybatis逆向生成 -->
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.</version>
</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>

pom.xml

使用mybatis generator 自动生成代码:/src/main/resources/generator/generatorConfig.xml

<?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"> <generatorConfiguration>
<context id="DB2Tables" targetRuntime="MyBatis3">
<commentGenerator>
<property name="suppressAllComments" value="true"/>
</commentGenerator> <jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://127.0.0.1:3306/test?useSSL=false&amp;characterEncoding=UTF-8"
userId="root"
password="root">
</jdbcConnection> <!-- 实体类生成位置 -->
<javaModelGenerator targetPackage="com.example.demo.model" targetProject=".\src\main\java">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator> <!-- Mappers 文件生成位置 -->
<sqlMapGenerator targetPackage="mappers" targetProject=".\src\main\resources">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator> <!-- 接口生成位置 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.example.demo.mapper" targetProject=".\src\main\java">
<property name="enableSubPackages" value="true" />
</javaClientGenerator> <!-- 生成表目录 --> <table tableName="ie_green_indexsystemtable" schema="ie_green_indexsystemtable" domainObjectName="GreenIndexSystem" enableUpdateByExample="false" enableSelectByExample="false" enableDeleteByExample="false" enableCountByExample="false" enableUpdateByPrimaryKey="false"
enableDeleteByPrimaryKey="false" enableInsert="false">
</table>
</context>
</generatorConfiguration>

generatorConfig.xml

Mybatisgenerator

public class MybatisGenerator {
public static void main(String[] args) throws Exception{
generator("D:\\springbootdemo\\src\\main\\resources\\generator\\generatorConfig.xml");
} public static void generator(String path) throws Exception{
List<String> warnings = new ArrayList<String>();
boolean overwrite = true;
File configFile = new File(path);
ConfigurationParser cp = new ConfigurationParser(warnings);
Configuration config = cp.parseConfiguration(configFile);
DefaultShellCallback callback = new DefaultShellCallback(overwrite);
MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
myBatisGenerator.generate(null);
}
}

MybatisGenerator

运行Mybatisgenerator

项目启动类

@SpringBootApplication
@MapperScan("com.example.demo.mapper")
public class SpringbootdemoApplication { public static void main(String[] args) {
SpringApplication.run(SpringbootdemoApplication.class, args);
} }

Mapper

public interface GreenIndexSystemMapper {
GreenIndexSystem selectByPrimaryKey(Integer id);
List<GreenIndexSystem> selectAll();
}

映射文件Mapper.xml

  <select id="selectAll" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from ie_green_indexsystemtable
</select>

Service

public interface GreenIndexService {
List<GreenIndexSystem> selectAll();
}

ServiceImpl

@Service(value = "greenService")
public class GreenIndexServiceImpl implements GreenIndexService {
@Autowired
private GreenIndexSystemMapper greenIndexSystemMapper; @Override
public List<GreenIndexSystem> selectAll() {
return greenIndexSystemMapper.selectAll();
}
}

Controller

@RestController
@RequestMapping("/green/")
public class GreenIndexController {
@Autowired
private GreenIndexService greenService; @RequestMapping("getinfo")
public List<GreenIndexSystem> getGreenAll(){return greenService.selectAll();}
}

运行启动类查询到结果

Spring Boot Mybatis整合的更多相关文章

  1. Spring boot Mybatis 整合(完整版)

    个人开源项目 springboot+mybatis+thymeleaf+docker构建的个人站点开源项目(集成了个人主页.个人作品.个人博客) 朋友自制的springboot接口文档组件swagge ...

  2. Spring boot Mybatis 整合

    PS: 参考博客 PS: spring boot配置mybatis和事务管理 PS: Spring boot Mybatis 整合(完整版)   这篇博客里用到了怎样 生成 mybatis 插件来写程 ...

  3. Spring boot Mybatis 整合(注解版)

    之前写过一篇关于springboot 与 mybatis整合的博文,使用了一段时间spring-data-jpa,发现那种方式真的是太爽了,mybatis的xml的映射配置总觉得有点麻烦.接口定义和映 ...

  4. Spring boot Mybatis整合构建Rest服务(超细版)

     Springboot+ Mybatis+MySql整合构建Rest服务(涵盖增.删.改.查) 1.概要 1.1 为什么要使用Spring  boot? 1.1.1 简单方便.配置少.整合了大多数框架 ...

  5. spring boot +mybatis 整合 连接数据库测试(从0到1)

    spring boot 整合mybatis 1.打开idea创建一个项目 2.在弹出的窗口中选择spring initializr(初始化项目),点击next 3.接下来填写group 与artifa ...

  6. spring boot mybatis 整合教程

    本项目使用的环境: 开发工具:Intellij IDEA 2017.1.3 springboot: 1.5.6 jdk:1.8.0_161 maven:3.3.9 额外功能 PageHelper 分页 ...

  7. Spring Boot + MyBatis + Druid + Redis + Thymeleaf 整合小结

    Spring Boot + MyBatis + Druid + Redis + Thymeleaf 整合小结 这两天闲着没事想利用**Spring Boot**加上阿里的开源数据连接池**Druid* ...

  8. Spring Boot:整合MyBatis框架

    综合概述 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以使用简单 ...

  9. Spring boot Mybatis

    最近刚接触Spring boot,正是因为他的及简配置方便开发,促使我下定决心要用它把之前写的项目重构,那么问题来了,spring boot怎么整合mybatis呢,下面几个配置类来搞定. 在我的代码 ...

随机推荐

  1. HDU 3518 Boring counting

    题目:Boring counting 链接:http://acm.hdu.edu.cn/showproblem.php?pid=3518 题意:给一个字符串,问有多少子串出现过两次以上,重叠不能算两次 ...

  2. [模板] dp套dp && bzoj5336: [TJOI2018]party

    Description Problem 5336. -- [TJOI2018]party Solution 神奇的dp套dp... 考虑lcs的转移方程: \[ lcs[i][j]=\begin{ca ...

  3. Magento 架构原则

    Magento架构原则 >OOP体系结构和编程原则OOP体系结构和编程原则面向对象编程(OOP)设计允许软件组件具有最大的灵活性和可扩展性,允许您设计和实现高度定制的网站.面向对象原则的优点包括 ...

  4. Hdoj 1425.sort 题解

    Problem Description 给你n个整数,请按从大到小的顺序输出其中前m大的数. Input 每组测试数据有两行,第一行有两个数n,m(0<n,m<1000000),第二行包含 ...

  5. Supercomputer 解题报告

    Supercomputer 设\(f_i\)为前\(i\)个时间内必须的完成的任务个数,那么答案就是 \[ \max_{i}\lceil\frac{f_i}{i}\rceil \] 现在要支持区间加和 ...

  6. Nginx禁止IP直接访问网站

    禁止别人直接通过IP访问网站,在nginx的server配置文件前面加上如下的配置,如果有通过IP直接访问的,直接拒绝连接(需要去掉别的server下的default_server). server ...

  7. mysql ssh 跳板机(堡垒机???)连接服务器

    跳板机(Jump Server),也称堡垒机,是一类可作为跳板批量操作远程设备的网络设备,是系统管理员或运维人员常用的操作平台之一. 正常的登录流程 使用ssh命令登录跳板机: 登录跳板机成功后,在跳 ...

  8. tomcat logs目录下 日志文件含义及配置位置

    含义:Web服务器访问日志配置位置:server.xml 含义:tomcat的标准输出(stdout)和标准出错(stderr),应用里使用System.out打印的东西都会到这里来,日志框架,配置了 ...

  9. CentOS7安装jdk8及环境变量配置

    下载jdk8 这里可以使用Windows下载,然后传到虚拟机 进入jdk下载页面 https://www.oracle.com/technetwork/java/javase/downloads/in ...

  10. ubuntu不能联网的问题

    控制面板\网络和 Internet\网络和共享中心-->更改>配器设置-->以太网-->右键属性-->共享-->允许其他网络用户通过此计算机的internet连接来 ...