java培训学习路线图之SpringBoot多模块开发学习

在Javaweb项目开发中为了便于后期的维护,咱们通常会进行分层开发,常见的就是分为model(域模型层)、dao(数据库访问层)、service(业务逻辑层)、controller(控制器层)、web(表现层),这样分层以后,各个层之间的职责会比较明确,后期维护起来也相对比较容易。java

前面咱们开发都是在一个模块中,把不一样的层以包来区分,以下:web

一、建立SpringBoot项目spring

结构为:数据库

代码分别是:springboot

public class User {app

private String username;maven

private String password;测试

private String realname;ui

...省略get\set 构造方法xml

}

@Repository

public class UserDAO {

public List<User> selectAllUsers(){

return Arrays.asList(new User("zhangsan","111","张三"),

new User("lisi","111","李四"),

new User("wangwu","111","王五"));

}

}

@Service

public class UserService {

@Resource

private UserDAO userDAO;

public List<User> findAllUsers(){

return userDAO.selectAllUsers();

}

}

@Controller

@RequestMapping("/user")

public class UserController {

@Resource

private UserService userService;

@RequestMapping("/list")

@ResponseBody

public String list(){

List<User> allUsers = userService.findAllUsers();

StringBuilder stringBuilder = new StringBuilder();

for(User user :allUsers){

stringBuilder.append("<p>姓名:");

stringBuilder.append(user.getRealname());

stringBuilder.append("</p>");

}

return stringBuilder.toString();

}

}

@SpringBootApplication

public class DemoApplication {

public static void main(String[] args) {

SpringApplication.run(DemoApplication.class, args);

}

}

启动项目,测试

多模块开发:

随着项目愈来愈复杂,每一个层的规模也逐渐增大,在一个模块中进行开发,会给测试和维护带来不便,对于大型项目来讲,通常会将每一个层放到本身的模块中,而后每一个层创建联系,单独维护。

下面咱们将会把前面的单模块项目重构为多模块项目:

项目分为4个模块

controller

service

dao

model

模块间依赖关系是

controller依赖service和model

service依赖dao和model

dao依赖model

重构多模块项目

一、首先选择项目的pom.xml,将打包方式改成pom

<packaging>pom</packaging>

二、新建model模块:

项目右键——>New——>Module——>选择maven ——> Next

输入模块名称model ——> Next ——> Finish

项目的pom.xml中会出现:

<modules>

<module>model</module>

</modules>

这就是模块建立完成了

而后将原来项目中model的包整个复制到model模块的java目录下:

三、新建dao模块,过程和前面相似

新建完成后,代码会报错,由于找不到User类,缘由是dao模块尚未添加model模块的依赖

添加依赖,在dao模块的pom.xml中添加

<dependencies>

<dependency>

<groupId>com.qianfeng.springboot</groupId>

<version>0.0.1-SNAPSHOT</version>

<artifactId>model</artifactId>

</dependency>

</dependencies>

四、再添加service模块

添加依赖:

<dependencies>

<dependency>

<groupId>com.qianfeng.springboot</groupId>

<artifactId>dao</artifactId>

<version>0.0.1-SNAPSHOT</version>

</dependency>

<dependency>

<groupId>com.qianfeng.springboot</groupId>

<artifactId>model</artifactId>

<version>0.0.1-SNAPSHOT</version>

</dependency>

</dependencies>

五、添加controller模块

添加依赖:

<dependencies>

<dependency>

<groupId>com.qianfeng.springboot</groupId>

<artifactId>service</artifactId>

<version>0.0.1-SNAPSHOT</version>

</dependency>

<dependency>

<groupId>com.qianfeng.springboot</groupId>

<artifactId>model</artifactId>

<version>0.0.1-SNAPSHOT</version>

</dependency>

</dependencies>

而后把原来项目的DemoApplication类复制到controller模块java目录下的基础包下,本例是com.qianfeng.springboot

六、点击Build Project 编译项目,而后启动程序进行测试,若是能成功启动还能看到原来的执行效果,那么项目多模块的重构就完成了。

相关文章
相关标签/搜索