闪聚支付 第1章 讲义-开发环境搭建

服务端搭建

开发工具配置

服务端工程使用IntellijIDEA开发,IDEA开发环境配置如下:

1、首先配置JDK

在这里插入图片描述
在这里插入图片描述

2、配置maven环境

安装maven3.3.9,过程略。

关于maven仓库有以下配置方法:

(1)已经有私服地址可在setting.xml中配置私服地址
<!--在setting.xml中<servers>段增加-->
<server>
	<id>maven‐releases</id>
	<username>私服账号</username>
	<password>私服密码</password>
</server>
<server>
	<id>maven‐snapshots</id>
	<username>私服账号</username>
	<password>私服密码</password>
</server>

<!--在<mirrors>添加-->
<mirror>
	<id>nexus</id>
	<mirrorOf>*</mirrorOf>
	<url>私服地址</url>
</mirror>
(2)从中央仓库下载

不作任何配置,maven自行从中央仓库下载,也可使用阿里官网Maven库:

<mirror>
	<id>alimaven</id>
	<name>aliyun maven</name>
	<url>http://maven.aliyun.com/nexus/content/groups/public</url>
	<mirrorOf>central</mirrorOf>
</mirror>
(3)使用本地仓库

本教程使用本地仓库配置。在maven的setting.xml文件中配置本地仓库的路径,路径位置不要使用中文,配置例子如下:
在这里插入图片描述
在IDEA中选择setting.xml文件,自动找到本地仓库目录 ,如下图:
在这里插入图片描述

3、配置编码

在这里插入图片描述

4、配置快捷键

IDEA可以集成Eclipse的快捷键
在这里插入图片描述
如需自定义则点击“copy”复制一份进行修改

5、自动导入包 快捷方式

idea可以自动优化导入包,但是有多个同名的类调用不同的包,必须自己手动 Alt+Enter 设置

设置idea导入包
在这里插入图片描述

6、代码模板

自定义自己的代码模板
在这里插入图片描述

7、提示忽略大小写

默认IDEA的提示是区分大小写的,这里设置为提示忽略大小写
在这里插入图片描述

8、Lombok

Lombok是一个实用的java工具,使用它可以消除java代码的臃肿,Lombok提供一系列的注解,使用这些注解可以不用定义getter/setter、equals、构造方法等,它会在编译时在字节码文件自动生成这些通用的方法,简化开发人员的工作。

项目官方地址:https://www.projectlombok.org/

比如上节创建的UserTest模型,@Data 注解可以自动生成getter/setter方法, @ToString 生成tostring方法。

使用方法:

① 在项目中添加Lombok的依赖

作用:项目在编译时根据Lombok注解生成通用方法,依赖如下:

<dependency>
	<groupId>org.projectlombok</groupId>
	<artifactId>lombok</artifactId>
</dependency>
② 在IDEA开发工具中添加Lombok插件

作用:使用IDEA开发时根据Lombok注解生成通用方法,不报错。
在这里插入图片描述
在这里插入图片描述

9、配置虚拟机内存

修改idea64.exe.vmoptions(64位电脑选择此文件)

一个例子,电脑内存8G,设置如下:

-Xms1024m -Xmx4096m -XX:MaxPermSize=1024m -XX:ReservedCodeCacheSize=1024m
Nacos服务发现与配置中心

微服务开发需要构建服务发现中心、配置中心,本项目采用Nacos来实现。

详见 Nacos服务发现与配置中心管理

Mybatis Plus

本项目数据库使用 mysql-community-5.7,请自行安装MySQL数据库。

本项目持久层采用Mybatis Plus作为技术构架,Mybatis Plus是在Mybatis基础上作了很好的封装,方便系统开发。

学习Mybatis Plus详见 Mybatis-Plus介绍

导入基础工程

将基础工程导入IDEA,如下是基础工程结构图:
在这里插入图片描述

工程名 说明
shanjupay 闪聚支付父工程
shanjupay-common 项目通用工程包括:常用工具类和分页信息封装VO等
导入项目初始SQL

使用客户端连接MySQL,执行 shanjupay-init.sql ,执行脚本自动创建数据库并导入初始数据。

数据库清单如下:

数据库名称 数据内容
shanjupay_merchant_service 用户中心数据
shanjupay_transaction 交易服务数据库

备注:数据库、表中的字段以及表关系会在后续开发过程中随用随讲。

搭建项目服务

本节搭建如下项目工程:

服务名 职责
商户平台应用(shanjupay-merchant-application) 为前端提供商户管理功能
商户服务API(shanjupay-merchant-api) 定义商户服务提供的接口
商户服务(shanjupay-merchant-service) 实现商户服务的所有接口

三个工程在架构中的位置如下:
在这里插入图片描述

搭建商户平台应用工程

在基础工程的基础上创建商户平台应用工程。

1、选中shanjupay工程,右键选择新建Module
在这里插入图片描述
2、选择Maven和JDK1.8
在这里插入图片描述
3、填写ArtifactId: shanjupay-merchant-application,设置Modoule Name:shanjupay-merchant-application
在这里插入图片描述
在这里插入图片描述
4、点击Fininsh完成创建

5、添加依赖,完善pom.xml

<?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>shanjupay</artifactId>
        <groupId>com.shanjupay</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.shanjupay</groupId>
    <artifactId>shanjupay-merchant-application</artifactId>

    <dependencies>
        <!-- Nacos配置中心 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>

        <!-- Nacos注册中心 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

        <!-- Dubbo启动器 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-dubbo</artifactId>
        </dependency>

        <!-- Web启动器  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!-- Spring Boot启动器 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <!-- log4j4启动器 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-log4j2</artifactId>
        </dependency>

        <!-- 注释处理器 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>

        <!-- 健康检查,运维相关 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

        <!-- 测试启动器 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!-- Swagger依赖 -->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
        </dependency>

    </dependencies>
</project>

6、配置bootstrap.yml

server:
  port: 57010 #启动端口 命令行注入
  max-http-header-size: 100KB

nacos:
  server:
    addr: 127.0.0.1:8848

spring:
  application:
    name: merchant-application
  main:
    allow-bean-definition-overriding: true # Spring Boot 2.1 需要设定
  cloud:
    nacos:
      discovery:
        server-addr: ${
   nacos.server.addr}
        namespace: 2aac6f5e-f974-464c-8261-ce06c0566687
        cluster-name: DEFAULT
      config:
        server-addr: ${
   nacos.server.addr} # 配置中心地址
        file-extension: yaml
        namespace: 2aac6f5e-f974-464c-8261-ce06c0566687 # 命令行注入
        group: SHANJUPAY_GROUP # 聚合支付业务组
        ext-config:
        -
          refresh: true
          data-id
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

9.冄2.7.號

你的鼓励将是我创作的巨大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值