zoukankan      html  css  js  c++  java
  • SpringCloud学习----阳哥(二)

    理论完备之后,开始正式的编码环节。

    一:微服务cloud整体聚合父工程Project

    1.新建父工程步骤(搭建一个workSpace)------p5

    (1)New Project

    (2)聚合总父工程名字

    (3)Maven选版本(这里是3.5.2) maven的下载地址:http://archive.apache.org/dist/maven/maven-3/3.5.2/binaries/

    (4)工程名字(cloud2020)

    (5)字符编码

     (6)注解生效激活(default那里也要选择Enable)

    (7)Java编译版本选8

     (8)File Type过滤

    过滤掉展示不用的多余文件,这步不是必须的。

    2.父工程POM文件的编写-----p6

    在pom文件里添加:工程需要的jar包,以及依赖,数据库等

    3.maven工程的落地细节-----p7

    (1)maven中的dependcyManagement 和depenceces二者的区别

    (2)maven单元测试

    备注:dependencyManagement和dependencies的区别

    (1.)最顶层的父pom具备这个元素dependencyManagement,里面写明的版本号,可以直接被子pom继承使用,子pom就不用再指明版本号。

    (2.)dependcyManagement里面只是申明了依赖,但是并没有真实引入。子pom中的a标签才是真实引入的步骤。

    (3.)maven中需要跳过单元测试。(虽然我不知道为什么?)

    二:正式开发环节----p8

    构建支付模块Payment

    1.微服务模块开发步骤:

    (1)建module

    选中项目根目录,New- Module

     

     

     (2)改pom

    查看主pom下面多了一个modules,

    编写子模块的pom文件,添加必要的依赖。

    <dependencies>
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    <dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    </dependency>
    <dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid-spring-boot-starter</artifactId>
    <version>1.1.10</version>
    </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.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <scope>runtime</scope>
    <optional>true</optional>
    </dependency>
    <dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <optional>true</optional>
    </dependency>
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
    </dependency>

    </dependencies>

     (3)写yml

    在子模块下新建yml文件application.yml

    (4)主启动

    在子模块下构建主启动类,模块的启动入口

     (5)业务类------p9

    2.针对于1中的业务类,具体的又可以划分为以下几个模块。

    在实际过程中,后端程序员应该做的工作应该是 controller-service-dao-mysql

     (1)建表sql

    创建数据库

     

    (2)entities:a. 创建实体类 b. 引入三个注解 c. 序列化 (引入三个注解的作用,我不是很了解。。)

    第二个注解表示全参构造方法,第三个参数表示空参构造方法。

    还需要定义一个跟前端交互的结果返回类(通用:标准格式)T指的是具体的业务类,例如payment,具体列出的构造方法,表示data为空时的情况。

     (3)dao

    写完dao层以后 接下来需要写mapper文件。

    红色框中的东西是一个结果映射,因为column是数据库中的字段(会出现下划线),property是java实体类中定义的属性(大小写交替)

     (4)service(代码可以跟dao层中的内容一致)

    肌肉记忆:dao类上面 带注解 mapper !!!!!

                     serviceImpl类上面 带注解 service !!!!

    service 里面调用dao

    (5)controller 

    controller层涉及到和前端交互,因此需要对结果进行封装。

    测试:

    get方法很容易从浏览器测试得到结果,但是post方法,不太支持,用postMan方法用的比较多。

  • 相关阅读:
    Go part 7 反射,反射类型对象,反射值对象
    activemq BytesMessage || TextMessage
    Go part 6 接口,接口排序,接口嵌套组合,接口与类型转换,接口断言
    mysql 查询表的字段名称,字段类型
    冒泡(bubblesort)、选择排序、插入排序、快速排序
    用 python 写一个模拟玩家移动的示例
    day 14(作业)
    day 13
    day 12
    day 11
  • 原文地址:https://www.cnblogs.com/maowuyu-xb/p/13735240.html
Copyright © 2011-2022 走看看