在Javaweb我的项目开发中为了便于前期的保护,咱们个别会进行分层开发,常见的就是分为model(域模型层)、dao(数据库拜访层)、service(业务逻辑层)、controller(控制器层)、web(体现层),这样分层之后,各个层之间的职责会比拟明确,前期保护起来也绝对比拟容易。
后面咱们开发都是在一个模块中,把不同的层以包来辨别,如下:
1、创立SpringBoot我的项目
构造为:
1
游戏代码别离是:
public class User {
private String username;
private String password;
private String realname;
...省略get\set 构造方法
}
@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);
}
}
启动我的项目,测试
0
多模块开发:
随着我的项目越来越简单,上面咱们将会把后面的单模块我的项目重构为多模块我的项目:www.sangpi.com我的项目分为4个模块每个层的规模也逐步增大,在一个模块中进行开发,会给测试和保护带来不便,对于大型项目来说,个别会将每个层放到本人的模块中,而后每个层建立联系,独自保护。
controller
service
dao
model
模块间依赖关系是
controller依赖service和model
service依赖dao和model
dao依赖model
重构多模块我的项目
1、首先抉择我的项目的pom.xml,将打包形式改为pom
<packaging>pom</packaging>
2、新建model模块:
我的项目右键——>New——>Module——>抉择maven ——> Next
2
输出模块名称model ——> Next ——> Finish
3
我的项目的pom.xml中会呈现:
<modules>
<module>model</module>
</modules>
这就是模块创立实现了
而后将原来我的项目中model的包整个复制到model模块的java目录下:
4
3、新建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>
4、再增加service模块
5
增加依赖:
<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>
5、增加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
6
6、点击Build Project 编译我的项目,而后启动程序进行测试,如果能胜利启动还能看到原来的执行成果,那么我的项目多模块的重构就实现了。