In diesem Artikel werde ich durch den Prozess der Einrichtung einer AWS RDS MySQL-Instanz gehen, nachdem ich die Sicherheitsgruppe konfiguriert und sie mit Ihrer Spring Boot-Anwendung verbunden und die Verbindung getestet habe.
Bevor Sie die RDS-Instanz einrichten, müssen Sie sicherstellen, dass auf die Instanz zugegriffen werden kann. Sie können dies tun, indem Sie eine AWS Sicherheitsgruppe konfigurieren. Die Sicherheitsgruppe fungiert als virtuelle Firewall zur Kontrolle des ein- und ausgehenden Datenverkehrs.
Sobald die Sicherheitsgruppe eingerichtet ist, fahren Sie mit der Konfiguration der RDS-Instanz fort.
Hinweis: Ich benötige keine bestimmte EC2-Instanz für diese Datenbank, da keine Rechenressourcen zugewiesen werden müssen.
Nachdem Sie diese Einstellungen konfiguriert haben, klicken Sie auf Datenbank erstellen, um mit der Bereitstellung der RDS-Instanz zu beginnen. Die Erstellung dauert einige Minuten.
Da Ihre RDS-MySQL-Instanz nun betriebsbereit ist, können Sie mit der Konfiguration Ihrer Spring Boot-Anwendung für die Verbindung damit fortfahren.
Ich werde nicht tief in Spring Boot eintauchen, ich zeige nur ein paar Java-Dateien und -Konfigurationen, um eine Vorstellung zu bekommen. Wenn Sie neu bei Spring Boot sind, machen Sie sich bitte vor der Implementierung einen grundlegenden Überblick über Spring Boot-Anwendungen.
In Ihrem Spring Boot-Projekt müssen Sie die erforderlichen Datenbankverbindungsdetails in der Datei application.properties hinzufügen. Die Verbindung verwendet den Endpunkt (unter der Konnektivität und Sicherheit der RDS-Instanz) zusammen mit den Anmeldeinformationen, die während der RDS-Einrichtung festgelegt wurden.
spring.application.name=DevOps spring.datasource.url=jdbc:mysql://<End Point>/devops spring.datasource.username=admin spring.datasource.password=<Password> spring.jpa.hibernate.ddl-auto=update
Stellen Sie sicher, dass Sie die MySQL-Treiberabhängigkeit in Ihrer pom.xml für Maven oder build.gradle für Gradle haben.
Für Maven:
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency>
Für Gradle:
implementation 'mysql:mysql-connector-java'
Hinweis: Stellen Sie sicher, dass Sie auch die Abhängigkeit spring-boot-starter-data-jpa hinzufügen.
Sie können jetzt Ihre JPA-Entität und das entsprechende Repository definieren. Um beispielsweise eine Benutzer-Entität zu erstellen:
@Entity public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; private String email; <getters, setters and constructions> }
Und eine Repository-Schnittstelle:
@Repository public interface UserRepository extends JpaRepository<User, Long> { }
Erstellen Sie einen Controller, um Anfragen im Zusammenhang mit der Entität Benutzer zu verarbeiten. Der folgende Code zeigt, wie man eine einfache POST-Methode zum Speichern von Benutzerdaten erstellt:
@RestController @RequestMapping("/user") public class UserController { @Autowired private UserService userService; @PostMapping public String saveUser(@RequestBody User user){ try { userService.saveUser(user); return "Success!"; } catch (Exception e) { return e.getMessage(); } } }
Die UserService-Klasse übernimmt das Speichern der Daten in der Datenbank.
spring.application.name=DevOps spring.datasource.url=jdbc:mysql://<End Point>/devops spring.datasource.username=admin spring.datasource.password=<Password> spring.jpa.hibernate.ddl-auto=update
Sie können die Verbindung überprüfen, indem Sie MySQL Workbench verwenden, um eine Verbindung zur AWS RDS-Instanz herzustellen. Geben Sie die Verbindungsdetails wie folgt ein:
Sobald die Verbindung hergestellt ist, können Sie die Datenbanken und Tabellen durchsuchen, um zu bestätigen, dass Ihre Spring Boot-Anwendung mit der MySQL-Datenbank interagiert.
Sie können den POST-Endpunkt mit Postman testen. Senden Sie eine POST-Anfrage an http://localhost:8080/user mit einem JSON-Text:
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency>
Sie sollten eine Antwort „Erfolgreich!“ sehen, wenn alles richtig eingerichtet ist.
Sie haben Ihre Spring Boot-Anwendung jetzt erfolgreich mit einer AWS RDS MySQL-Instanz verbunden. Durch Befolgen der oben genannten Schritte konnten Sie Folgendes tun:
Dieses Setup gewährleistet ein nahtloses und skalierbares Datenbank-Backend für Ihre auf AWS gehostete Spring Boot-Anwendung.
Lassen Sie mich wissen, wenn Sie weitere Hilfe benötigen oder Ideen zur Verbesserung des Setups haben!
Vielen Dank!
Das obige ist der detaillierte Inhalt vonVerbinden von AWS RDS mit Spring Boot. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!