idea搭建Spring Boot+MyBatis
需要准备的环境:
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的更多相关文章
- idea搭建Spring Boot+Mybatis及使用教程
环境准备 idea 15 jDK tomcat maven 搭建方式 官网下载源码包解压缩 使用idea中的Spring initializr创建 这两种方法创建的项目完全相同,只是操作方式不一样 这 ...
- myEclipse 搭建 Spring boot+myBatis+maven 项目流程
1.新建一个工程 new-->maven project-->next-->next-->在filter中搜索webapp-->group id.Artifact id- ...
- spring boot+mybatis+quartz项目的搭建完整版
1. 利用spring boot提供的工具(http://start.spring.io/)自动生成一个标准的spring boot项目架构 2. 因为这里我们是搭建spring boot+mybat ...
- Spring boot+Mybatis+MySQL插入中文乱码
转载:https://www.jianshu.com/p/bd0311a33c16 现象: 搭建spring boot+mybatis+mysql时出现插入mysql的中文出现乱码???. mys ...
- 快速搭建一个Spring Boot + MyBatis的开发框架
前言:Spring Boot的自动化配置确实非常强大,为了方便大家把项目迁移到Spring Boot,特意总结了一下如何快速搭建一个Spring Boot + MyBatis的简易文档,下面是简单的步 ...
- java 搭建新项目,最佳组合:spring boot + mybatis generator
java 搭建新项目,最佳组合:spring boot + mybatis generator
- spring boot+mybatis搭建项目
一.创建spring boot项目 1.File->New->Project 2.选择 Spring Initializr ,然后选择默认的 url 点击[Next]: 3.修改项目信息 ...
- spring boot+mybatis+swagger搭建
环境概述 使用的开发工具:idea 2018 3.4 环境:jdk1.8 数据库:MariaDB (10.2.21) 包管理:Maven 3.5 Web容器:Tomcat 8.0 开发机系统:Wind ...
- (6)java Spring Cloud+Spring boot+mybatis企业快速开发架构之SpringCloud-Spring Boot项目详细搭建步骤
在 Spring Tools 4 for Eclipse 中依次选择 File->New->Maven Project,然后在出现的界面中按图所示增加相关信息. <paren ...
随机推荐
- 使用nmon监控Linxu服务器性能
nmon是IBM开发的Linux软件工具.能够监控多项Linux服务,最常见的如:CPU使用率.内存使用率.硬盘读写.网卡流量等. 并能设置参数,将记录的数据保存到文件,利用Excel做统计分析. 安 ...
- linux系统下FTP服务器的安装和配置
FTP是File Transfer Protocol(文件传输协议),就是专门用来传输文件的协议.简单地说,支持FTP协议的服务器就是FTP服务器. PORT模式: 首先客户端开启一个非特权端口N(大 ...
- 求集合中选一个数与当前值进行位运算的max
求集合中选一个数与当前值进行位运算的max 这是一个听来的神仙东西. 先确定一下值域把,大概\(2^{16}\),再大点也可以,但是这里就只是写写,所以无所谓啦. 我们先看看如果暴力求怎么做,位运算需 ...
- 【BZOJ5300】[CQOI2018]九连环 (高精度,FFT)
[BZOJ5300][CQOI2018]九连环 (高精度,FFT) 题面 BZOJ 洛谷 题解 去这里看吧,多么好 #include<iostream> #include<cstdi ...
- centos7下kafka集群安装部署
应用摘要: Apache kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写.Kafka是一种高吞吐量的 分布式发布订阅消息系统,是消息中间件的一种,用于构建实时 ...
- 阶乘函数(factorial)——结果在整型范围内的阶乘计算
定义: 在数学中,正整数的阶乘(英语:factorial)是所有小于及等于该数的正整数的积,计为n!,例如5的阶乘计为5!,其值为120: \[ 5!=5\times 4\times 3\times ...
- javascript之复习(css属性值的计算)
js取div的宽高咋办,css有content-box,border-box,padding-box,表现又不一样.好在有个offsetWidth, <style type="text ...
- 51Nod--1076 2条不相交的路径(强连通分量)
电波 #include<bits/stdc++.h> using namespace std; #define LL long long #define maxn 30000 vector ...
- 洛谷P1712 区间
题意:给你n个区间,从中选择m个,使得它们有交,且最长与最短区间的差值最小. 解:这道题我想了好多的,nlog²n错的,nlogn错的,最后终于想出nlogn的了...... 把区间按照长度排序,然后 ...
- react-native中的style
在 React Native 中,你并不需要学习什么特殊的语法来定义样式.我们仍然是使用 JavaScript 来写样式. 所有的核心组件都接受名为style的属性.这些样式名基本上是遵循了 web ...