- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
在我们的第一个 Hello World Spring Boot 教程中,我们学习了如何使用 ** Spring Boot 命令行界面创建一个简单的 Spring Boot 应用程序。** 在本教程中,我们将看到使用 Spring Initializr 云应用程序构建应用程序的更直观的方法... Spring Boot Initializr 允许我们为我们的项目生成一个基本模板,其中包含能够编译和运行它的所有必要依赖项。
** Spring Initializr ** 云应用可在以下地址 http://start.spring.io 获得。它看起来像这样:
创建项目所需的参数是使用的构建类型(Maven 或 Gradle),您要使用的 Spring Boot 版本。在页面左侧,您需要指定项目元数据。即使建议使用默认值,您也必须至少提供项目组 ID 和版本。通过单击“** 切换到完整版本 **”,可以提供附加信息,例如项目的包名称和版本。此元数据将流入您将要使用的项目的配置文件(Maven 的 pom.xml 或 Gradle 的 build.gradle)。
在右侧,系统会提示您指定项目所需的库(或依赖项)。同样,通过切换到编辑器的“完整版”,可以获得有关可用库的附加信息。
在我们的例子中,我们添加了 REST 服务,因为我们要开发一个示例 REST 应用程序。所以这是我们的选择:
选择 ** Generate Project ** 将项目下载到您的 PC。
下载项目后,建议将其导入 IDE 以开始工作。推荐的环境之一是 IntelliJ,可以从 https://www.jetbrains.com/idea/ . 站点下载其社区版本(免费)。下载后,您只需解压缩即可开始使用它。
为了将新创建的项目与 Initializr 一起使用,只需选择“导入项目”功能:
指向您拥有项目的文件夹(在我们的例子中是“最简单的”):
指定使用 Maven 作为导入模型:
最后,这是您的项目,一旦您在 IntelliJ 上选择了“项目文件”视图:
可以看到,项目中已经有了一个主类:
package com.example.simplerest; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class SimplerestApplication { public static void main(String[] args) { SpringApplication.run(SimplerestApplication.class, args); } }
注意 ** @ SpringBootApplication ** 注释,它允许对 Spring Boot 应用程序进行组件扫描和自动配置。事实上,这个注释结合了三个不同的特征:
有了主类,是时候添加一个控制器以获得 REST 服务了:
package com.example.simplerest; import java.util.concurrent.atomic.AtomicLong; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController public class Controller { private static final String template = "Hello, %s!"; @RequestMapping("/greeting") public String greeting(@RequestParam(value = "name", defaultValue = "World") String name) { return String.format(template, name); } }
** @RestController ** 表示各个方法返回的数据会直接写入响应中,不经过任何模板处理。
我们的第一个应用程序已准备就绪。有几种方法可以启动它。最直接的方法是使用提供以下目标的 Maven 插件:
$ mvn clean spring-boot:run
正如您从控制台中看到的,该应用程序将很快可用:
要对其进行测试,只需打开浏览器并通过传递名称参数来请求“问候”服务。例如:http://localhost:8080/greeting?name=(name):
简单的!我们已经了解了如何使用 Spring Boot Initializer 使用 Spring Boot 创建一个简单的 REST 应用程序,然后在 IntelliJ 中导入该应用程序。
Giới thiệu: Đôi khi, một cơ sở dữ liệu có nhiều tài khoản, bao gồm quản trị viên cơ sở dữ liệu, nhà phát triển, nhân viên hỗ trợ vận hành và bảo trì, v.v. Nhiều tài khoản có thể có quyền tương đối lớn, chẳng hạn như quyền thao tác DDL (tạo, sửa đổi, xóa thủ tục được lưu trữ, tạo, sửa đổi, xóa bảng, v.v.).
Vì vậy, tôi đã tạo và thiết lập một ứng dụng React lớn bằng cách sử dụng Create React App. Gần đây chúng tôi bắt đầu sử dụng Storybook để xử lý và tạo các thành phần. Nó hoạt động rất tốt. Tuy nhiên, khi chúng ta cố gắng chạy hoặc xây dựng ứng dụng, chúng ta vẫn gặp phải
Sau đây là đoạn mã cho điều khiển mà tôi đang tạo. Kiểm soát này được sử dụng ở nhiều nơi khác nhau và các biến cũng khác nhau. Tôi đang cố gắng viết một lệnh để dọn dẹp mã của mình nhưng tôi gặp lỗi phân tích cú pháp khi chèn giá trị gần {{}}. Mới làm quen với Angular và không biết mình đang bỏ lỡ điều gì. Xin hãy giúp đỡ.
Tôi đang cố gắng tạo một lớp cung cấp image/jpeg jax-rs để tạo ra một hình ảnh cho dịch vụ web dựa trên rest của bài đăng của tôi. Tôi đang gặp khó khăn khi xây dựng yêu cầu kiểm tra những điều sau, cách dễ nhất để kiểm tra là gì? @BƯU KIỆN
Tôi đã thực hành ngôn ngữ c trên trình giả lập Windows 10. Sau đó tôi chuyển sang dev C++ IDE. Khi tôi sử dụng FILE trong C. Tên của tệp được tạo là test.txt trong khi tôi đã đặt tên khác. Xin hãy giúp giải quyết vấn đề này. dưới
Khi chúng ta tạo một View tùy chỉnh, chúng ta đặt chủ sở hữu của tệp View thành lớp tùy chỉnh và khởi tạo nó bằng initWithFrame hoặc initWithCode. Khi chúng ta tạo customUITable
Tôi đang cố gắng tạo một luồng cho hàm *Producer nhưng dòng lệnh tạo luồng lại hiển thị lỗi. Tôi đã đánh dấu sao cho câu này, nhưng tôi không hiểu có gì sai với nó... #include #include #include
Hôm nay, khi đang làm việc trên một dự án, tôi gặp phải tình huống cần tạo một đối tượng JavaScript. Vì vậy, tôi đã tìm thấy một bài viết do một người nước ngoài viết về 3 cách để tạo đối tượng JavaScript, sau đó tôi đã nhập mã. Tôi nghĩ phương pháp này khá tốt nên muốn chia sẻ với các bạn. &
Tôi đang đọc tài liệu về cách truyền chuỗi truy vấn tới S3 của Amazon để xác thực, nhưng có vẻ như tôi không hiểu StringToSign được tạo và sử dụng như thế nào. Tôi đang tìm kiếm một ví dụ cụ thể cho thấy cách (1) xây dựng một Chuỗi
Lời nói đầu: Tôi không biết nhiều về cách triển khai cơ bản của các tác vụ trong C#, tôi chỉ biết cách sử dụng chúng. Xin lỗi vì những điều tôi đã nói sai ở bên dưới: Tôi không thể tìm ra câu trả lời thỏa đáng cho câu hỏi "Làm thế nào tôi có thể bắt đầu một nhiệm vụ mà không phải chờ đợi?" Trong C#. Cụ thể hơn, ngay cả khi có bất kỳ
Tôi có một ILookup được tạo ra bởi một số biểu thức phức tạp. Giả sử đây là việc tra cứu thông tin của mọi người theo họ. (Trong mô hình thế giới đơn giản của chúng ta, họ là duy nhất trong một gia đình) ILookup families; Bây giờ tôi có hai truy vấn mà tôi muốn biết cách xây dựng. cái đầu
Tôi đang cố gắng tạo một MSI có chứa file exe. Trong WIX, tùy chọn đóng gói được sử dụng. Đã xảy ra lỗi khi thực hiện thao tác này. Có ai vui lòng giúp tôi giải quyết vấn đề này không? Đây là mã lỗi: lỗi LGH
Trong Yii, Create và Update thường sử dụng cùng một form. Vì vậy, nếu tôi có các trường như email, mật khẩu, ...other_fields... trong quá trình tạo, nhưng tôi không muốn hiển thị cụ thể các trường email và mật khẩu trong quá trình cập nhật, nhưng
Tôi đã vật lộn trong tuần qua để tạo QModelIndex dựa trên một hàng và một cột. Ngoài ra, tôi sẽ giải quyết bằng cách thay đổi giá trị của row() trong QModelIndex hiện có. Bất kỳ sự giúp đỡ nào cũng được hoan nghênh. Chỉnh sửa: QModelInd
Vì một lý do nào đó, điều này không hiệu quả: const char * str_reset_command = "\r\nReset"; const char * str_config_command = "\r\nC
Bây giờ, tôi có data.frame sau được tạo bởi original.df %.% group_by(Category) %.% tally() %.% arrange(desc(n)) . DF5),
Trước hôm nay, tôi đã sử dụng /etc/vim/vimrc để cấu hình cài đặt vim của mình. Hôm nay, tôi nghĩ đến việc tạo một tệp .vimrc. Vì vậy, tôi sử dụng touch .vimrc cat /etc/vim/vimrc > .vimrc
Tôi có thể tạo MKAnnotation không hay chỉ có thể đọc? Tôi có tọa độ nhưng thấy không dễ để tạo MKAnnotation theo cách thủ công bằng setCooperative. ý tưởng? Câu trả lời hay nhất MKAnnotation
Trong đoạn mã sau, câu lệnh nhật ký đầu tiên hiển thị số thập phân như mong đợi, nhưng câu lệnh nhật ký thứ hai lại ghi NULL. Tôi đang làm gì sai? NSDictionary *entry = [[NSDictionary phân bổ] initWithOb
Tôi đang sử dụng mã tương tự như thế này để thêm động vào một mảng; $arrayF[$f+1][$y][$x+1] = $value+1; Tuy nhiên, tôi nhận được thông báo lỗi này trong báo cáo: undefined offset :1 Vấn đề: Đang cố gắng tạo
Tôi là một lập trình viên xuất sắc, rất giỏi!