Skip to content

Latest commit

 

History

History
54 lines (39 loc) · 2.23 KB

14.md

File metadata and controls

54 lines (39 loc) · 2.23 KB

14. 组织代码

Spring Boot不要求任何的代码工具就能使用。但是,有一些有帮助的最佳实践。

14.1 使用“default”包

当一个类不在一个package声明时,它会被放在“default package”。使用“default package”通常是不鼓励的,也应该避免。它可以引起Spring Boot一定的问题,使用@ComponentScan,@EntityScan或者@SpringBootApplication annotations注解时,每个jar的每个类会被扫描。

我们推荐你遵循Java推荐的包命名规范(convention),使用一个反转的域名(例如,com.example.project)。

14.2 放置应用主类

我们一般推荐你放置你的应用主类在一个根包里,在其他类之上。@SpringBootApplication注解经常放在你的主类,它暗示为某些条目定义了一个基础的“search package”。例如,如果你正在写一个JPA应用,@SpringBootApplication注解的类的包被用来搜索@Entity条目。使用根package也允许组件扫描应用到你的工程上。

如果你不想使用@SpringBootApplication,@EnableAutoConfiguration和@ComponentScan注解(it imports defines that behaviour),可以用来代替它。

下面展示一个典型的布局:

com
 +- example
     +- myapplication
         +- Application.java
         |
         +- customer
         |   +- Customer.java
         |   +- CustomerController.java
         |   +- CustomerService.java
         |   +- CustomerRepository.java
         |
         +- order
             +- Order.java
             +- OrderController.java
             +- OrderService.java
             +- OrderRepository.java

Application.java文件会声明main方法,和基本的@SpringBootApplication一起,如下:

package com.example.myapplication;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Application {

	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}

}