本文适合有一定的基础,至少熟悉springboot的人群,另外这系列是想以能够搭建一个微服务为基础,并不研究那么深入,想学习微服务又不知道如何下手的人可以跟随本文章系列的流程简单尝试一下,之后还会继续更新
1.创建父项目,添加依赖
版本匹配
在dependencymanager中添加
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>xxx.xxx</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>xxx.xxx</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
其他依赖项照旧
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</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>
2.添加子项目1 :xxx-api,添加依赖(使用spring-boot-starter-data-jpa)
子项目的pom文件中添加
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
</dependencies>
添加实体类
//告诉数据库操作的是哪张表(可以自动创建表)
@Entity(name = "product")
@Data//lombok注解
public class Product {
@Id//主键,必须有
@GeneratedValue(strategy = GenerationType.IDENTITY)//主键约束
private Long pid;//主键
private String pname;//商品名称
private Double pprice;//商品价格
private Integer stock;//库存
}
添加子项目2:xxx-server ,添加依赖
<dependencies>
<!-- 数据库 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<!-- 前端控制器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 导入其他模块,这里是xxx-api -->
<dependency>
<groupId>com.example</groupId>
<artifactId>shop-product-demo-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<!-- mysql连接 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.45</version>
</dependency>
</dependencies>
配置yml文件
server:
port: 8081
#四要素
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3307/product-test
username: root
password: root
#类似mybatis
jpa:
properties:
hibernate:
hbm2ddl:
auto: update
dialect: org.hibernate.dialect.MySQL5InnoDBDialect
dao
//继承JpaRepository 泛型1:实体类类型 泛型2:Long
public interface ProductRepository extends JpaRepository<Product,Long> {
}
依次完成service,controller 这里数据库使用的是jpa,如果想使用mybaits对应修改一下pom依赖和yml配置文件即可
启动类
@SpringBootApplication
public class Pro {
public static void main(String[] args) {
SpringApplication.run(Pro.class,args);
}
}