From 7781f8eff89cd8188a5bc8bf92867c4c5356972b Mon Sep 17 00:00:00 2001
From: gongxings <1421222481@qq.com>
Date: Sat, 30 Mar 2019 17:19:29 +0800
Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 78 ++++++
springcloud-study-api/pom.xml | 23 ++
.../gxs/springcloud/entities/DeptEntity.java | 33 +++
springcloud-study-consumer-dept-80/pom.xml | 54 ++++
.../gxs/springcloud/DeptConsumer80App.java | 16 ++
.../gxs/springcloud/config/ConfigBean.java | 28 +++
.../controller/DeptConsumerController.java | 50 ++++
springcloud-study-provider-dept-8001/pom.xml | 64 +++++
.../Controller/DeptController.java | 38 +++
.../gxs/springcloud/DeptProvider8001App.java | 17 ++
.../gxs/springcloud/config/DruidConfig.java | 60 +++++
.../java/com/gxs/springcloud/dao/DeptDao.java | 37 +++
.../gxs/springcloud/service/DeptService.java | 33 +++
.../service/Impl/DeptServiceImpl.java | 35 +++
.../src/main/resources/application.yml | 44 ++++
.../src/main/resources/mapper/DeptMapper.xml | 17 ++
"\347\254\224\350\256\260.md" | 231 ++++++++++++++++++
17 files changed, 858 insertions(+)
create mode 100644 pom.xml
create mode 100644 springcloud-study-api/pom.xml
create mode 100644 springcloud-study-api/src/main/java/com/gxs/springcloud/entities/DeptEntity.java
create mode 100644 springcloud-study-consumer-dept-80/pom.xml
create mode 100644 springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/DeptConsumer80App.java
create mode 100644 springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/config/ConfigBean.java
create mode 100644 springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/controller/DeptConsumerController.java
create mode 100644 springcloud-study-provider-dept-8001/pom.xml
create mode 100644 springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/Controller/DeptController.java
create mode 100644 springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/DeptProvider8001App.java
create mode 100644 springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/config/DruidConfig.java
create mode 100644 springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/dao/DeptDao.java
create mode 100644 springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/service/DeptService.java
create mode 100644 springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/service/Impl/DeptServiceImpl.java
create mode 100644 springcloud-study-provider-dept-8001/src/main/resources/application.yml
create mode 100644 springcloud-study-provider-dept-8001/src/main/resources/mapper/DeptMapper.xml
create mode 100644 "\347\254\224\350\256\260.md"
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..57046e9
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,78 @@
+
+
+ 4.0.0
+ com.gxs.springcloud
+ springcloud-study
+ 1.0-SNAPSHOT
+
+ springcloud-study-api
+ springcloud-study-provider-dept-8001
+ springcloud-study-consumer-dept-80
+
+ pom
+
+ UTF-8
+ 1.8
+ 1.8
+ 4.12
+ 1.2.17
+ 1.1.10
+ 1.5.19.RELEASE
+ Dalston.SR1
+ 5.1.47
+ 1.3.3
+ 1.2.3
+ 1.18.6
+
+
+
+
+
+ org.springframework.cloud
+ spring-cloud-dependencies
+ ${spring-cloud.version}
+ pom
+ import
+
+
+ org.springframework.boot
+ spring-boot-dependencies
+ ${spring-boot.version}
+ pom
+ import
+
+
+ mysql
+ mysql-connector-java
+ ${mysql-connector.version}
+
+
+ com.alibaba
+ druid
+ ${druid.version}
+
+
+ org.mybatis.spring.boot
+ mybatis-spring-boot-starter
+ ${mybatis-starter.version}
+
+
+ log4j
+ log4j
+ ${log4j.version}
+
+
+ ch.qos.logback
+ logback-core
+ ${logback.version}
+
+
+ junit
+ junit
+ ${junit.version}
+ test
+
+
+
+
diff --git a/springcloud-study-api/pom.xml b/springcloud-study-api/pom.xml
new file mode 100644
index 0000000..1e11af8
--- /dev/null
+++ b/springcloud-study-api/pom.xml
@@ -0,0 +1,23 @@
+
+
+
+ 4.0.0
+
+ com.gxs.springcloud
+ springcloud-study
+ 1.0-SNAPSHOT
+
+
+ springcloud-study-api
+
+
+
+
+ org.projectlombok
+ lombok
+ provided
+
+
+
+
\ No newline at end of file
diff --git a/springcloud-study-api/src/main/java/com/gxs/springcloud/entities/DeptEntity.java b/springcloud-study-api/src/main/java/com/gxs/springcloud/entities/DeptEntity.java
new file mode 100644
index 0000000..f5aac33
--- /dev/null
+++ b/springcloud-study-api/src/main/java/com/gxs/springcloud/entities/DeptEntity.java
@@ -0,0 +1,33 @@
+package com.gxs.springcloud.entities;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * @author GongXings
+ * @createTime 30 13:44
+ * @description 部门实体类
+ */
+@AllArgsConstructor
+@NoArgsConstructor
+@Data
+@Accessors(chain = true)
+public class DeptEntity implements Serializable{
+ /**
+ * 部门编码 主键
+ */
+ private Long deptNo;
+ /**
+ * 部门名称
+ */
+ private String deptName;
+ /**
+ * 数据库名称
+ */
+ private String dbSource;
+
+}
\ No newline at end of file
diff --git a/springcloud-study-consumer-dept-80/pom.xml b/springcloud-study-consumer-dept-80/pom.xml
new file mode 100644
index 0000000..c586a12
--- /dev/null
+++ b/springcloud-study-consumer-dept-80/pom.xml
@@ -0,0 +1,54 @@
+
+
+
+ 4.0.0
+
+ com.gxs.springcloud
+ springcloud-study
+ 1.0-SNAPSHOT
+
+
+ springcloud-study-consumer-dept-80
+
+
+
+ com.gxs.springcloud
+ springcloud-study-api
+ ${project.version}
+
+
+ junit
+ junit
+
+
+
+ ch.qos.logback
+ logback-core
+
+
+
+ org.springframework.boot
+ spring-boot-starter-jetty
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+
+
+
+ org.springframework
+ springloaded
+
+
+ org.springframework.boot
+ spring-boot-devtools
+
+
+
+
+
\ No newline at end of file
diff --git a/springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/DeptConsumer80App.java b/springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/DeptConsumer80App.java
new file mode 100644
index 0000000..1267448
--- /dev/null
+++ b/springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/DeptConsumer80App.java
@@ -0,0 +1,16 @@
+package com.gxs.springcloud;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+/**
+ * @author GongXings
+ * @createTime 30 16:11
+ * @description
+ */
+@SpringBootApplication
+public class DeptConsumer80App {
+ public static void main(String[] args) {
+ SpringApplication.run(DeptConsumer80App.class,args);
+ }
+}
\ No newline at end of file
diff --git a/springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/config/ConfigBean.java b/springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/config/ConfigBean.java
new file mode 100644
index 0000000..d25d7fe
--- /dev/null
+++ b/springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/config/ConfigBean.java
@@ -0,0 +1,28 @@
+package com.gxs.springcloud.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.client.RestTemplate;
+
+/**
+ * @author GongXings
+ * @createTime 30 15:43
+ * @description
+ */
+@Configuration
+public class ConfigBean {
+
+ /**
+ * 配置RestTemplate
+ * 通过RestTemplate调用提供者服务 ,发送rest请求
+ * 提供了多种访问http服务的方法,
+ * 针对于访问rest服务客户端的调用的模板类
+ * @return
+ */
+ @Bean
+ public RestTemplate getRestTemplate(){
+ return new RestTemplate();
+ }
+
+
+}
\ No newline at end of file
diff --git a/springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/controller/DeptConsumerController.java b/springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/controller/DeptConsumerController.java
new file mode 100644
index 0000000..8a17073
--- /dev/null
+++ b/springcloud-study-consumer-dept-80/src/main/java/com/gxs/springcloud/controller/DeptConsumerController.java
@@ -0,0 +1,50 @@
+package com.gxs.springcloud.controller;
+
+import com.gxs.springcloud.entities.DeptEntity;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.client.RestTemplate;
+
+import java.util.List;
+
+/**
+ * @author GongXings
+ * @createTime 30 15:48
+ * @description
+ */
+@RestController
+public class DeptConsumerController {
+
+ private static final String REST_URL_PREFIX="http://localhost:8001";
+
+ @Autowired
+ private RestTemplate restTemplate;
+
+ @RequestMapping(value = "/consumer/dept/add")
+ public boolean add( DeptEntity deptEntity){
+ //三个参数:url,requestMap ResponseBean.class
+ return restTemplate.postForObject(
+ REST_URL_PREFIX+"/dept/add",
+ deptEntity,
+ Boolean.class);
+ }
+
+ @RequestMapping("/consumer/dept/findById/{deptNo}")
+ public DeptEntity findById(Long deptNo){
+ //三个参数:url,requestMap ResponseBean.class
+ return restTemplate.getForObject(
+ REST_URL_PREFIX+"/dept/findById/"+deptNo,
+ DeptEntity.class);
+ }
+
+ @RequestMapping("/consumer/dept/findAll")
+ public List findAll(){
+ //三个参数:url,requestMap ResponseBean.class
+ return restTemplate.getForObject(
+ REST_URL_PREFIX+"/dept/findAll",
+ List.class);
+ }
+}
\ No newline at end of file
diff --git a/springcloud-study-provider-dept-8001/pom.xml b/springcloud-study-provider-dept-8001/pom.xml
new file mode 100644
index 0000000..f9b4bcf
--- /dev/null
+++ b/springcloud-study-provider-dept-8001/pom.xml
@@ -0,0 +1,64 @@
+
+
+
+ 4.0.0
+
+ com.gxs.springcloud
+ springcloud-study
+ 1.0-SNAPSHOT
+
+
+ springcloud-study-provider-dept-8001
+
+
+
+ com.gxs.springcloud
+ springcloud-study-api
+ ${project.version}
+
+
+ junit
+ junit
+
+
+ mysql
+ mysql-connector-java
+
+
+ com.alibaba
+ druid
+
+
+ ch.qos.logback
+ logback-core
+
+
+ org.mybatis.spring.boot
+ mybatis-spring-boot-starter
+
+
+ org.springframework.boot
+ spring-boot-starter-jetty
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+
+
+
+ org.springframework
+ springloaded
+
+
+ org.springframework.boot
+ spring-boot-devtools
+
+
+
+
+
\ No newline at end of file
diff --git a/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/Controller/DeptController.java b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/Controller/DeptController.java
new file mode 100644
index 0000000..5cc986f
--- /dev/null
+++ b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/Controller/DeptController.java
@@ -0,0 +1,38 @@
+package com.gxs.springcloud.Controller;
+
+import com.gxs.springcloud.entities.DeptEntity;
+import com.gxs.springcloud.service.DeptService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * @author GongXings
+ * @createTime 30 15:07
+ * @description
+ */
+@RestController
+public class DeptController {
+
+ @Autowired
+ private DeptService deptService;
+
+ @RequestMapping(value = "/dept/add",method = RequestMethod.POST)
+ public boolean addDept(@RequestBody DeptEntity deptEntity) {
+ return deptService.addDept(deptEntity);
+ }
+ @RequestMapping(value = "/dept/findById/{deptNo}",method = RequestMethod.GET)
+ public DeptEntity findById(Long deptNo) {
+ return deptService.findById(deptNo);
+ }
+
+ @RequestMapping(value = "/dept/findAll",method = RequestMethod.GET)
+ public List findAll() {
+ return deptService.findAll();
+ }
+
+}
\ No newline at end of file
diff --git a/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/DeptProvider8001App.java b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/DeptProvider8001App.java
new file mode 100644
index 0000000..7994413
--- /dev/null
+++ b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/DeptProvider8001App.java
@@ -0,0 +1,17 @@
+package com.gxs.springcloud;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+/**
+ * @author GongXings
+ * @createTime 30 15:14
+ * @description
+ */
+@SpringBootApplication
+public class DeptProvider8001App {
+
+ public static void main(String[] args) {
+ SpringApplication.run(DeptProvider8001App.class,args);
+ }
+}
\ No newline at end of file
diff --git a/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/config/DruidConfig.java b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/config/DruidConfig.java
new file mode 100644
index 0000000..cbca29c
--- /dev/null
+++ b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/config/DruidConfig.java
@@ -0,0 +1,60 @@
+package com.gxs.springcloud.config;
+
+import com.alibaba.druid.pool.DruidDataSource;
+import com.alibaba.druid.support.http.StatViewServlet;
+import com.alibaba.druid.support.http.WebStatFilter;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.web.servlet.FilterRegistrationBean;
+import org.springframework.boot.web.servlet.ServletRegistrationBean;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+import javax.sql.DataSource;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author GongXings
+ * @createTime 29 15:06
+ * @description
+ */
+@Configuration
+public class DruidConfig {
+
+ @ConfigurationProperties(prefix = "spring.datasource")
+ @Bean
+ public DataSource dataSource(){
+ return new DruidDataSource();
+ }
+
+ /**
+ * 配置Druid的监控平台
+ * 用户名,密码
+ * 过滤的链接
+ */
+ @Bean
+ public ServletRegistrationBean statViewServlet(){
+ ServletRegistrationBean servletRegistrationBean =
+ new ServletRegistrationBean(new StatViewServlet(),"/druid/*");
+ Map initParams =new HashMap<>();
+ initParams.put("loginUsername", "admin");
+ initParams.put("loginPassword", "123456");
+ servletRegistrationBean.setInitParameters(initParams);
+ return servletRegistrationBean;
+ }
+
+ /**
+ * 配置监控的filter
+ */
+ @Bean
+ public FilterRegistrationBean webStatFilter(){
+ FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();
+ filterRegistrationBean.setFilter(new WebStatFilter());
+ Map initParams =new HashMap<>();
+ initParams.put("exclusions", "*.js,*.css,/druid/*");
+ filterRegistrationBean.setInitParameters(initParams);
+ filterRegistrationBean.setUrlPatterns(Arrays.asList("/*"));
+ return filterRegistrationBean;
+ }
+}
\ No newline at end of file
diff --git a/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/dao/DeptDao.java b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/dao/DeptDao.java
new file mode 100644
index 0000000..9978c8c
--- /dev/null
+++ b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/dao/DeptDao.java
@@ -0,0 +1,37 @@
+package com.gxs.springcloud.dao;
+
+import com.gxs.springcloud.entities.DeptEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * @author GongXings
+ * @createTime 30 14:48
+ * @description
+ */
+@Mapper
+public interface DeptDao {
+
+ /**
+ * 插入
+ * @param deptEntity
+ *
+ * @return
+ */
+ boolean addDept(DeptEntity deptEntity);
+
+ /**
+ * 根据id查找
+ * @param deptNo
+ * @return
+ */
+ DeptEntity findById(Long deptNo);
+
+ /**
+ * 查询全部
+ * @return
+ */
+ List findAll();
+
+}
\ No newline at end of file
diff --git a/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/service/DeptService.java b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/service/DeptService.java
new file mode 100644
index 0000000..6e77d0a
--- /dev/null
+++ b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/service/DeptService.java
@@ -0,0 +1,33 @@
+package com.gxs.springcloud.service;
+
+import com.gxs.springcloud.entities.DeptEntity;
+
+import java.util.List;
+
+/**
+ * @author GongXings
+ * @createTime 30 15:03
+ * @description
+ */
+public interface DeptService {
+
+ /**
+ * 插入
+ * @param deptEntity
+ * @return
+ */
+ boolean addDept(DeptEntity deptEntity);
+
+ /**
+ * 根据id查找
+ * @param deptNo
+ * @return
+ */
+ DeptEntity findById(Long deptNo);
+
+ /**
+ * 查询全部
+ * @return
+ */
+ List findAll();
+}
\ No newline at end of file
diff --git a/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/service/Impl/DeptServiceImpl.java b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/service/Impl/DeptServiceImpl.java
new file mode 100644
index 0000000..a34a98d
--- /dev/null
+++ b/springcloud-study-provider-dept-8001/src/main/java/com/gxs/springcloud/service/Impl/DeptServiceImpl.java
@@ -0,0 +1,35 @@
+package com.gxs.springcloud.service.Impl;
+
+import com.gxs.springcloud.dao.DeptDao;
+import com.gxs.springcloud.entities.DeptEntity;
+import com.gxs.springcloud.service.DeptService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * @author GongXings
+ * @createTime 30 15:04
+ * @description
+ */
+@Service
+public class DeptServiceImpl implements DeptService{
+
+ @Autowired
+ DeptDao deptDao;
+ @Override
+ public boolean addDept(DeptEntity deptEntity) {
+ return deptDao.addDept(deptEntity);
+ }
+
+ @Override
+ public DeptEntity findById(Long deptNo) {
+ return deptDao.findById(deptNo);
+ }
+
+ @Override
+ public List findAll() {
+ return deptDao.findAll();
+ }
+}
\ No newline at end of file
diff --git a/springcloud-study-provider-dept-8001/src/main/resources/application.yml b/springcloud-study-provider-dept-8001/src/main/resources/application.yml
new file mode 100644
index 0000000..a237094
--- /dev/null
+++ b/springcloud-study-provider-dept-8001/src/main/resources/application.yml
@@ -0,0 +1,44 @@
+#配置服务器信息
+server:
+ port: 8001
+ #context-path: /study 配置根目录
+
+
+#数据库信息配置
+spring:
+ application:
+ name: study-springcloud-dept #应用名称
+ datasource:
+ url: jdbc:mysql://localhost:3306/study?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC&verifyServerCertificate=false&useSSL=false
+ username: root
+ password: root
+ driver-class-name: com.mysql.jdbc.Driver
+ type: com.alibaba.druid.pool.DruidDataSource
+
+#druid连接池配置
+ initialSize: 5
+ minIdle: 5
+ maxActive: 20
+ maxWait: 60000
+ timeBetweenEvictionRunsMillis: 60000
+ minEvictableIdleTimeMillis: 300000
+ validationQuery: SELECT 1 FROM DUAL
+ testWhileIdle: true
+ testOnBorrow: false
+ testOnReturn: false
+ poolPreparedStatements: true
+ # 配置监控统计拦截的filters,去掉监控界面sql无法统计,‘wall’用于防火墙
+ filters: stat,wall,log4j
+ maxPoolPreparedStatementPerConnectionSize: 20
+ userGlobalDataSourceStat: true
+ connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
+
+#Mybatis配置
+mybatis:
+ mapper-locations: classpath:mapper/*.xml
+ type-aliases-package: com.gxs.springcloud.entities
+ configuration:
+ map-underscore-to-camel-case: true #开启驼峰命名
+ cache-enabled: true #开启二级缓存
+
+
diff --git a/springcloud-study-provider-dept-8001/src/main/resources/mapper/DeptMapper.xml b/springcloud-study-provider-dept-8001/src/main/resources/mapper/DeptMapper.xml
new file mode 100644
index 0000000..c598954
--- /dev/null
+++ b/springcloud-study-provider-dept-8001/src/main/resources/mapper/DeptMapper.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+ INSERT INTO dept(dept_name,db_source) VALUE (#{deptName},DATABASE());
+
+
+
\ No newline at end of file
diff --git "a/\347\254\224\350\256\260.md" "b/\347\254\224\350\256\260.md"
new file mode 100644
index 0000000..0976a0a
--- /dev/null
+++ "b/\347\254\224\350\256\260.md"
@@ -0,0 +1,231 @@
+# Spring Cloud学习笔记
+
+
+
+## 工程环境搭建
+
+spring cloud版本:Dalston.SR1
+
+spring boot版本:1.5.19.RELEASE
+
+### 1、父工程搭建
+
+- 新建springcloud-study 父工程
+
+ pom文件
+
+```xml
+
+
+ 4.0.0
+ com.gxs.springcloud
+ springcloud-study
+ 1.0-SNAPSHOT
+ pom
+
+ UTF-8
+ 1.8
+ 1.8
+ 4.12
+ 1.2.17
+ 1.1.10
+ 1.5.19.RELEASE
+ Dalston.SR1
+ 5.1.47
+ 1.3.3
+ 1.0.6
+
+
+
+
+
+ org.springframework.cloud
+ spring-cloud-dependencies
+ ${spring-cloud.version}
+ pom
+ import
+
+
+ org.springframework.boot
+ spring-boot-dependencies
+ ${spring-boot.version}
+ pom
+ import
+
+
+ mysql
+ mysql-connector-java
+ ${mysql-connector.version}
+
+
+ com.alibaba
+ druid
+ ${druid.version}
+
+
+ org.mybatis.spring.boot
+ mybatis-spring-boot-starter
+ ${mybatis-starter.version}
+
+
+ log4j
+ log4j
+ ${log4j.version}
+
+
+ ch.qos.logback
+ logback-core
+ ${logback.version}
+
+
+ junit
+ junit
+ ${junit.version}
+ test
+
+
+
+
+```
+
+- 构建公共子模块 springcloud-study-api
+
+ pom文件
+
+```xml
+
+
+
+ 4.0.0
+
+ com.gxs.springcloud
+ springcloud-study
+ 1.0-SNAPSHOT
+
+
+ springcloud-study-api
+
+
+```
+
+- 构建服务提供者 springcloud-study-provider-dept-8001
+
+ pom文件
+
+ ```xml
+
+
+
+ 4.0.0
+
+ com.gxs.springcloud
+ springcloud-study
+ 1.0-SNAPSHOT
+
+
+ springcloud-study-provider-dept-8001
+
+
+
+ com.gxs.springcloud
+ springcloud-study-api
+ ${project.version}
+
+
+ junit
+ junit
+
+
+ mysql
+ mysql-connector-java
+
+
+ com.alibaba
+ druid
+
+
+ ch.qos.logback
+ logback-core
+
+
+ org.mybatis.spring.boot
+ mybatis-spring-boot-starter
+
+
+ org.springframework.boot
+ spring-boot-starter-jetty
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+
+
+
+ org.springframework
+ springloaded
+
+
+ org.springframework.boot
+ spring-boot-devtools
+
+
+
+
+
+ ```
+
+ yml文件配置
+
+ ```yml
+ #配置服务器信息
+ server:
+ port: 8001
+ #context-path: /study 配置根目录
+
+
+ #数据库信息配置
+ spring:
+ application:
+ name: study-springcloud-dept #应用名称
+ datasource:
+ url: jdbc:mysql://localhost:3306/study?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC&verifyServerCertificate=false&useSSL=false
+ username: root
+ password: root
+ driver-class-name: com.mysql.jdbc.Driver
+ type: com.alibaba.druid.pool.DruidDataSource
+
+ #druid连接池配置
+ initialSize: 5
+ minIdle: 5
+ maxActive: 20
+ maxWait: 60000
+ timeBetweenEvictionRunsMillis: 60000
+ minEvictableIdleTimeMillis: 300000
+ validationQuery: SELECT 1 FROM DUAL
+ testWhileIdle: true
+ testOnBorrow: false
+ testOnReturn: false
+ poolPreparedStatements: true
+ # 配置监控统计拦截的filters,去掉监控界面sql无法统计,‘wall’用于防火墙
+ filters: stat,wall,log4j
+ maxPoolPreparedStatementPerConnectionSize: 20
+ userGlobalDataSourceStat: true
+ connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
+
+ #Mybatis配置
+ mybatis:
+ mapper-locations: classpath:mapper/*.xml
+ type-aliases-package: com.gxs.springcloud.entities
+ configuration:
+ map-underscore-to-camel-case: true #开启驼峰命名
+ cache-enabled: true #开启二级缓存
+ ```
+
+- 构建服务消费者 springcloud-study-consumer-dept-80
\ No newline at end of file