Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Y
yudao-cloud
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
hblj
yudao-cloud
Commits
d9448c18
提交
d9448c18
authored
3月 11, 2019
作者:
YunaiV
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
初始化 pay 模块
上级
1b8701b0
显示空白字符变更
内嵌
并排
正在显示
21 个修改的文件
包含
544 行增加
和
1 行删除
+544
-1
pom.xml
pay/pay-application/pom.xml
+152
-0
PayApplication.java
.../java/cn/iocoder/mall/pay/application/PayApplication.java
+14
-0
MVCConfiguration.java
...iocoder/mall/pay/application/config/MVCConfiguration.java
+48
-0
SwaggerConfiguration.java
...der/mall/pay/application/config/SwaggerConfiguration.java
+37
-0
PayController.java
...ocoder/mall/pay/application/controller/PayController.java
+15
-0
application.yaml
pay/pay-application/src/main/resources/application.yaml
+10
-0
pom.xml
pay/pay-service-api/pom.xml
+16
-0
PayService.java
...api/src/main/java/cn/iocoder/mall/pay/api/PayService.java
+4
-0
RefundService.java
.../src/main/java/cn/iocoder/mall/pay/api/RefundService.java
+4
-0
PayErrorCodeEnum.java
...va/cn/iocoder/mall/pay/api/constant/PayErrorCodeEnum.java
+30
-0
pom.xml
pay/pay-service-impl/pom.xml
+89
-0
DatabaseConfiguration.java
...ava/cn/iocoder/mall/pay/config/DatabaseConfiguration.java
+15
-0
ServiceExceptionConfiguration.java
...ocoder/mall/pay/config/ServiceExceptionConfiguration.java
+27
-0
package-info.java
...-impl/src/main/java/cn/iocoder/mall/pay/package-info.java
+2
-0
PayServiceImpl.java
...main/java/cn/iocoder/mall/pay/service/PayServiceImpl.java
+9
-0
application.properties
...ice-impl/src/main/resources/config/application.properties
+2
-0
application.yaml
...y-service-impl/src/main/resources/config/application.yaml
+26
-0
mybatis-config.xml
pay/pay-service-impl/src/main/resources/mybatis-config.xml
+20
-0
pom.xml
pay/pom.xml
+22
-0
pom.xml
pom.xml
+1
-0
ProductApplication.java
.../iocoder/mall/product/application/ProductApplication.java
+1
-1
没有找到文件。
pay/pay-application/pom.xml
0 → 100644
浏览文件 @
d9448c18
<?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"
>
<parent>
<artifactId>
pay
</artifactId>
<groupId>
cn.iocoder.mall
</groupId>
<version>
1.0-SNAPSHOT
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<artifactId>
pay-application
</artifactId>
<properties>
<org.mapstruct.version>
1.3.0.Final
</org.mapstruct.version>
</properties>
<dependencies>
<dependency>
<groupId>
cn.iocoder.mall
</groupId>
<artifactId>
common-framework
</artifactId>
<version>
1.0-SNAPSHOT
</version>
</dependency>
<dependency>
<groupId>
cn.iocoder.mall
</groupId>
<artifactId>
pay-service-impl
</artifactId>
<version>
1.0-SNAPSHOT
</version>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-web
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-test
</artifactId>
<scope>
test
</scope>
</dependency>
<dependency>
<groupId>
com.alibaba
</groupId>
<artifactId>
dubbo
</artifactId>
<version>
2.6.5
</version>
</dependency>
<dependency>
<groupId>
com.alibaba.boot
</groupId>
<artifactId>
dubbo-spring-boot-starter
</artifactId>
<version>
0.2.1.RELEASE
</version>
</dependency>
<dependency>
<groupId>
org.apache.curator
</groupId>
<artifactId>
curator-framework
</artifactId>
<version>
2.12.0
</version>
</dependency>
<dependency>
<groupId>
org.mapstruct
</groupId>
<artifactId>
mapstruct
</artifactId>
<!-- use mapstruct-jdk8 for Java 8 or higher -->
<version>
${org.mapstruct.version}
</version>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger2
</artifactId>
<version>
2.9.2
</version>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger-ui
</artifactId>
<version>
2.9.2
</version>
</dependency>
<dependency>
<groupId>
org.mapstruct
</groupId>
<artifactId>
mapstruct
</artifactId>
<!-- use mapstruct-jdk8 for Java 8 or higher -->
<version>
${org.mapstruct.version}
</version>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-devtools
</artifactId>
<optional>
true
</optional>
</dependency>
<dependency>
<groupId>
cn.iocoder.mall
</groupId>
<artifactId>
admin-sdk
</artifactId>
<version>
1.0-SNAPSHOT
</version>
</dependency>
<!--<dependency>-->
<!--<groupId>de.codecentric</groupId>-->
<!--<artifactId>spring-boot-admin-starter-server</artifactId>-->
<!--<version>2.1.3</version>-->
<!--</dependency>-->
<!--<dependency>-->
<!--<groupId>de.codecentric</groupId>-->
<!--<artifactId>spring-boot-admin-server-ui</artifactId>-->
<!--<version>2.1.3</version>-->
<!--</dependency>-->
<dependency>
<groupId>
de.codecentric
</groupId>
<artifactId>
spring-boot-admin-starter-client
</artifactId>
<version>
2.1.3
</version>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-actuator
</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 提供给 mapstruct 使用 -->
<plugin>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-compiler-plugin
</artifactId>
<version>
3.5.1
</version>
<configuration>
<source>
1.8
</source>
<!-- or higher, depending on your project -->
<target>
1.8
</target>
<!-- or higher, depending on your project -->
<annotationProcessorPaths>
<path>
<groupId>
org.mapstruct
</groupId>
<artifactId>
mapstruct-processor
</artifactId>
<version>
${org.mapstruct.version}
</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
<!-- 打包 -->
<plugin>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-maven-plugin
</artifactId>
<configuration>
<fork>
true
</fork>
</configuration>
</plugin>
</plugins>
</build>
</project>
\ No newline at end of file
pay/pay-application/src/main/java/cn/iocoder/mall/pay/application/PayApplication.java
0 → 100644
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
pay
.
application
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
@SpringBootApplication
(
scanBasePackages
=
{
"cn.iocoder.mall.pay"
})
public
class
PayApplication
{
public
static
void
main
(
String
[]
args
)
{
SpringApplication
.
run
(
PayApplication
.
class
,
args
);
}
}
\ No newline at end of file
pay/pay-application/src/main/java/cn/iocoder/mall/pay/application/config/MVCConfiguration.java
0 → 100644
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
pay
.
application
.
config
;
import
cn.iocoder.common.framework.config.GlobalExceptionHandler
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Import
;
import
org.springframework.web.servlet.config.annotation.CorsRegistry
;
import
org.springframework.web.servlet.config.annotation.EnableWebMvc
;
import
org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry
;
import
org.springframework.web.servlet.config.annotation.WebMvcConfigurer
;
@EnableWebMvc
@Configuration
@Import
(
value
=
{
GlobalExceptionHandler
.
class
,
// 统一全局返回
// AdminSecurityInterceptor.class
})
public
class
MVCConfiguration
implements
WebMvcConfigurer
{
// @Autowired
// private UserSecurityInterceptor securityInterceptor;
// @Autowired
// private AdminSecurityInterceptor adminSecurityInterceptor;
////
// @Override
// public void addInterceptors(InterceptorRegistry registry) {
//// registry.addInterceptor(securityInterceptor).addPathPatterns("/user/**", "/admin/**"); // 只拦截我们定义的接口
// registry.addInterceptor(adminSecurityInterceptor).addPathPatterns("/admins/**")
// .excludePathPatterns("/admins/passport/login"); // 排除登陆接口
// }
@Override
public
void
addResourceHandlers
(
ResourceHandlerRegistry
registry
)
{
// 解决 swagger-ui.html 的访问,参考自 https://stackoverflow.com/questions/43545540/swagger-ui-no-mapping-found-for-http-request 解决
registry
.
addResourceHandler
(
"swagger-ui.html**"
).
addResourceLocations
(
"classpath:/META-INF/resources/swagger-ui.html"
);
registry
.
addResourceHandler
(
"webjars/**"
).
addResourceLocations
(
"classpath:/META-INF/resources/webjars/"
);
}
// TODO 芋艿,允许跨域
@Override
public
void
addCorsMappings
(
CorsRegistry
registry
)
{
registry
.
addMapping
(
"/**"
)
.
allowedHeaders
(
"*"
)
.
allowedMethods
(
"*"
)
.
allowedOrigins
(
"*"
);
}
}
\ No newline at end of file
pay/pay-application/src/main/java/cn/iocoder/mall/pay/application/config/SwaggerConfiguration.java
0 → 100644
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
pay
.
application
.
config
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
springfox.documentation.builders.ApiInfoBuilder
;
import
springfox.documentation.builders.PathSelectors
;
import
springfox.documentation.builders.RequestHandlerSelectors
;
import
springfox.documentation.service.ApiInfo
;
import
springfox.documentation.spi.DocumentationType
;
import
springfox.documentation.spring.web.plugins.Docket
;
import
springfox.documentation.swagger2.annotations.EnableSwagger2
;
@Configuration
@EnableSwagger2
// TODO 生产环境时,禁用掉。
public
class
SwaggerConfiguration
{
@Bean
public
Docket
createRestApi
()
{
return
new
Docket
(
DocumentationType
.
SWAGGER_2
)
.
apiInfo
(
apiInfo
())
.
select
()
.
apis
(
RequestHandlerSelectors
.
basePackage
(
"cn.iocoder.mall.pay.application.controller"
))
.
paths
(
PathSelectors
.
any
())
.
build
();
}
private
ApiInfo
apiInfo
()
{
return
new
ApiInfoBuilder
()
.
title
(
"支付子系统"
)
.
description
(
"支付子系统"
)
.
termsOfServiceUrl
(
"http://www.iocoder.cn"
)
.
version
(
"1.0.0"
)
.
build
();
}
}
\ No newline at end of file
pay/pay-application/src/main/java/cn/iocoder/mall/pay/application/controller/PayController.java
0 → 100644
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
pay
.
application
.
controller
;
import
cn.iocoder.mall.pay.api.PayService
;
import
com.alibaba.dubbo.config.annotation.Reference
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
@RestController
@RequestMapping
(
"/pay"
)
public
class
PayController
{
@Reference
(
validation
=
"true"
)
private
PayService
payService
;
}
pay/pay-application/src/main/resources/application.yaml
0 → 100644
浏览文件 @
d9448c18
spring
:
application
:
name
:
pay-application
# server
server
:
port
:
18084
servlet
:
context-path
:
/pay-api/
\ No newline at end of file
pay/pay-service-api/pom.xml
0 → 100644
浏览文件 @
d9448c18
<?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"
>
<parent>
<artifactId>
pay
</artifactId>
<groupId>
cn.iocoder.mall
</groupId>
<version>
1.0-SNAPSHOT
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<artifactId>
pay-service-api
</artifactId>
</project>
\ No newline at end of file
pay/pay-service-api/src/main/java/cn/iocoder/mall/pay/api/PayService.java
0 → 100644
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
pay
.
api
;
public
interface
PayService
{
}
pay/pay-service-api/src/main/java/cn/iocoder/mall/pay/api/RefundService.java
0 → 100644
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
pay
.
api
;
public
interface
RefundService
{
}
pay/pay-service-api/src/main/java/cn/iocoder/mall/pay/api/constant/PayErrorCodeEnum.java
0 → 100644
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
pay
.
api
.
constant
;
/**
* 错误码枚举类
*
* 管理员系统,使用 1-004-000-000 段
*/
public
enum
PayErrorCodeEnum
{
// ========== PAY 模块 ==========
;
private
final
int
code
;
private
final
String
message
;
PayErrorCodeEnum
(
int
code
,
String
message
)
{
this
.
code
=
code
;
this
.
message
=
message
;
}
public
int
getCode
()
{
return
code
;
}
public
String
getMessage
()
{
return
message
;
}
}
\ No newline at end of file
pay/pay-service-impl/pom.xml
0 → 100644
浏览文件 @
d9448c18
<?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"
>
<parent>
<artifactId>
pay
</artifactId>
<groupId>
cn.iocoder.mall
</groupId>
<version>
1.0-SNAPSHOT
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<artifactId>
pay-service-impl
</artifactId>
<properties>
<org.mapstruct.version>
1.3.0.Final
</org.mapstruct.version>
</properties>
<dependencies>
<dependency>
<groupId>
com.alibaba
</groupId>
<artifactId>
dubbo
</artifactId>
<scope>
compile
</scope>
</dependency>
<dependency>
<groupId>
cn.iocoder.mall
</groupId>
<artifactId>
admin-service-api
</artifactId>
<version>
1.0-SNAPSHOT
</version>
<scope>
compile
</scope>
</dependency>
<dependency>
<groupId>
cn.iocoder.mall
</groupId>
<artifactId>
pay-service-api
</artifactId>
<version>
1.0-SNAPSHOT
</version>
<scope>
compile
</scope>
</dependency>
<dependency>
<groupId>
mysql
</groupId>
<artifactId>
mysql-connector-java
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-jdbc
</artifactId>
</dependency>
<dependency>
<groupId>
org.mybatis.spring.boot
</groupId>
<artifactId>
mybatis-spring-boot-starter
</artifactId>
<version>
2.0.0
</version>
</dependency>
<dependency>
<groupId>
org.mapstruct
</groupId>
<artifactId>
mapstruct
</artifactId>
<version>
${org.mapstruct.version}
</version>
</dependency>
<dependency>
<groupId>
com.google.guava
</groupId>
<artifactId>
guava
</artifactId>
<version>
27.0.1-jre
</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 提供给 mapstruct 使用 -->
<plugin>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-compiler-plugin
</artifactId>
<version>
3.5.1
</version>
<configuration>
<source>
1.8
</source>
<!-- or higher, depending on your project -->
<target>
1.8
</target>
<!-- or higher, depending on your project -->
<annotationProcessorPaths>
<path>
<groupId>
org.mapstruct
</groupId>
<artifactId>
mapstruct-processor
</artifactId>
<version>
${org.mapstruct.version}
</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
</build>
</project>
\ No newline at end of file
pay/pay-service-impl/src/main/java/cn/iocoder/mall/pay/config/DatabaseConfiguration.java
0 → 100644
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
pay
.
config
;
import
org.mybatis.spring.annotation.MapperScan
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.transaction.annotation.EnableTransactionManagement
;
@Configuration
@MapperScan
(
"cn.iocoder.mall.pay.dao"
)
// 扫描对应的 Mapper 接口
@EnableTransactionManagement
(
proxyTargetClass
=
true
)
// 启动事务管理。为什么使用 proxyTargetClass 参数,参见 https://blog.csdn.net/huang_550/article/details/76492600
public
class
DatabaseConfiguration
{
// 数据源,使用 HikariCP
}
\ No newline at end of file
pay/pay-service-impl/src/main/java/cn/iocoder/mall/pay/config/ServiceExceptionConfiguration.java
0 → 100644
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
pay
.
config
;
import
cn.iocoder.common.framework.util.ServiceExceptionUtil
;
import
cn.iocoder.mall.admin.api.constant.AdminErrorCodeEnum
;
import
org.springframework.boot.context.event.ApplicationReadyEvent
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.event.EventListener
;
@Configuration
public
class
ServiceExceptionConfiguration
{
@EventListener
(
ApplicationReadyEvent
.
class
)
// 可参考 https://www.cnblogs.com/ssslinppp/p/7607509.html
public
void
initMessages
()
{
// 从 service_exception_message.properties 加载错误码的方案
// Properties properties;
// try {
// properties = PropertiesLoaderUtils.loadAllProperties("classpath:service_exception_message.properties");
// } catch (IOException e) {
// throw new RuntimeException(e);
// }
for
(
AdminErrorCodeEnum
item
:
AdminErrorCodeEnum
.
values
())
{
ServiceExceptionUtil
.
put
(
item
.
getCode
(),
item
.
getMessage
());
}
}
}
\ No newline at end of file
pay/pay-service-impl/src/main/java/cn/iocoder/mall/pay/package-info.java
0 → 100644
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
pay
;
\ No newline at end of file
pay/pay-service-impl/src/main/java/cn/iocoder/mall/pay/service/PayServiceImpl.java
0 → 100644
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
pay
.
service
;
import
cn.iocoder.mall.pay.api.PayService
;
import
org.springframework.stereotype.Service
;
@Service
@com
.
alibaba
.
dubbo
.
config
.
annotation
.
Service
(
validation
=
"true"
)
public
class
PayServiceImpl
implements
PayService
{
}
pay/pay-service-impl/src/main/resources/config/application.properties
0 → 100644
浏览文件 @
d9448c18
#####################
业务模块
#####################
\ No newline at end of file
pay/pay-service-impl/src/main/resources/config/application.yaml
0 → 100644
浏览文件 @
d9448c18
spring
:
# datasource
datasource
:
url
:
jdbc:mysql://180.167.213.26:13306/mall_pay?useSSL=false&useUnicode=true&characterEncoding=UTF-8
driver-class-name
:
com.mysql.jdbc.Driver
username
:
root
password
:
${MALL_MYSQL_PASSWORD}
# mybatis
mybatis
:
config-location
:
classpath:mybatis-config.xml
mapper-locations
:
classpath:mapper/*.xml
type-aliases-package
:
cn.iocoder.mall.pay.dataobject
# dubbo
dubbo
:
application
:
name
:
pay-service
registry
:
address
:
zookeeper://127.0.0.1:2181
protocol
:
port
:
-1
name
:
dubbo
scan
:
base-packages
:
cn.iocoder.mall.pay.service
\ No newline at end of file
pay/pay-service-impl/src/main/resources/mybatis-config.xml
0 → 100644
浏览文件 @
d9448c18
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<settings>
<!-- 使用驼峰命名法转换字段。 -->
<setting
name=
"mapUnderscoreToCamelCase"
value=
"true"
/>
</settings>
<typeAliases>
<typeAlias
alias=
"Integer"
type=
"java.lang.Integer"
/>
<typeAlias
alias=
"Long"
type=
"java.lang.Long"
/>
<typeAlias
alias=
"HashMap"
type=
"java.util.HashMap"
/>
<typeAlias
alias=
"LinkedHashMap"
type=
"java.util.LinkedHashMap"
/>
<typeAlias
alias=
"ArrayList"
type=
"java.util.ArrayList"
/>
<typeAlias
alias=
"LinkedList"
type=
"java.util.LinkedList"
/>
</typeAliases>
</configuration>
\ No newline at end of file
pay/pom.xml
0 → 100644
浏览文件 @
d9448c18
<?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"
>
<parent>
<artifactId>
mall-parent
</artifactId>
<groupId>
cn.iocoder.mall
</groupId>
<version>
1.0-SNAPSHOT
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<artifactId>
pay
</artifactId>
<packaging>
pom
</packaging>
<modules>
<module>
pay-application
</module>
<module>
pay-service-api
</module>
<module>
pay-service-impl
</module>
</modules>
</project>
\ No newline at end of file
pom.xml
浏览文件 @
d9448c18
...
@@ -20,6 +20,7 @@
...
@@ -20,6 +20,7 @@
<module>
common
</module>
<module>
common
</module>
<module>
admin
</module>
<module>
admin
</module>
<module>
ops
</module>
<module>
ops
</module>
<module>
pay
</module>
</modules>
</modules>
<packaging>
pom
</packaging>
<packaging>
pom
</packaging>
...
...
product/product-application/src/main/java/cn/iocoder/mall/product/ProductApplication.java
→
product/product-application/src/main/java/cn/iocoder/mall/product/
application/
ProductApplication.java
浏览文件 @
d9448c18
package
cn
.
iocoder
.
mall
.
product
;
package
cn
.
iocoder
.
mall
.
product
.
application
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论