需要准备的环境:

  idea 2017.2

  jdk1.8.0_144

  Maven 3.5.0

  请提前将idea与Maven、jdk配置好,本次项目用的都是比较新的。

步骤:

一、首先使用idea新建一个Spring Initializr项目

根据需要来勾选,此处勾选了几个常用的!

点击Finish,建立项目完成!第一次使用可能要等好长一会。

二、配置

完成后可以看到如下目录结构。

其中application.properties是配置文件,然而我们推荐使用yml格式配置,所以删除它并新建application.yml、application-dev.yml、application-prod.yml。

其中application.yml为全局配置,application-dev.yml为开发环境所用配置,application-prod.yml为生成环境所用配置。

application.yml

spring:
profiles:
  #表示所用配置文件为application-dev.yml
active: dev
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://xxxxxx:3306/ChatRobot?useUnicode=true&characterEncoding=utf8&useSSL=false
username: xxxxx
password: xxxxx
tomcat:
initialSize: 1
min-idle: 1
max-idle: 20
max-wait: 60000
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 30000
validationQuery: SELECT 1
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
logging:
file: logs/demo.log

此处配置了所用的配置文件,以及数据库和数据库连接池,还有日志输出到文件,连接池使用官方建议的Tomcat连接池。

application-dev.yml

server:
port: 8080

此处配置开发环境使用8080端口。

application-prod.yml

server:
port: 443
ssl:
key-store: classpath:xxx.jks
key-store-password: xxx
keyStoreType: JKS
keyAlias: xxx

此处配置生产环境使用443端口,并配置了https,keyAlias为证书别名。

DemoApplication.java

package com.demo;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling; @SpringBootApplication
@MapperScan("com.demo.dao")
@EnableScheduling
public class DemoApplication { public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
} }

这里就是程序入口,开发时直接运行即可。

@MapperScan("com.demo.dao"),扫描MyBatis的Mapper于dao包下。

@EnableScheduling启用Spring Schedule定时任务,用不到的可以去掉。

配置大概就是这么多,非常简单,其他使用方面和SSM没什么区别,当然还可以配置Actuator来监控应用程序,相当强大。

三、发布

使用命令行进入工程目录下执行以下命令。

mvn clean package

默认且推荐的打包方式为jar,集成了Tomcat在其中,当然也可以修改为war。

打包jar会存在数据目录位置问题,我的解决方法是将数据目录放到System.getProperty("user.dir")下面。

运行时直接执行下面的命令即可。

java -jar demo.jar

在linux上可使用如下命令来后台运行。

nohup java -jar demo.jar >/dev/null >& &

idea搭建Spring Boot+MyBatis的更多相关文章

  1. idea搭建Spring Boot+Mybatis及使用教程

    环境准备 idea 15 jDK tomcat maven 搭建方式 官网下载源码包解压缩 使用idea中的Spring initializr创建 这两种方法创建的项目完全相同,只是操作方式不一样 这 ...

  2. myEclipse 搭建 Spring boot+myBatis+maven 项目流程

    1.新建一个工程 new-->maven project-->next-->next-->在filter中搜索webapp-->group id.Artifact id- ...

  3. spring boot+mybatis+quartz项目的搭建完整版

    1. 利用spring boot提供的工具(http://start.spring.io/)自动生成一个标准的spring boot项目架构 2. 因为这里我们是搭建spring boot+mybat ...

  4. Spring boot+Mybatis+MySQL插入中文乱码

    转载:https://www.jianshu.com/p/bd0311a33c16 现象: 搭建spring boot+mybatis+mysql时出现插入mysql的中文出现乱码???.   mys ...

  5. 快速搭建一个Spring Boot + MyBatis的开发框架

    前言:Spring Boot的自动化配置确实非常强大,为了方便大家把项目迁移到Spring Boot,特意总结了一下如何快速搭建一个Spring Boot + MyBatis的简易文档,下面是简单的步 ...

  6. java 搭建新项目,最佳组合:spring boot + mybatis generator

    java 搭建新项目,最佳组合:spring boot + mybatis generator

  7. spring boot+mybatis搭建项目

    一.创建spring boot项目 1.File->New->Project 2.选择 Spring Initializr ,然后选择默认的 url 点击[Next]: 3.修改项目信息 ...

  8. spring boot+mybatis+swagger搭建

    环境概述 使用的开发工具:idea 2018 3.4 环境:jdk1.8 数据库:MariaDB (10.2.21) 包管理:Maven 3.5 Web容器:Tomcat 8.0 开发机系统:Wind ...

  9. (6)java Spring Cloud+Spring boot+mybatis企业快速开发架构之SpringCloud-Spring Boot项目详细搭建步骤

    ​ 在 Spring Tools 4 for Eclipse 中依次选择 File->New->Maven Project,然后在出现的界面中按图所示增加相关信息. ​ <paren ...

随机推荐

  1. CentOS7搭建配置SVN服务器

    安装subversionyum install subversionsubversion安装在/bin目录检查一下subversion是否安装成功svnserve --version 建立版本库sub ...

  2. Linux 源码安装 Python3

    下载源码包https://www.python.org/downloads/ 解压(以3.64版本为例)wget https://www.python.org/ftp/python/3.6.4/Pyt ...

  3. 洛谷P4581 [BJOI2014]想法(玄学算法,拓扑排序)

    洛谷题目传送门 萝卜大毒瘤 题意可以简化成这样:给一个DAG,求每个点能够从多少个入度为\(0\)的点到达(记为\(k\)). 一个随机做法:给每个入度为\(0\)的点随机一个权值,在DAG上求出每个 ...

  4. Rainbond v5.1.2发布,微服务架构应用便捷管理和交付

    Rainbond v5.1.2发布,微服务架构应用便捷管理和交付 Rainbond是开源的企业应用云操作系统,支撑企业应用的开发.架构.交付和运维的全流程,通过无侵入架构,无缝衔接各类企业应用,底层资 ...

  5. 添加默认安全组规则-openstack

    if [ "$1" ] ;then neutron security-group-rule-create --direction ingress --ethertype ipv4 ...

  6. PyCharmMarkdown插件的方法

    arkdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. 从github下载的代码一般都会带有README.md文件,该文件是一个Markdo ...

  7. 【dfs】LETTERS

    1212:LETTERS [题目描述] 给出一个roe×colroe×col的大写字母矩阵,一开始的位置为左上角,你可以向上下左右四个方向移动,并且不能移向曾经经过的字母.问最多可以经过几个字母. [ ...

  8. 单片机的编程语言和开发环境 LET′S TRY“嵌入式编程”: 3 of 6

    单片机的编程语言和开发环境 LET′S TRY“嵌入式编程”: 3 of 6 本连载讲解作为嵌入式系统开发技术人员所必需具备的基础知识.这些基础知识是硬件和软件技术人员都应该掌握的共通技术知识. 在“ ...

  9. 利用LVS+Keepalived搭建Mysql双主复制高可用负载均衡环境

    应用背景: MySQL复制(主主,主从...)能在保证数据的备份的同时也能够做读写分离分摊系统压力,但是发生单点故障时,需要手动 切换到另外一台主机.LVS和Keppalived可以设定一个VIP来实 ...

  10. thinkphp5 如何使用查询事件?

    它是对数据库的CURD操作事件进行了钩子,当事件触发时,会进行回调. 就像是注册事件和前置方法或后置方法类似 下面是demo <?php namespace app\index\controll ...