Quietly tell you

没有什么技术是一篇文档解决不了的,如果有,那就两篇。

快速构建基于 Spring Boot的项目

Spring Boot,不得不说,他是一个非常给力的框架,有人把spring boot归类为应用容器,把他和tomcat进行对比。其实我认为这么说是非常逗的,首先spring boot是一个框架,虽然它可以脱离应用容器直接运行,但他本身的确是一个非常给力的框架。他有自有的main方法,可以从这里启动整个工程,但这和应用容器是两回事儿。

下面用maven构建一个Spring Boot项目。

1、新建一个空白maven工程,创建 src/main/java源目录,创建src/main/resources源目录。

2、编辑pom.xml,添加如下配置:

<!-- 声明为 Spring Boot 项目 -->
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.5.4.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>

3、其实第二部完成了以后,这个SpringBoot项目就算是起来了,但通常情况下,我会给他添加一些依赖,当然这是我自己用到的依赖,可以根据自身需求引不容的依赖:编辑pom.xml,添加如下依赖

<!-- Spring Mybatis 整合模块 -->
		<dependency>
			<groupId>org.mybatis.spring.boot</groupId>
			<artifactId>mybatis-spring-boot-starter</artifactId>
			<version>1.3.0</version>
		</dependency>
		
		<!-- WEB 支持模块 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		
		<!-- HTML 页面模板模块 -->
		<dependency>  
		    <groupId>org.springframework.boot</groupId>  
		    <artifactId>spring-boot-starter-thymeleaf</artifactId>  
		</dependency>
		
		<!-- 工程健康监控模块 -->
		<dependency>  
		    <groupId>org.springframework.boot</groupId>  
		    <artifactId>spring-boot-starter-actuator</artifactId>  
		</dependency>
		
		<!-- Eureka 分布式集成模块 -->
		<dependency>
		    <groupId>org.springframework.cloud</groupId>
		    <artifactId>spring-cloud-starter-eureka</artifactId>
		    <version>1.3.0.RELEASE</version>
		</dependency>
		
		<!-- MySql 数据库驱动模块 -->
		<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>

4、在你的工程最外层package下建立一个启动类,类名自己定义,比如ServiceApplication

package com.aiyi.springclouda.server;


import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

@SpringBootApplication			//这个注解标识该类是SpringBoot的启动类
@EnableAutoConfiguration		//这个注解是将该项目注册到分布式系统中
@EnableDiscoveryClient			//这个注解是将该项目标识为分布式服务器的一个端(生产者或者消费者)
public class ServerApplication {

	public static void main(String[] args) {
		SpringApplication.run(ServerApplication.class, args);
	}
}

5、最后一步:创建src/main/resources/application.properties,并作如下配置:

#定义工程访问端口和服务名因为spring boot是独立项目,所以访问的时候不用加上服务名,直接加端口访问即可
server.port=8080
spring.application.name=TestService

#下面是配置一些数据源交给spring托管
spring.datasource.name=datesource
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/testdb
spring.datasource.username=mylocal
spring.datasource.password=guoshengkai
spring.datasource.initialSize=0
#定义最大连接数
spring.datasource.maxActive=20
#定义最大空闲
spring.datasource.maxIdle=20
#定义最小空闲  
spring.datasource.minIdle=1
#定义最长等待时间  
spring.datasource.maxWait=60000

#MyBatis Mapper映射文件扫描目录
mybatis.mapper-locations=classpath:mapper/*.xml
#MyBatis 实体类所在包
#mybatis.type-aliases-package=com.aiyi.springclouda.server.po
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp

#注册到Eureka微服务
eureka.client.service-url.defaultZone=http://guoshengkai:123456@localhost:8761/eureka
#Eureka客户端通过IP访问
eureka.instance.prefer-ip-address=true
eureka.instance.instance-id=${spring.application.name}:${server.port}
# 开启健康检查(需要spring-boot-starter-actuator依赖)
eureka.client.healthcheck.enabled=true
# 续约更新时间间隔(默认30秒)
eureka.instance.lease-renewal-interval-in-seconds=30
# 续约到期时间(默认90秒)
eureka.instance.lease-expiration-duration-in-seconds=10 

到此,大功告成!update一下maven工程然后直接运行ServiceApplication的main方法即可启动项目。

这是一个最初始的项目,在这里记下来,以后用的时候方便自己方便大家。

 

点赞
  1. mango说道:

    SSM框架中,spring boot为什么要和springmvc整合呢?感觉spring boot什么都能做了啊

    1. ahai说道:

      不。。这并没有。。。在spring boot中,spring mvc只是它的web模块的组成部分,而大部分开发的时候都习惯用springmvc了

发表评论

电子邮件地址不会被公开。 必填项已用*标注