Spring Boot入门(10)利用Cloud Foundry Platform部署Spring Boot应用

简介:   CSDN的第100篇博客,值得纪念一下。在此说几句废话,希望读者谅解。   近来烦心事较多,公司人员流动较大,喜欢的妹子也要离职了,我也想着是不是也该换份工作了。

  CSDN的第100篇博客,值得纪念一下。在此说几句废话,希望读者谅解。
  近来烦心事较多,公司人员流动较大,喜欢的妹子也要离职了,我也想着是不是也该换份工作了。五月,心情烦躁,人事变动多,让我想起了“多事之秋”一词。出来工作不满一年,突然就体会到了各种无奈和离别,毕竟社会不好混呐~~虽然想着要换工作,心情也很down,但是学习的脚步不应该停下……
  第100篇博客,还是写Spring Boot, 挺不错的,但由于个人原因,Spring Boot的学习暂缓,接下来可能会写点TensorFlow方面的博客。
  好了,说正事。
  在前面的九篇关于Spring Boot的博客中,我们主要讲了Spring Boot在Web方面的应用,那么,一个很自然的想法就是,能不能把自己的Web应用部署到服务器上,让别人也能看到自己的项目呢?
  部署,是开发的最后一步,也是较难的一步,对于笔者这种新手来说,要用Apache或者Nginx来部署,得学一段时间才能学会,而且感觉学习曲线比较陡峭。那么,采用云服务器呢?一般云服务器都提供了很好的服务,如阿里云等,但唯一的缺点就是:收费。
  我们部署Spring Boot的方法是: 利用Cloud Foundry Platform. 这样做的好处是:云服务,部署简单,而且有2G的免费内存,对于新手来说,足够使用了。
  关于Cloud Foundry的介绍,可以参考网址: https://en.wikipedia.org/wiki/Cloud_Foundry .
  接下来,我们讲述如何利用Cloud Foundry Platform部署Spring Boot应用,步骤如下:

  1. 安装CF Windows installer,网址为: https://cli.run.pivotal.io/stable?release=windows64&source=github
  2. 注册Pivotal账号,网址为: https://account.run.pivotal.io/z/uaa/sign-up
  3. 部署Spring Boot应用

安装CF Windows installer

  在https://cli.run.pivotal.io/stable?release=windows64&source=github中下载CF Windows installer, 这是Windows的版本。下载完后,解压,双击cf_installer.exe,然后一路按“next”即可完成安装。
  验证是否安装成功,只需要在CMD中输入cf,如出现以下界面,即说明安装成功.


验证是否安装成功

注册Pivotal账号

  打开网址:https://account.run.pivotal.io/z/uaa/sign-up, 利用自己的邮箱即可注册Pivotal账号,别忘了回自己的邮箱完成验证。
  注册完了,你就有一个Pivotal账号了,为了能把本地的项目上传到服务器,你需要在本地完成登录。在CMD中输入cf login -a api.run.pivotal.io, 然后输入你刚才注册的账号及密码即可。这样,我们就能部署本地项目了。


本地端登录

部署Spring Boot项目

  选择自己要部署的Spring Boot项目,生成该项目的jar包。我们示例的Spring Boot项目为Josepus问题的网页版,Github地位为:https://github.com/percent4/josephus。因此,本篇博客可能是唯一未出现代码的博客,哈哈~~
  Josephus项目采用Gradle编译,生成josephus-0.1.0.jar包,然后在CMD中切换到该jar包所在文件夹,然后输入命令:

cf push josephus -p josephus-0.1.0.jar

该命令利用cf上传(push)josephus-0.1.0.jar,部署的网址主体为josephus,这样我们就完成了该项目的部署。什么,这么简单就完成部署了?是的,你没看错,就这么简单。
  可以登录Pivotal网站,进入Pivotal Web Services,查看项目的运行情况:


查看项目的运行

可以看到我们刚才部署的Josephus项目已经部署在 https://josephus.cfapps.io/ 上了。我们部署项目成功啦!

运行及测试

  部署完项目后,别忘了测试一把。因为我们部署的Josephus项目的有响应的网站映射,所以我们需要在浏览器中输入:https://josephus.cfapps.io/Josephus 才能使用该Web应用。


部署测试

可以看到我们的网址不再是localhost了,而且cfapps.io,这说明我们在云服务器中成功部署了,也意味着别人只要输入这个网址,就能访问你的项目了!
  在以上网页中,输入n=10,m=3,按下“Show Resule”按钮,显示如下:

显示结果

  这就是一个完整的Web App的诞生!

  关于Spring Boot, 暂时就到这儿了。希望能对读者有所帮助,也祝自己能顺利地换份工作~~

