parent
2f368ec52a
commit
36f2339522
@ -1,13 +1,13 @@ |
|||||||
* [首页](/?t=1553566189196) |
* [首页](/?t=1553568114881) |
||||||
* 开发文档 |
* 开发文档 |
||||||
* [快速体验](files/10010_快速体验.md?t=1553566189197) |
* [快速体验](files/10010_快速体验.md?t=1553568114881) |
||||||
* [项目接入到SOP](files/10011_项目接入到SOP.md?t=1553566189214) |
* [项目接入到SOP](files/10011_项目接入到SOP.md?t=1553568114907) |
||||||
* [新增接口](files/10020_新增接口.md?t=1553566189215) |
* [新增接口](files/10020_新增接口.md?t=1553568114907) |
||||||
* [业务参数校验](files/10030_业务参数校验.md?t=1553566189215) |
* [业务参数校验](files/10030_业务参数校验.md?t=1553568114907) |
||||||
* [错误处理](files/10040_错误处理.md?t=1553566189215) |
* [错误处理](files/10040_错误处理.md?t=1553568114908) |
||||||
* [接口交互详解](files/10050_接口交互详解.md?t=1553566189215) |
* [接口交互详解](files/10050_接口交互详解.md?t=1553568114908) |
||||||
* [使用SpringCloudGateway](files/10060_使用SpringCloudGateway.md?t=1553566189215) |
* [使用SpringCloudGateway](files/10060_使用SpringCloudGateway.md?t=1553568114908) |
||||||
* [easyopen支持](files/10070_easyopen支持.md?t=1553566189215) |
* [easyopen支持](files/10070_easyopen支持.md?t=1553568114908) |
||||||
* 原理分析 |
* 原理分析 |
||||||
* [原理分析之@ApiMapping](files/90010_原理分析之@ApiMapping.md?t=1553566189215) |
* [原理分析之@ApiMapping](files/90010_原理分析之@ApiMapping.md?t=1553568114909) |
||||||
* [原理分析之路由存储](files/90011_原理分析之路由存储.md?t=1553566189215) |
* [原理分析之路由存储](files/90011_原理分析之路由存储.md?t=1553568114909) |
||||||
|
@ -1,25 +0,0 @@ |
|||||||
/target/ |
|
||||||
!.mvn/wrapper/maven-wrapper.jar |
|
||||||
|
|
||||||
### STS ### |
|
||||||
.apt_generated |
|
||||||
.classpath |
|
||||||
.factorypath |
|
||||||
.project |
|
||||||
.settings |
|
||||||
.springBeans |
|
||||||
.sts4-cache |
|
||||||
|
|
||||||
### IntelliJ IDEA ### |
|
||||||
.idea |
|
||||||
*.iws |
|
||||||
*.iml |
|
||||||
*.ipr |
|
||||||
|
|
||||||
### NetBeans ### |
|
||||||
/nbproject/private/ |
|
||||||
/nbbuild/ |
|
||||||
/dist/ |
|
||||||
/nbdist/ |
|
||||||
/.nb-gradle/ |
|
||||||
/build/ |
|
@ -1,46 +0,0 @@ |
|||||||
<?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.0</modelVersion> |
|
||||||
<parent> |
|
||||||
<groupId>org.springframework.boot</groupId> |
|
||||||
<artifactId>spring-boot-starter-parent</artifactId> |
|
||||||
<version>2.1.2.RELEASE</version> |
|
||||||
<relativePath/> <!-- lookup parent from repository --> |
|
||||||
</parent> |
|
||||||
<groupId>com.gitee.sop</groupId> |
|
||||||
<artifactId>sop-book-api</artifactId> |
|
||||||
<version>1.0-SNAPSHOT</version> |
|
||||||
|
|
||||||
<properties> |
|
||||||
<java.version>1.8</java.version> |
|
||||||
<spring-cloud.version>Greenwich.RELEASE</spring-cloud.version> |
|
||||||
</properties> |
|
||||||
|
|
||||||
<dependencies> |
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.boot</groupId> |
|
||||||
<artifactId>spring-boot-starter-web</artifactId> |
|
||||||
</dependency> |
|
||||||
|
|
||||||
<dependency> |
|
||||||
<groupId>org.projectlombok</groupId> |
|
||||||
<artifactId>lombok</artifactId> |
|
||||||
<version>1.18.4</version> |
|
||||||
<scope>provided</scope> |
|
||||||
</dependency> |
|
||||||
</dependencies> |
|
||||||
|
|
||||||
<dependencyManagement> |
|
||||||
<dependencies> |
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.cloud</groupId> |
|
||||||
<artifactId>spring-cloud-dependencies</artifactId> |
|
||||||
<version>${spring-cloud.version}</version> |
|
||||||
<type>pom</type> |
|
||||||
<scope>import</scope> |
|
||||||
</dependency> |
|
||||||
</dependencies> |
|
||||||
</dependencyManagement> |
|
||||||
</project> |
|
@ -1,12 +0,0 @@ |
|||||||
package com.gitee.book.api.domain; |
|
||||||
|
|
||||||
import lombok.Data; |
|
||||||
|
|
||||||
/** |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@Data |
|
||||||
public class Book { |
|
||||||
private int id; |
|
||||||
private String name; |
|
||||||
} |
|
@ -1,14 +0,0 @@ |
|||||||
package com.hhdd.book.api.service; |
|
||||||
|
|
||||||
import com.gitee.book.api.domain.Book; |
|
||||||
import org.springframework.web.bind.annotation.RequestMapping; |
|
||||||
import org.springframework.web.bind.annotation.RequestParam; |
|
||||||
|
|
||||||
/** |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@RequestMapping("/book") |
|
||||||
public interface BookService { |
|
||||||
@RequestMapping("/getBook") |
|
||||||
Book getBook(@RequestParam("id") int id); |
|
||||||
} |
|
@ -1,25 +0,0 @@ |
|||||||
/target/ |
|
||||||
!.mvn/wrapper/maven-wrapper.jar |
|
||||||
|
|
||||||
### STS ### |
|
||||||
.apt_generated |
|
||||||
.classpath |
|
||||||
.factorypath |
|
||||||
.project |
|
||||||
.settings |
|
||||||
.springBeans |
|
||||||
.sts4-cache |
|
||||||
|
|
||||||
### IntelliJ IDEA ### |
|
||||||
.idea |
|
||||||
*.iws |
|
||||||
*.iml |
|
||||||
*.ipr |
|
||||||
|
|
||||||
### NetBeans ### |
|
||||||
/nbproject/private/ |
|
||||||
/nbbuild/ |
|
||||||
/dist/ |
|
||||||
/nbdist/ |
|
||||||
/.nb-gradle/ |
|
||||||
/build/ |
|
@ -1,89 +0,0 @@ |
|||||||
<?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.0</modelVersion> |
|
||||||
<parent> |
|
||||||
<groupId>org.springframework.boot</groupId> |
|
||||||
<artifactId>spring-boot-starter-parent</artifactId> |
|
||||||
<version>2.1.2.RELEASE</version> |
|
||||||
<relativePath/> <!-- lookup parent from repository --> |
|
||||||
</parent> |
|
||||||
<groupId>com.gitee.sop</groupId> |
|
||||||
<artifactId>sop-book-web</artifactId> |
|
||||||
<version>0.0.1-SNAPSHOT</version> |
|
||||||
<name>sop-story</name> |
|
||||||
<description>Demo project for Spring Boot</description> |
|
||||||
|
|
||||||
<properties> |
|
||||||
<java.version>1.8</java.version> |
|
||||||
<spring-cloud.version>Greenwich.RELEASE</spring-cloud.version> |
|
||||||
</properties> |
|
||||||
|
|
||||||
<dependencies> |
|
||||||
<dependency> |
|
||||||
<groupId>com.gitee.sop</groupId> |
|
||||||
<artifactId>sop-service-common</artifactId> |
|
||||||
<version>1.0.0-SNAPSHOT</version> |
|
||||||
</dependency> |
|
||||||
<dependency> |
|
||||||
<groupId>com.gitee.sop</groupId> |
|
||||||
<artifactId>sop-book-api</artifactId> |
|
||||||
<version>1.0-SNAPSHOT</version> |
|
||||||
</dependency> |
|
||||||
<dependency> |
|
||||||
<groupId>com.gitee.sop</groupId> |
|
||||||
<artifactId>sop-story-api</artifactId> |
|
||||||
<version>1.0-SNAPSHOT</version> |
|
||||||
</dependency> |
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.cloud</groupId> |
|
||||||
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> |
|
||||||
</dependency> |
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.cloud</groupId> |
|
||||||
<artifactId>spring-cloud-starter-openfeign</artifactId> |
|
||||||
</dependency> |
|
||||||
|
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.boot</groupId> |
|
||||||
<artifactId>spring-boot-starter-test</artifactId> |
|
||||||
<scope>test</scope> |
|
||||||
</dependency> |
|
||||||
<dependency> |
|
||||||
<groupId>org.projectlombok</groupId> |
|
||||||
<artifactId>lombok</artifactId> |
|
||||||
<version>1.18.4</version> |
|
||||||
<scope>compile</scope> |
|
||||||
</dependency> |
|
||||||
</dependencies> |
|
||||||
|
|
||||||
<dependencyManagement> |
|
||||||
<dependencies> |
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.cloud</groupId> |
|
||||||
<artifactId>spring-cloud-dependencies</artifactId> |
|
||||||
<version>${spring-cloud.version}</version> |
|
||||||
<type>pom</type> |
|
||||||
<scope>import</scope> |
|
||||||
</dependency> |
|
||||||
</dependencies> |
|
||||||
</dependencyManagement> |
|
||||||
|
|
||||||
<build> |
|
||||||
<plugins> |
|
||||||
<plugin> |
|
||||||
<groupId>org.springframework.boot</groupId> |
|
||||||
<artifactId>spring-boot-maven-plugin</artifactId> |
|
||||||
</plugin> |
|
||||||
</plugins> |
|
||||||
</build> |
|
||||||
|
|
||||||
<repositories> |
|
||||||
<repository> |
|
||||||
<id>spring-milestones</id> |
|
||||||
<name>Spring Milestones</name> |
|
||||||
<url>https://repo.spring.io/milestone</url> |
|
||||||
</repository> |
|
||||||
</repositories> |
|
||||||
|
|
||||||
</project> |
|
@ -1,20 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb; |
|
||||||
|
|
||||||
import org.springframework.boot.SpringApplication; |
|
||||||
import org.springframework.boot.autoconfigure.SpringBootApplication; |
|
||||||
import org.springframework.cloud.client.discovery.EnableDiscoveryClient; |
|
||||||
import org.springframework.cloud.openfeign.EnableFeignClients; |
|
||||||
|
|
||||||
// 允许调用其他服务
|
|
||||||
@EnableFeignClients |
|
||||||
// 服务注册
|
|
||||||
@EnableDiscoveryClient |
|
||||||
@SpringBootApplication |
|
||||||
public class SopBookApplication { |
|
||||||
|
|
||||||
public static void main(String[] args) { |
|
||||||
SpringApplication.run(SopBookApplication.class, args); |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
||||||
|
|
@ -1,22 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.config; |
|
||||||
|
|
||||||
import com.gitee.sop.servercommon.configuration.AlipayServiceConfiguration; |
|
||||||
import org.springframework.context.annotation.Configuration; |
|
||||||
|
|
||||||
/** |
|
||||||
* 使用支付宝开放平台功能 |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@Configuration |
|
||||||
public class OpenServiceConfig extends AlipayServiceConfiguration { |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 使用淘宝开放平台功能 |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
//@Configuration
|
|
||||||
//public class OpenServiceConfig extends TaobaoServiceConfiguration {
|
|
||||||
//
|
|
||||||
//}
|
|
@ -1,14 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.consumer; |
|
||||||
|
|
||||||
import com.gitee.sop.story.api.service.StoryService; |
|
||||||
import org.springframework.cloud.openfeign.FeignClient; |
|
||||||
|
|
||||||
/** |
|
||||||
* 调用story服务 |
|
||||||
* |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
// value对应的spring.application.name
|
|
||||||
@FeignClient("story-service") |
|
||||||
public interface StoryServiceConsumer extends StoryService { |
|
||||||
} |
|
@ -1,40 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.controller; |
|
||||||
|
|
||||||
import com.gitee.sop.bookweb.consumer.StoryServiceConsumer; |
|
||||||
import com.gitee.sop.servercommon.annotation.ApiMapping; |
|
||||||
import com.gitee.sop.story.api.domain.Story; |
|
||||||
import org.springframework.beans.factory.annotation.Autowired; |
|
||||||
import org.springframework.web.bind.annotation.RestController; |
|
||||||
|
|
||||||
import java.util.Arrays; |
|
||||||
|
|
||||||
/** |
|
||||||
* 支付宝服务端,假设签名验证通过后,到达这里进行具体的业务处理。 |
|
||||||
* 这里演示如何接受业务参数。 |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@RestController |
|
||||||
public class AlipayBookController { |
|
||||||
|
|
||||||
@Autowired |
|
||||||
StoryServiceConsumer storyServiceConsumer; |
|
||||||
|
|
||||||
@ApiMapping(value = "alipay.book.get") |
|
||||||
public Story getBook() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("白雪公主(alipay.book.get)"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
// 调用story服务
|
|
||||||
@ApiMapping(value = "alipay.book.story.get") |
|
||||||
public Object getBook2() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("白雪公主(alipay.book.story.get)"); |
|
||||||
Story story2 = storyServiceConsumer.getStory(1); |
|
||||||
return Arrays.asList(story, story2); |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
@ -1,74 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.controller; |
|
||||||
|
|
||||||
import com.thoughtworks.xstream.annotations.XStreamAlias; |
|
||||||
import lombok.Data; |
|
||||||
|
|
||||||
/** |
|
||||||
* 默认的结果封装类. |
|
||||||
* <pre> |
|
||||||
* |
|
||||||
* xml返回结果: |
|
||||||
* <response> |
|
||||||
* <code>50</code> |
|
||||||
* <msg>Remote service error</msg> |
|
||||||
* <sub_code>isv.invalid-parameter</sub_code> |
|
||||||
* <sub_msg>非法参数</sub_msg> |
|
||||||
* </response> |
|
||||||
* 成功情况: |
|
||||||
* <response> |
|
||||||
* <code>0</code> |
|
||||||
* <msg>成功消息</msg> |
|
||||||
* <data> |
|
||||||
* ...返回内容 |
|
||||||
* </data> |
|
||||||
* </response> |
|
||||||
* |
|
||||||
* json返回格式: |
|
||||||
* { |
|
||||||
* "code":"50", |
|
||||||
* "msg":"Remote service error", |
|
||||||
* "sub_code":"isv.invalid-parameter", |
|
||||||
* "sub_msg":"非法参数" |
|
||||||
* } |
|
||||||
* 成功情况: |
|
||||||
* { |
|
||||||
* "code":"0", |
|
||||||
* "msg":"成功消息内容。。。", |
|
||||||
* "data":{ |
|
||||||
* ...返回内容 |
|
||||||
* } |
|
||||||
* } |
|
||||||
* </pre> |
|
||||||
* <p> |
|
||||||
* 字段说明: |
|
||||||
* code:网关异常码 <br> |
|
||||||
* msg:网关异常信息 <br> |
|
||||||
* sub_code:业务异常码 <br> |
|
||||||
* sub_msg:业务异常信息 <br> |
|
||||||
* |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@XStreamAlias("response") |
|
||||||
@Data |
|
||||||
public class ApiResult { |
|
||||||
|
|
||||||
/** |
|
||||||
* 网关异常信息 |
|
||||||
*/ |
|
||||||
private String msg; |
|
||||||
|
|
||||||
/** |
|
||||||
* 业务异常码 |
|
||||||
*/ |
|
||||||
private String sub_msg; |
|
||||||
|
|
||||||
/** |
|
||||||
* 业务异常信息 |
|
||||||
*/ |
|
||||||
private String sub_code; |
|
||||||
|
|
||||||
/** |
|
||||||
* 返回结果 |
|
||||||
*/ |
|
||||||
private Object data; |
|
||||||
} |
|
@ -1,73 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.controller; |
|
||||||
|
|
||||||
import com.gitee.book.api.domain.Book; |
|
||||||
import com.gitee.sop.bookweb.consumer.StoryServiceConsumer; |
|
||||||
import com.gitee.sop.bookweb.param.BookParam; |
|
||||||
import com.gitee.sop.story.api.domain.Story; |
|
||||||
import com.hhdd.book.api.service.BookService; |
|
||||||
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.RestController; |
|
||||||
|
|
||||||
import java.util.Arrays; |
|
||||||
|
|
||||||
/** |
|
||||||
* book服务 |
|
||||||
* |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@RestController |
|
||||||
public class BookController implements BookService { |
|
||||||
|
|
||||||
@Autowired |
|
||||||
StoryServiceConsumer storyServiceConsumer; |
|
||||||
|
|
||||||
@Override |
|
||||||
public Book getBook(int id) { |
|
||||||
Book book = new Book(); |
|
||||||
book.setId(id); |
|
||||||
book.setName("汪汪队"); |
|
||||||
return book; |
|
||||||
} |
|
||||||
|
|
||||||
@RequestMapping("listBookAndStory") |
|
||||||
public Object listBookAndStory(int id) { |
|
||||||
Book book = new Book(); |
|
||||||
book.setId(id); |
|
||||||
book.setName("汪汪队"); |
|
||||||
|
|
||||||
// 调用story服务
|
|
||||||
Story story = storyServiceConsumer.getStory(id); |
|
||||||
|
|
||||||
return Arrays.asList(book, story); |
|
||||||
} |
|
||||||
|
|
||||||
@RequestMapping("getBook2") |
|
||||||
public Object getBookError(int id) { |
|
||||||
if (id == 0) { |
|
||||||
throw new RuntimeException("id不能为空"); |
|
||||||
} |
|
||||||
Book book = new Book(); |
|
||||||
book.setId(id); |
|
||||||
book.setName("汪汪队"); |
|
||||||
return Arrays.asList(book); |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@RequestMapping("getBook3") |
|
||||||
public Object getBook3(@RequestBody BookParam param) { |
|
||||||
if (param.getId() == 0) { |
|
||||||
throw new RuntimeException("id不能为空"); |
|
||||||
} |
|
||||||
Book book = new Book(); |
|
||||||
book.setId(param.getId()); |
|
||||||
book.setName("小马宝莉"); |
|
||||||
|
|
||||||
ApiResult apiResult = new ApiResult(); |
|
||||||
apiResult.setData(book); |
|
||||||
return apiResult; |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
@ -1,11 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.param; |
|
||||||
|
|
||||||
import lombok.Data; |
|
||||||
|
|
||||||
/** |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@Data |
|
||||||
public class BookParam { |
|
||||||
private int id; |
|
||||||
} |
|
@ -1,9 +0,0 @@ |
|||||||
server: |
|
||||||
port: 3333 |
|
||||||
|
|
||||||
eureka: |
|
||||||
port: 1111 |
|
||||||
host: localhost |
|
||||||
client: |
|
||||||
serviceUrl: |
|
||||||
defaultZone: http://${eureka.host}:${eureka.port}/eureka/ |
|
@ -1,7 +0,0 @@ |
|||||||
spring: |
|
||||||
application: |
|
||||||
name: book-service |
|
||||||
|
|
||||||
cloud: |
|
||||||
zookeeper: |
|
||||||
connect-string: localhost:2181 |
|
@ -1,17 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb; |
|
||||||
|
|
||||||
import org.junit.Test; |
|
||||||
import org.junit.runner.RunWith; |
|
||||||
import org.springframework.boot.test.context.SpringBootTest; |
|
||||||
import org.springframework.test.context.junit4.SpringRunner; |
|
||||||
|
|
||||||
@RunWith(SpringRunner.class) |
|
||||||
@SpringBootTest |
|
||||||
public class SopBookApplicationTests { |
|
||||||
|
|
||||||
@Test |
|
||||||
public void contextLoads() { |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
||||||
|
|
@ -0,0 +1,5 @@ |
|||||||
|
# 服务示例 |
||||||
|
|
||||||
|
- sop-story:微服务示例,story服务,同时作为Provider提供服务 |
||||||
|
- sop-book:微服务示例,book服务,也是Consumer,调用story提供的服务 |
||||||
|
- sop-easyopen:整合easyopen示例 |
@ -1,15 +0,0 @@ |
|||||||
<?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.0</modelVersion> |
|
||||||
<groupId>com.gitee.sop-story</groupId> |
|
||||||
<artifactId>sop-story-parent</artifactId> |
|
||||||
<version>1.0.0-SNAPSHOT</version> |
|
||||||
<packaging>pom</packaging> |
|
||||||
|
|
||||||
<modules> |
|
||||||
<module>sop-story-api</module> |
|
||||||
<module>sop-story-web</module> |
|
||||||
</modules> |
|
||||||
</project> |
|
@ -1,25 +0,0 @@ |
|||||||
/target/ |
|
||||||
!.mvn/wrapper/maven-wrapper.jar |
|
||||||
|
|
||||||
### STS ### |
|
||||||
.apt_generated |
|
||||||
.classpath |
|
||||||
.factorypath |
|
||||||
.project |
|
||||||
.settings |
|
||||||
.springBeans |
|
||||||
.sts4-cache |
|
||||||
|
|
||||||
### IntelliJ IDEA ### |
|
||||||
.idea |
|
||||||
*.iws |
|
||||||
*.iml |
|
||||||
*.ipr |
|
||||||
|
|
||||||
### NetBeans ### |
|
||||||
/nbproject/private/ |
|
||||||
/nbbuild/ |
|
||||||
/dist/ |
|
||||||
/nbdist/ |
|
||||||
/.nb-gradle/ |
|
||||||
/build/ |
|
@ -1,46 +0,0 @@ |
|||||||
<?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.0</modelVersion> |
|
||||||
<parent> |
|
||||||
<groupId>org.springframework.boot</groupId> |
|
||||||
<artifactId>spring-boot-starter-parent</artifactId> |
|
||||||
<version>2.1.2.RELEASE</version> |
|
||||||
<relativePath/> <!-- lookup parent from repository --> |
|
||||||
</parent> |
|
||||||
<groupId>com.gitee.sop</groupId> |
|
||||||
<artifactId>sop-story-api</artifactId> |
|
||||||
<version>1.0-SNAPSHOT</version> |
|
||||||
|
|
||||||
<properties> |
|
||||||
<java.version>1.8</java.version> |
|
||||||
<spring-cloud.version>Greenwich.RELEASE</spring-cloud.version> |
|
||||||
</properties> |
|
||||||
|
|
||||||
<dependencies> |
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.boot</groupId> |
|
||||||
<artifactId>spring-boot-starter-web</artifactId> |
|
||||||
</dependency> |
|
||||||
|
|
||||||
<dependency> |
|
||||||
<groupId>org.projectlombok</groupId> |
|
||||||
<artifactId>lombok</artifactId> |
|
||||||
<version>1.18.4</version> |
|
||||||
<scope>provided</scope> |
|
||||||
</dependency> |
|
||||||
</dependencies> |
|
||||||
|
|
||||||
<dependencyManagement> |
|
||||||
<dependencies> |
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.cloud</groupId> |
|
||||||
<artifactId>spring-cloud-dependencies</artifactId> |
|
||||||
<version>${spring-cloud.version}</version> |
|
||||||
<type>pom</type> |
|
||||||
<scope>import</scope> |
|
||||||
</dependency> |
|
||||||
</dependencies> |
|
||||||
</dependencyManagement> |
|
||||||
</project> |
|
@ -1,18 +0,0 @@ |
|||||||
package com.gitee.sop.story.api.domain; |
|
||||||
|
|
||||||
import lombok.Data; |
|
||||||
import org.hibernate.validator.constraints.Length; |
|
||||||
|
|
||||||
import javax.validation.constraints.NotBlank; |
|
||||||
|
|
||||||
/** |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@Data |
|
||||||
public class Story { |
|
||||||
private int id; |
|
||||||
|
|
||||||
@NotBlank(message = "name不能为空") |
|
||||||
@Length(max = 20, message = "name长度不能超过20") |
|
||||||
private String name; |
|
||||||
} |
|
@ -1,15 +0,0 @@ |
|||||||
package com.gitee.sop.story.api.service; |
|
||||||
|
|
||||||
import com.gitee.sop.story.api.domain.Story; |
|
||||||
import org.springframework.web.bind.annotation.RequestMapping; |
|
||||||
import org.springframework.web.bind.annotation.RequestParam; |
|
||||||
|
|
||||||
/** |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@RequestMapping("/story") |
|
||||||
public interface StoryService { |
|
||||||
@RequestMapping("/getStory") |
|
||||||
Story getStory(@RequestParam("id")/* 必须指定@RequestParam,且value不能少 */ |
|
||||||
int id); |
|
||||||
} |
|
@ -1,25 +0,0 @@ |
|||||||
/target/ |
|
||||||
!.mvn/wrapper/maven-wrapper.jar |
|
||||||
|
|
||||||
### STS ### |
|
||||||
.apt_generated |
|
||||||
.classpath |
|
||||||
.factorypath |
|
||||||
.project |
|
||||||
.settings |
|
||||||
.springBeans |
|
||||||
.sts4-cache |
|
||||||
|
|
||||||
### IntelliJ IDEA ### |
|
||||||
.idea |
|
||||||
*.iws |
|
||||||
*.iml |
|
||||||
*.ipr |
|
||||||
|
|
||||||
### NetBeans ### |
|
||||||
/nbproject/private/ |
|
||||||
/nbbuild/ |
|
||||||
/dist/ |
|
||||||
/nbdist/ |
|
||||||
/.nb-gradle/ |
|
||||||
/build/ |
|
@ -1,84 +0,0 @@ |
|||||||
<?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.0</modelVersion> |
|
||||||
<parent> |
|
||||||
<groupId>org.springframework.boot</groupId> |
|
||||||
<artifactId>spring-boot-starter-parent</artifactId> |
|
||||||
<version>2.1.2.RELEASE</version> |
|
||||||
<relativePath/> <!-- lookup parent from repository --> |
|
||||||
</parent> |
|
||||||
<groupId>com.gitee.sop</groupId> |
|
||||||
<artifactId>sop-story-web</artifactId> |
|
||||||
<version>0.0.1-SNAPSHOT</version> |
|
||||||
<name>sop-story</name> |
|
||||||
<description>Demo project for Spring Boot</description> |
|
||||||
|
|
||||||
<properties> |
|
||||||
<java.version>1.8</java.version> |
|
||||||
<spring-cloud.version>Greenwich.RELEASE</spring-cloud.version> |
|
||||||
</properties> |
|
||||||
|
|
||||||
<dependencies> |
|
||||||
<dependency> |
|
||||||
<groupId>com.gitee.sop</groupId> |
|
||||||
<artifactId>sop-service-common</artifactId> |
|
||||||
<version>1.0.0-SNAPSHOT</version> |
|
||||||
</dependency> |
|
||||||
<dependency> |
|
||||||
<groupId>com.gitee.sop</groupId> |
|
||||||
<artifactId>sop-story-api</artifactId> |
|
||||||
<version>1.0-SNAPSHOT</version> |
|
||||||
</dependency> |
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.cloud</groupId> |
|
||||||
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> |
|
||||||
</dependency> |
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.cloud</groupId> |
|
||||||
<artifactId>spring-cloud-starter-openfeign</artifactId> |
|
||||||
</dependency> |
|
||||||
|
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.boot</groupId> |
|
||||||
<artifactId>spring-boot-starter-test</artifactId> |
|
||||||
<scope>test</scope> |
|
||||||
</dependency> |
|
||||||
<dependency> |
|
||||||
<groupId>org.projectlombok</groupId> |
|
||||||
<artifactId>lombok</artifactId> |
|
||||||
<version>1.18.4</version> |
|
||||||
<scope>provided</scope> |
|
||||||
</dependency> |
|
||||||
</dependencies> |
|
||||||
|
|
||||||
<dependencyManagement> |
|
||||||
<dependencies> |
|
||||||
<dependency> |
|
||||||
<groupId>org.springframework.cloud</groupId> |
|
||||||
<artifactId>spring-cloud-dependencies</artifactId> |
|
||||||
<version>${spring-cloud.version}</version> |
|
||||||
<type>pom</type> |
|
||||||
<scope>import</scope> |
|
||||||
</dependency> |
|
||||||
</dependencies> |
|
||||||
</dependencyManagement> |
|
||||||
|
|
||||||
<build> |
|
||||||
<plugins> |
|
||||||
<plugin> |
|
||||||
<groupId>org.springframework.boot</groupId> |
|
||||||
<artifactId>spring-boot-maven-plugin</artifactId> |
|
||||||
</plugin> |
|
||||||
</plugins> |
|
||||||
</build> |
|
||||||
|
|
||||||
<repositories> |
|
||||||
<repository> |
|
||||||
<id>spring-milestones</id> |
|
||||||
<name>Spring Milestones</name> |
|
||||||
<url>https://repo.spring.io/milestone</url> |
|
||||||
</repository> |
|
||||||
</repositories> |
|
||||||
|
|
||||||
</project> |
|
@ -1,16 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb; |
|
||||||
|
|
||||||
import org.springframework.boot.SpringApplication; |
|
||||||
import org.springframework.boot.autoconfigure.SpringBootApplication; |
|
||||||
import org.springframework.cloud.client.discovery.EnableDiscoveryClient; |
|
||||||
|
|
||||||
@EnableDiscoveryClient |
|
||||||
@SpringBootApplication |
|
||||||
public class SopStoryApplication { |
|
||||||
|
|
||||||
public static void main(String[] args) { |
|
||||||
SpringApplication.run(SopStoryApplication.class, args); |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
||||||
|
|
@ -1,31 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.config; |
|
||||||
|
|
||||||
import com.gitee.sop.servercommon.bean.ServiceConfig; |
|
||||||
import com.gitee.sop.servercommon.configuration.AlipayServiceConfiguration; |
|
||||||
import com.gitee.sop.servercommon.configuration.TaobaoServiceConfiguration; |
|
||||||
import org.springframework.context.annotation.Configuration; |
|
||||||
|
|
||||||
import javax.annotation.PostConstruct; |
|
||||||
|
|
||||||
/** |
|
||||||
* 使用支付宝开放平台功能 |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@Configuration |
|
||||||
public class OpenServiceConfig extends AlipayServiceConfiguration { |
|
||||||
|
|
||||||
|
|
||||||
static { |
|
||||||
ServiceConfig.getInstance().getI18nModules().add("i18n/isp/goods_error"); |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 使用淘宝开放平台功能 |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
//@Configuration
|
|
||||||
//public class OpenServiceConfig extends TaobaoServiceConfiguration {
|
|
||||||
//
|
|
||||||
//}
|
|
@ -1,27 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.controller; |
|
||||||
|
|
||||||
import com.gitee.sop.servercommon.annotation.ApiMapping; |
|
||||||
import com.gitee.sop.story.api.domain.Story; |
|
||||||
import org.springframework.web.bind.annotation.RestController; |
|
||||||
|
|
||||||
/** |
|
||||||
* 支付宝服务端,假设签名验证通过后,到达这里进行具体的业务处理。 |
|
||||||
* 这里演示如何接受业务参数。 |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@RestController |
|
||||||
public class AlipayController { |
|
||||||
|
|
||||||
@ApiMapping(value = "alipay.story.get") |
|
||||||
public Story getStory() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("海底小纵队(alipay.story.get)"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
@ApiMapping(value = "alipay.story.get", version = "1.2") |
|
||||||
public Story getStory11(Story story) { |
|
||||||
return story; |
|
||||||
} |
|
||||||
} |
|
@ -1,18 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.controller; |
|
||||||
|
|
||||||
import com.gitee.sop.bookweb.controller.param.GoodsParam; |
|
||||||
import com.gitee.sop.servercommon.annotation.ApiMapping; |
|
||||||
import org.springframework.web.bind.annotation.RestController; |
|
||||||
|
|
||||||
/** |
|
||||||
* 演示参数验证 |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@RestController |
|
||||||
public class JSR303DemoController { |
|
||||||
|
|
||||||
@ApiMapping(value = "goods.add") |
|
||||||
public Object addGoods(GoodsParam param) { |
|
||||||
return param; |
|
||||||
} |
|
||||||
} |
|
@ -1,46 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.controller; |
|
||||||
|
|
||||||
import com.gitee.sop.servercommon.annotation.ApiAbility; |
|
||||||
import com.gitee.sop.servercommon.annotation.ApiMapping; |
|
||||||
import com.gitee.sop.story.api.domain.Story; |
|
||||||
import com.gitee.sop.story.api.service.StoryService; |
|
||||||
import org.springframework.web.bind.annotation.RequestMapping; |
|
||||||
import org.springframework.web.bind.annotation.RestController; |
|
||||||
|
|
||||||
/** |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@ApiAbility // 放在这里,下面所有的接口都具备接口提供能力
|
|
||||||
@RestController |
|
||||||
@RequestMapping("story2") |
|
||||||
public class Story2Controller{ |
|
||||||
|
|
||||||
@RequestMapping("getStory4") |
|
||||||
public Story getStory4() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("海底小纵队(getStory4)"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
// 优先使用方法上@ApiAbility
|
|
||||||
@ApiAbility(version = "1.4") |
|
||||||
@RequestMapping("getStory4") |
|
||||||
public Story storyget() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("海底小纵队(1.4)"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
// 优先使用@ApiMapping
|
|
||||||
@ApiMapping(value = "story.get2") |
|
||||||
public Story getStory2() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("海底小纵队story.get2"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
} |
|
@ -1,85 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.controller; |
|
||||||
|
|
||||||
import com.gitee.sop.servercommon.annotation.ApiMapping; |
|
||||||
import com.gitee.sop.servercommon.annotation.ApiAbility; |
|
||||||
import com.gitee.sop.story.api.domain.Story; |
|
||||||
import com.gitee.sop.story.api.service.StoryService; |
|
||||||
import org.springframework.web.bind.annotation.RequestMapping; |
|
||||||
import org.springframework.web.bind.annotation.RestController; |
|
||||||
|
|
||||||
/** |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@RestController |
|
||||||
public class StoryController implements StoryService { |
|
||||||
|
|
||||||
// 提供给Feign的服务
|
|
||||||
@Override |
|
||||||
public Story getStory(int id) { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(id); |
|
||||||
story.setName("海底小纵队(Feign)"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
// http://localhost:2222/story/story_get
|
|
||||||
// 原生的接口,可正常调用
|
|
||||||
@RequestMapping("story_get") |
|
||||||
public Story getStory4() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("海底小纵队(原生)"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
// http://localhost:2222/story/story.get/
|
|
||||||
// 接口名,使用默认版本号
|
|
||||||
@ApiMapping(value = "story.get") |
|
||||||
public Story storyget() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("海底小纵队(默认版本号)"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
// http://localhost:2222/story/story.get/?version=1.1
|
|
||||||
// 接口名 + 版本号
|
|
||||||
@ApiMapping(value = "story.get", version = "1.1") |
|
||||||
public Story getStory2() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("海底小纵队1.0"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
// http://localhost:2222/story/story.get/?version=2.0
|
|
||||||
// 接口名 + 版本号
|
|
||||||
@ApiMapping(value = "story.get", version = "2.0") |
|
||||||
public Story getStory20(Story story) { |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
// http://localhost:2222/story/getStory2
|
|
||||||
// 遗留接口具备开放平台能力
|
|
||||||
@ApiAbility |
|
||||||
@RequestMapping("getStory2") |
|
||||||
public Story getStory2_0() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("海底小纵队(默认版本号)"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
// http://localhost:2222/story/getStory2?version=2.1
|
|
||||||
// 在原来的基础上加版本号
|
|
||||||
@ApiAbility(version = "2.1") |
|
||||||
@RequestMapping("getStory2") |
|
||||||
public Story getStory2_1() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("海底小纵队2.1"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
} |
|
@ -1,21 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.controller; |
|
||||||
|
|
||||||
import com.gitee.sop.servercommon.annotation.ApiMapping; |
|
||||||
import com.gitee.sop.story.api.domain.Story; |
|
||||||
import org.springframework.web.bind.annotation.RestController; |
|
||||||
|
|
||||||
/** |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@RestController |
|
||||||
public class StoryDemoController { |
|
||||||
|
|
||||||
@ApiMapping(value = "story.demo.get") |
|
||||||
public Story getStory() { |
|
||||||
Story story = new Story(); |
|
||||||
story.setId(1); |
|
||||||
story.setName("白雪公主"); |
|
||||||
return story; |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
@ -1,33 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.controller; |
|
||||||
|
|
||||||
import com.gitee.sop.bookweb.controller.param.GoodsUpdateParam; |
|
||||||
import com.gitee.sop.bookweb.message.GoodsErrorEnum; |
|
||||||
import com.gitee.sop.servercommon.annotation.ApiMapping; |
|
||||||
import com.gitee.sop.servercommon.exception.ServiceException; |
|
||||||
import org.apache.commons.lang3.StringUtils; |
|
||||||
import org.springframework.web.bind.annotation.RestController; |
|
||||||
|
|
||||||
/** |
|
||||||
* 演示如何抛出异常 |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
@RestController |
|
||||||
public class ThrowExceptionDemoController { |
|
||||||
|
|
||||||
@ApiMapping(value = "goods.update") |
|
||||||
public Object updateGoods(GoodsUpdateParam param) { |
|
||||||
// 方式1
|
|
||||||
if ("iphone6".equals(param.getGoods_name())) { |
|
||||||
throw new ServiceException("不能更新iphone6"); |
|
||||||
} |
|
||||||
// 方式2,国际化
|
|
||||||
if (StringUtils.isEmpty(param.getGoods_name())) { |
|
||||||
throw GoodsErrorEnum.NO_GOODS_NAME.getErrorMeta().getException(); |
|
||||||
} |
|
||||||
// 方式3,国际化传参
|
|
||||||
if (param.getGoods_name().length() <= 3) { |
|
||||||
throw GoodsErrorEnum.LESS_GOODS_NAME_LEN.getErrorMeta().getException(3); |
|
||||||
} |
|
||||||
return param; |
|
||||||
} |
|
||||||
} |
|
@ -1,19 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.controller.param; |
|
||||||
|
|
||||||
import lombok.Data; |
|
||||||
import org.hibernate.validator.constraints.Length; |
|
||||||
|
|
||||||
import javax.validation.constraints.NotEmpty; |
|
||||||
|
|
||||||
@Data |
|
||||||
public class GoodsParam { |
|
||||||
// @NotEmpty(message = "商品名称不能为空")
|
|
||||||
private String goods_name; |
|
||||||
|
|
||||||
@NotEmpty(message = "{goods.remark.notNull}") |
|
||||||
private String goods_remark; |
|
||||||
|
|
||||||
// 传参的格式:{xxx}=value1,value2...
|
|
||||||
@Length(min = 3, max = 20, message = "{goods.comment.length}=3,20") |
|
||||||
private String goods_comment; |
|
||||||
} |
|
@ -1,9 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.controller.param; |
|
||||||
|
|
||||||
import lombok.Data; |
|
||||||
|
|
||||||
@Data |
|
||||||
public class GoodsUpdateParam { |
|
||||||
private String goods_name; |
|
||||||
|
|
||||||
} |
|
@ -1,20 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.message; |
|
||||||
|
|
||||||
import com.gitee.sop.servercommon.message.ServiceErrorMeta; |
|
||||||
|
|
||||||
public enum GoodsErrorEnum { |
|
||||||
/** 参数错误 */ |
|
||||||
NO_GOODS_NAME("100"), |
|
||||||
/** 参数长度太短 */ |
|
||||||
LESS_GOODS_NAME_LEN("101"), |
|
||||||
; |
|
||||||
private ServiceErrorMeta errorMeta; |
|
||||||
|
|
||||||
GoodsErrorEnum(String subCode) { |
|
||||||
this.errorMeta = new ServiceErrorMeta("isp.goods_error_", subCode); |
|
||||||
} |
|
||||||
|
|
||||||
public ServiceErrorMeta getErrorMeta() { |
|
||||||
return errorMeta; |
|
||||||
} |
|
||||||
} |
|
@ -1,21 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb.message; |
|
||||||
|
|
||||||
import com.gitee.sop.servercommon.message.ServiceErrorMeta; |
|
||||||
|
|
||||||
/** |
|
||||||
* @author tanghc |
|
||||||
*/ |
|
||||||
public enum StoryErrorEnum { |
|
||||||
/** 参数错误 */ |
|
||||||
param_error("isv.invalid-parameter"), |
|
||||||
; |
|
||||||
private ServiceErrorMeta errorMeta; |
|
||||||
|
|
||||||
StoryErrorEnum(String subCode) { |
|
||||||
this.errorMeta = new ServiceErrorMeta("isp.error_", subCode); |
|
||||||
} |
|
||||||
|
|
||||||
public ServiceErrorMeta getErrorMeta() { |
|
||||||
return errorMeta; |
|
||||||
} |
|
||||||
} |
|
@ -1,9 +0,0 @@ |
|||||||
server: |
|
||||||
port: 2222 |
|
||||||
|
|
||||||
eureka: |
|
||||||
port: 1111 |
|
||||||
host: localhost |
|
||||||
client: |
|
||||||
serviceUrl: |
|
||||||
defaultZone: http://${eureka.host}:${eureka.port}/eureka/ |
|
@ -1,8 +0,0 @@ |
|||||||
spring: |
|
||||||
application: |
|
||||||
name: story-service |
|
||||||
description: story服务 |
|
||||||
|
|
||||||
cloud: |
|
||||||
zookeeper: |
|
||||||
connect-string: localhost:2181 |
|
@ -1,10 +0,0 @@ |
|||||||
# 错误配置 |
|
||||||
|
|
||||||
# 系统配置 |
|
||||||
isp.error_isv.common-error=The system is busy. |
|
||||||
isp.error_isv.invalid-parameter=Invalid parameter, {0} |
|
||||||
|
|
||||||
# ==== 参数配置 ==== |
|
||||||
|
|
||||||
goods.remark.notNull=The goods_remark can not be null |
|
||||||
goods.comment.length=The goods_comment length must >= {0} and <= {1} |
|
@ -1,14 +0,0 @@ |
|||||||
# 错误配置 |
|
||||||
|
|
||||||
# 系统繁忙 |
|
||||||
isp.error_isv.common-error=\u7cfb\u7edf\u7e41\u5fd9 |
|
||||||
# 参数无效 |
|
||||||
isp.error_isv.invalid-parameter=\u53c2\u6570\u65e0\u6548, {0} |
|
||||||
|
|
||||||
# ==== 参数配置 ==== |
|
||||||
|
|
||||||
# 商品备注不能为空 |
|
||||||
goods.remark.notNull=\u5546\u54c1\u5907\u6ce8\u4e0d\u80fd\u4e3a\u7a7a |
|
||||||
# 商品评论长度必须在{0}和{1}之间 |
|
||||||
goods.comment.length=\u5546\u54c1\u8bc4\u8bba\u957f\u5ea6\u5fc5\u987b\u5728{0}\u548c{1}\u4e4b\u95f4 |
|
||||||
|
|
@ -1,2 +0,0 @@ |
|||||||
isp.goods_error_100=the goods_name can NOT be null |
|
||||||
isp.goods_error_101=the goods_name must bigger than {0} |
|
@ -1,5 +0,0 @@ |
|||||||
# 商品名字不能为空 |
|
||||||
isp.goods_error_100=\u5546\u54C1\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A |
|
||||||
|
|
||||||
# 商品名称太短,不能小于{0}个字 |
|
||||||
isp.goods_error_101=\u5546\u54C1\u540D\u79F0\u592A\u77ED\uFF0C\u4E0D\u80FD\u5C0F\u4E8E{0}\u4E2A\u5B57 |
|
@ -1,17 +0,0 @@ |
|||||||
package com.gitee.sop.bookweb; |
|
||||||
|
|
||||||
import org.junit.Test; |
|
||||||
import org.junit.runner.RunWith; |
|
||||||
import org.springframework.boot.test.context.SpringBootTest; |
|
||||||
import org.springframework.test.context.junit4.SpringRunner; |
|
||||||
|
|
||||||
@RunWith(SpringRunner.class) |
|
||||||
@SpringBootTest |
|
||||||
public class SopStoryApplicationTests { |
|
||||||
|
|
||||||
@Test |
|
||||||
public void contextLoads() { |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
||||||
|
|
Loading…
Reference in new issue