maven详解-(8)多模块工程

这一篇介绍maven创建多模块工程,融合了maven的融合和继承,本篇只做案例展示,不做理论分析。

1.项目介绍

创建maven project工程:maven-parent;
创建maven module工程:maven-entity,maven-service,maven-dao,maven-web。
说明:maven-web类型为webapp,maven-parent,maven-entity,maven-service,maven-dao类型为quickstart。
maven-dao,maven-service,maven-web依赖于maven-entity;
maven-web依赖于maven-service;
maven-service依赖于maven-dao;

2.创建项目

maven详解-(8)多模块工程_第1张图片

3.配置依赖

maven-dao的pom.xml文件添加maven-entity依赖

maven详解-(8)多模块工程_第2张图片

maven-service的pom.xml文件添加maven-dao和maven-entity依赖

maven详解-(8)多模块工程_第3张图片

maven-web的pom.xml文件添加maven-service和maven-entity依赖

maven详解-(8)多模块工程_第4张图片

4.多模块实现功能

maven-entity工程创建javabean

package org.maven.entity;

public class UserInfo {
    private int id;
    private String userName;
    private String cellPhone;
    private String email;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getUserName() {
        return userName;
    }
    public void setUserName(String userName) {
        this.userName = userName;
    }
    public String getCellPhone() {
        return cellPhone;
    }
    public void setCellPhone(String cellPhone) {
        this.cellPhone = cellPhone;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public String toString() {
        return "UserInfo [id=" + id + ", userName=" + userName + ", cellPhone="
                + cellPhone + ", email=" + email + "]";
    }
}

maven-dao工程新建查询方法

package org.maven.dao;

import org.maven.entity.UserInfo;

public class UserDao {

    public UserInfo getUserInfoById(int id){

        UserInfo userInfo = new UserInfo();

        userInfo.setId(1);
        userInfo.setUserName("leilei");
        userInfo.setCellPhone("185****4210");
        userInfo.setEmail("[email protected]");

        return userInfo;
    }
}

maven-service工程新建查询方法引用maven-dao层查询方法

package org.maven.service;

import org.maven.dao.UserDao;
import org.maven.entity.UserInfo;

public class UserService {

    public UserInfo getUserInfoById(int id){

        UserDao userDao = new UserDao();

        UserInfo userInfo = userDao.getUserInfoById(id);

        return userInfo;
    }
}

maven-web工程新建查询方法引用maven-service层查询方法

package org.maven.controller;

import org.maven.entity.UserInfo;
import org.maven.service.UserService;

public class UserController {

    public UserInfo getUserInfoById(){

        UserService userService = new UserService();
        UserInfo userInfo = userService.getUserInfoById(1);

        return userInfo;
    }
}

maven-web工程index.jsp页面编辑,打印信息

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"
import="org.maven.entity.UserInfo ,org.maven.controller.UserController"
%>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>indextitle>
<% 
    UserController uh = new UserController();
    UserInfo userInfo = uh.getUserInfoById();
    out.println(userInfo);
%>
head>
<body>

body>
html>

5.运行多模块工程

启动maven-web工程,访问maven-web工程的index.jsp页面查看打印信息。

maven详解-(8)多模块工程_第5张图片

运行成功

你可能感兴趣的:(maven)