目录
相关文章
|
22天前
|
存储 安全 Java
Spring Security 入门
Spring Security 是 Spring 框架中的安全模块,提供强大的认证和授权功能,支持防止常见攻击(如 CSRF 和会话固定攻击)。它通过过滤器链拦截请求,核心概念包括认证、授权和自定义过滤器。配置方面,涉及密码加密、用户信息服务、认证提供者及过滤器链设置。示例代码展示了如何配置登录、注销、CSRF防护等。常见问题包括循环重定向、静态资源被拦截和登录失败未返回错误信息,解决方法需确保路径正确和添加错误提示逻辑。
Spring Security 入门
|
9天前
|
Java 测试技术 应用服务中间件
Spring Boot 如何测试打包部署
本文介绍了 Spring Boot 项目的开发、调试、打包及投产上线的全流程。主要内容包括: 1. **单元测试**:通过添加 `spring-boot-starter-test` 包,使用 `@RunWith(SpringRunner.class)` 和 `@SpringBootTest` 注解进行测试类开发。 2. **集成测试**:支持热部署,通过添加 `spring-boot-devtools` 实现代码修改后自动重启。 3. **投产上线**:提供两种部署方案,一是打包成 jar 包直接运行,二是打包成 war 包部署到 Tomcat 服务器。
34 10
|
23天前
|
人工智能 前端开发 Java
Spring AI Alibaba + 通义千问,开发AI应用如此简单!!!
本文介绍了如何使用Spring AI Alibaba开发一个简单的AI对话应用。通过引入`spring-ai-alibaba-starter`依赖和配置API密钥,结合Spring Boot项目,只需几行代码即可实现与AI模型的交互。具体步骤包括创建Spring Boot项目、编写Controller处理对话请求以及前端页面展示对话内容。此外,文章还介绍了如何通过添加对话记忆功能,使AI能够理解上下文并进行连贯对话。最后,总结了Spring AI为Java开发者带来的便利,简化了AI应用的开发流程。
288 0
|
9天前
|
Java 应用服务中间件
SpringBoot工程打包部署
SpringBoot工程打包部署简介:SpringBoot项目可通过三种方式运行:可执行Jar包、可执行War包和标准War包。其中,可执行Jar/War包可独立运行,标准War包需部署在Tomcat中。具体步骤包括:1. 修改pom.xml添加构建依赖;2. 执行`mvn clean package`命令打包;3. 运行生成的Jar/War包(如`java -jar xxx.jar`)。对于标准War包,还需修改启动类并配置Tomcat依赖。
|
10天前
|
人工智能 自然语言处理 Java
Spring Cloud Alibaba AI 入门与实践
本文将介绍 Spring Cloud Alibaba AI 的基本概念、主要特性和功能,并演示如何完成一个在线聊天和在线画图的 AI 应用。
149 7
|
1月前
|
XML 前端开发 安全
Spring MVC:深入理解与应用实践
Spring MVC是Spring框架提供的一个用于构建Web应用程序的Model-View-Controller(MVC)实现。它通过分离业务逻辑、数据、显示来组织代码,使得Web应用程序的开发变得更加简洁和高效。本文将从概述、功能点、背景、业务点、底层原理等多个方面深入剖析Spring MVC,并通过多个Java示例展示其应用实践,同时指出对应实践的优缺点。
87 2
|
3月前
|
人工智能 自然语言处理 前端开发
SpringBoot + 通义千问 + 自定义React组件:支持EventStream数据解析的技术实践
【10月更文挑战第7天】在现代Web开发中,集成多种技术栈以实现复杂的功能需求已成为常态。本文将详细介绍如何使用SpringBoot作为后端框架,结合阿里巴巴的通义千问(一个强大的自然语言处理服务),并通过自定义React组件来支持服务器发送事件(SSE, Server-Sent Events)的EventStream数据解析。这一组合不仅能够实现高效的实时通信,还能利用AI技术提升用户体验。
285 2
|
3天前
|
缓存 安全 Java
Spring Boot 3 集成 Spring Security + JWT
本文详细介绍了如何使用Spring Boot 3和Spring Security集成JWT,实现前后端分离的安全认证概述了从入门到引入数据库,再到使用JWT的完整流程。列举了项目中用到的关键依赖,如MyBatis-Plus、Hutool等。简要提及了系统配置表、部门表、字典表等表结构。使用Hutool-jwt工具类进行JWT校验。配置忽略路径、禁用CSRF、添加JWT校验过滤器等。实现登录接口,返回token等信息。
88 12
|
23天前
|
Java 数据库连接 Maven
最新版 | 深入剖析SpringBoot3源码——分析自动装配原理(面试常考)
自动装配是现在面试中常考的一道面试题。本文基于最新的 SpringBoot 3.3.3 版本的源码来分析自动装配的原理,并在文未说明了SpringBoot2和SpringBoot3的自动装配源码中区别,以及面试回答的拿分核心话术。
最新版 | 深入剖析SpringBoot3源码——分析自动装配原理(面试常考)
|
9天前
|
存储 安全 Java
Spring Boot 3 集成Spring AOP实现系统日志记录
本文介绍了如何在Spring Boot 3中集成Spring AOP实现系统日志记录功能。通过定义`SysLog`注解和配置相应的AOP切面,可以在方法执行前后自动记录日志信息,包括操作的开始时间、结束时间、请求参数、返回结果、异常信息等,并将这些信息保存到数据库中。此外,还使用了`ThreadLocal`变量来存储每个线程独立的日志数据,确保线程安全。文中还展示了项目实战中的部分代码片段,以及基于Spring Boot 3 + Vue 3构建的快速开发框架的简介与内置功能列表。此框架结合了当前主流技术栈,提供了用户管理、权限控制、接口文档自动生成等多项实用特性。
47 8