java - 如何使用 Spring Framework 将 Java 控制台应用程序转换为全栈 Web 应用程序?
问题描述
所以我要转换的项目在https://github.com/zhongjis/keyword_search_engine_xlsm。
这个程序打算建立一个基于用户输入文件(xlsm)的搜索引擎。它首先从 XLSM (excel) 文件中提取内容并将它们存储到数据库中。在建立数据库的同时,程序还会计算一些特殊的数字,例如 td-idf,这些数字将在以后用于结果排名。
目前使用的技术:
- 摇篮
- 爪哇 13
- MongoDB
我想做什么?
- 将此控制台应用程序转换为使用 Spring Framework 的全栈 Web 应用程序。这意味着我想添加一个 GUI。
- 在此过渡期间,我试图保留尽可能多的原始代码。对我来说,可以修改它们以适应 MVC 设计。
- 一句话,我想让我现在的应用程序运行在Spring框架上。只有控制台输出是可以的。
我有什么问题?
- 尽管我对 Spring Framework(尤其是 Spring boot)做了很多研究。但是我仍然在为实施该框架首先应该做什么而苦苦挣扎。我想要一些关于如何开始的建议(或者我应该对我的原始项目进行哪些更改)。我从互联网上学到的只是向 build.gradle 添加各种依赖项。但我仍然不知道下一步该做什么。我应该从头开始一个新的 Web 应用程序还是尝试转换当前的应用程序?
谢谢
- 我尽力填写细节。但是,这篇文章的某些部分可能仍然含糊不清或令人困惑,需要进行一些澄清。请随时让我知道,我非常愿意这样做:)
解决方案
您似乎想要创建一个 Web 应用程序。
最简单的入门方法是使用 Spring Boot,它是 Spring 的“自以为是”版本,这意味着它使用智能默认值。您应该首先使用 Initializer 来生成您的项目:https ://start.spring.io/ 。继续生成和测试,直到你得到你想要的。
最简单的方法是构建一个可执行的 JAR,它将包含您的 Web 服务器,并且可以在您拥有 Java 的任何地方运行。这是上面 Initializer 站点上的默认设置。我的建议:接受 Spring Boot 默认设置,直到您知道自己在做什么。
GUI:最简单的方法是使用 Thymeleaf 模板来显示您的 HTML。
控制器:学习如何编写一个基本的控制器来返回一个 Thymeleaf 模板。最简单的开始方法是使用标准 HTML 发布到您的控制器。
Docs Spring 的一大优势是充足的文档。请参阅:https ://spring.io/guides/gs/serving-web-content/ 和:https ://docs.spring.io/spring/docs/current/spring-framework-reference/web.html
推荐阅读
- unity3d - Unity - 创建 Android 菜单项(3 个垂直点和返回箭头按钮)
- apache - .htaccess 规则将爬虫重定向到另一个文件夹
- python - use python request to load more items
- elasticsearch - 动态映射大于 2^63 - 1 的数值字段数据类型(long 类型)
- url-routing - TYPO3 9.5 URL Routing with URL Segment is not working
- javascript - 如何从 Vue.js 中的模板调用方法?
- c# - Application Gets Slow After Enable/Disable MDIChldren
- php - Use a function declared in a different file [PHP-HTML]
- windows - Maximum elements to loop over in fortran in linux and windows
- amazon-web-services - Aws iot 和 lorawan 集成