maven打包项目,然后给其他项目引用

A项目(这个项目需要被打包,作为被引入的项目),不需要启动类,因为作为公共模块被B项目引入:

package com.yunya.mvndependontest.rest;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("/teacher")
public class TeacherRest {@RequestMapping("/say")public String say() {String word = "好好学习,天天向上!";System.out.println(word);return word;}}
Teaching Service类,包含math 和 chinese方法:package com.yunya.mvndependontest.service;import org.springframework.stereotype.Service;@Service
public class Teaching {public String math() {return "教数学啦";}public String chinese() {return "教中文啦";}}

B项目:引入打包后的A项目(gav格式引入),启动端口是:8082

MvnDependOnParentTestApplication 启动类文件:
注意务必要使用@ComponentScan注解将A项目的restcontroller路径也引入,否则访问A项目restful接口路径(/teacher/say)会提示找不到地址。
package com.yunya.mvndependonparenttest;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;@SpringBootApplication
@ComponentScan("com.yunya")
public class MvnDependOnParentTestApplication {public static void main(String[] args) {SpringApplication.run(MvnDependOnParentTestApplication.class, args);}}
Student RestController类,该类中调用A项目的Teaching Service类的方法math:package com.yunya.mvndependonparenttest.rest;import com.yunya.mvndependontest.service.Teaching;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("/student")
public class Student {@AutowiredTeaching teaching;@RequestMapping("/study")public String study() {String studyContent = "学生学到了一首诗:床前明月光,疑是地上霜。";System.out.println(studyContent);// 调用引入的A项目的teaching service类中的math方法String mathContent = teaching.math();System.out.println(mathContent);return studyContent;}
}

访问效果:
访问B项目地址:localhost:8082/teacher/say,如下效果:
在这里插入图片描述
访问B项目地址:localhost:8082/student/study,如下效果:
在这里插入图片描述

引用:
把一个项目打成jar包并引入其他项目中

springboot引入其他项目jar包并实现对数据库的操作

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/158187.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringDoc枚举字段处理与SpringBoot接收枚举参数处理

本期内容 添加SpringDoc配置展示枚举字段,在文档页面中显示枚举值和对应的描述添加SpringMVC配置使项目可以接收枚举值,根据枚举值找到对应的枚举 默认内容 先不做任何处理看一下直接使用枚举当做入参是什么效果。 定义一个枚举 package com.exampl…

计算机网络:数据链路层

0 本节主要内容 问题描述 解决思路 1 问题描述 数据链路层主要面临四个问题: 封装成帧;透明传输;差错检测;实现相邻节点之间的可靠通信。 1.1 子问题1:封装成帧 怎么知道数据从哪里开始?到哪里结束&a…

0基础学习VR全景平台篇第122篇:VR视频剪辑和输出 - PR软件教程

上课!全体起立~ 大家好,欢迎观看蛙色官方系列全景摄影课程! 开始之前如果没有接触过pr这款软件的话,建议先去看上一篇 认识视频剪辑软件Premiere 大致了解一下pr。 回到正题今天来教大家VR视频的剪辑和输出 我们先双击打开…

喜讯 | 聚铭下一代智慧安全运营中心入选2023年江苏省大数据产业发展试点示范项目

近日,江苏省工信厅公示2023年江苏省大数据产业发展试点示范项目名单。聚铭下一代智慧安全运营中心凭借扎实的技术实力和突出的产品优势成功入选。 为推动新兴数字产业集群建设,夯实大数据产业发展基础,提升产业供给能力和行业赋能效应&…

AD9361寄存器功能笔记之本振频率设定

LO的产生过程如图: 各个模块都有高灵活性。 1、参考时钟即是AD9361全局参考时钟,可以是外接晶振的片上DCXO,或是外部输入的有驱动能力的时钟信号。根据FM-COMMS5的设计,参考时钟可以使用时钟Buffer 40MHz晶振构成的参考频率源。 …

人工智能基础部分21-神经网络中优化器算法的详细介绍,配套详细公式

大家好,我是微学AI,今天给大家介绍一下人工智能基础部分21-神经网络中优化器算法的详细介绍,配套详细公式。本文将介绍几种算法优化器,并展示如何使用PyTorch中的算法优化器,我们将使用MNIST数据集和一个简单的多层感知…

Vue 2使用element ui 表格不显示

直接修改package.json文件 把这两个依赖修改成对应的 删除node_modules 重新安装依赖 重启

Linux下数据库和中间件安装配置

项目采用亚马逊云服务器,需要SSH证书访问, 部署 zookeeper、kafka、redis、mysql、clichkhouse 其中zookeeper、kafka、redis采用docker部署 一、首先连接服务器(使用亚马逊云下载的pem密钥文件) [HOST]# ssh -i AWS-Host.pem centos18.25.99.1 [HOST…

【星海随笔】redis 解析

redis 非关系型数据库 支持事务,操作都是原子性 所谓的原子性就是对数据的更改要么全部执行,要么全部不执行。 redis-server:顾名思义,redis服务 redis-cli:redis client,提供一个redis客户端,…

VMware Workstation系列:Win11运行VMware延迟卡顿(侧通道缓解相关)

一. Win11运行VMware延迟卡顿 最近在使用VMware时,开机提示如下: 您在运行该虚拟机时启用了侧通道缓解。侧通道缓解可增强安全性,但也会降低性能。 要禁用缓解,请在虚拟机设置的“高级”面板中更改侧通道缓解设置。有关更多详细信…

电巢科技广州科技贸易职业学院高速PCB设计工程师训练营圆满结班!

为深化校企合作,产教融合助力新工科建设,提升学生工程实践能力,电巢工程能力实训班按照不同岗位类别,匹配对应的企业岗位任职能力要求对学生开展分级培养,以产业需求为导向,培养创新型、应用型人才。 11月1…

无法创建 8192 MB 的匿名分页文件: 系统资源不足,无法完成请求的服务。

好久没用VMware Workstation,今天突然要用,发现所有的虚机在启动的时候提示都提示: 无法创建 XXXX MB 的匿名分页文件:页面文件太小,无法完成操作。 未能分配主内存。 模块"MainMem"启动失败。 未能启动…

PDF Reader Pro 3.0.1.0(pdf阅读器)

PDF Reader Pro是一款功能强大的PDF阅读、注释、填写表单&签名、转换、OCR、合并拆分PDF页面、编辑PDF等软件。 它支持多种颜色的高亮、下划线,可以按需选择,没有空白处可以进行注释,这时候便签是你最佳的选择,不点开时自动隐…

全志R128芯片RTOS调试指南

RTOS 调试指南 此文档介绍 FreeRTOS 系统方案支持的常用软件调试方法,帮助相关开发人员快速高效地进行软件调试,提高解决软件问题的效率。 栈回溯 栈回溯是指获取程序的调用链信息,通过栈回溯信息,能帮助开发者快速理清程序执行…

手机IP地址会随位置变化吗

当今社会,手机已经成为人们生活中必不可少的工具之一。然而,许多人对于手机的IP地址是否会随位置的变化而改变感到困惑。在本文中,虎观代理小二二将揭开这个迷团,深入讨论手机IP地址的变化情况,并为您提供详细解答。 首…

探索实人认证API:保障在线交互安全的关键一步

前言 在数字化时代,随着人们生活的日益数字化,各种在线服务的普及,安全性成为用户体验的至关重要的一环。特别是在金融、电商、社交等领域,确保用户身份的真实性显得尤为重要。而实人认证API作为一种先进的身份验证技术&#xff…

特征工程完整指南 - 第一部分

苏米特班迪帕迪亚 一、说明 特征工程是利用领域知识从原始数据中提取特征的过程。这些功能可用于提高机器学习算法的性能。本篇叙述在特征选择过程的若干数据处理。 一般来说,特征工程有以下子步骤: 特征转换特征构建特征选择特征提取 二、特征转换的缺…

webpack external 详解

作用:打包时将依赖独立出来,在运行时(runtime)再从外部获取这些扩展依赖,目的时解决打包文件过大的问题。 使用方法: 附上代码块 config.set(externals, {vue: Vue,vue-router: VueRouter,axios: axios,an…

APP分发可以通过以下几种方式

APP分发可以通过以下几种方式进行: 开发者自主分发:开发者可以自主将应用上传至各大应用商店或通过其他途径进行分发。这种方式需要开发者自行处理渠道的对接、渠道的维护、渠道的推广等事宜,需要投入较多的精力和资源。通过应用商店进行分发…

【实战教程】改进YOLOv5与Seg网络结合:实时车道线精准识别系统(含源码及部署步骤)

1.研究的背景 随着自动驾驶技术的不断发展,车道线的实时分割成为了自动驾驶系统中的重要任务之一。车道线的准确分割可以为自动驾驶系统提供重要的环境感知信息,帮助车辆进行准确的路径规划和决策。因此,开发一种高效准确的车道线实时分割系…