[JAVA] Spring Boot2-Webanwendungsentwicklung mit Visual Studio Code SQL Server-Verbindung

Einführung

Dies ist die Spring Boot-Version der SQL Server-Verbindungswebanwendung, die mit [hier] erstellt wurde (https://qiita.com/t_skri/items/4e3c11050f93e4761dda).

Umgebung

OS:Windows 10 Pro 64bit DB:SQL Server 2019(Cent OS 8 on Hyper-V) Editor:Visual Studio Code 1.44.2 JDK:AdoptOpenJDK 11.0.6+10 x64

Modellerstellung

Ich habe es mit den folgenden Einstellungen im Frühjahr initializr (https://start.spring.io/) erstellt.

2020-05-05 (1).png

Erweitern Sie die erstellte Vorlage auf "D: \ JAVA \ Project".

pom.xml Der JDBC von SQL Server ist die Version jre8. Ändern Sie ihn daher in die Version jre11. Fügen Sie "mssql-jdbc.version" in die Eigenschaften ein. (Es hat ohne Änderungen funktioniert, aber nur für den Fall)

<properties>
	<java.version>11</java.version>
	<mssql-jdbc.version>8.2.2.jre11</mssql-jdbc.version>
</properties>

application.properties Beschreiben der DB-Verbindungsinformationen.

application.properties


spring.datasource.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.datasource.url=jdbc:sqlserver://xxx:1433;databaseName=Training01;QuotedID=NO
spring.datasource.username=xxx
spring.datasource.password=xxx

Entitätserstellung

Erstellen Sie eine Entität, die Daten von der Datenbank empfängt.

D:\JAVA\Project\bootSample2\src\main\java\com\example\bootSample2\persistence
└─entity
  └─ProductsMaster.java

ProductsMaster.java


package com.example.bootSample2.persistence.entity;

import lombok.Data;

@Data
public class ProductsMaster {
    private String ProductsCode;
    private String ProductsName;
    private Integer UnitPrice;

    public ProductsMaster() {}

    public ProductsMaster(
        String ProductsCode,
        String ProductsName,
        Integer UnitPrice
        ) {
            this.ProductsCode = ProductsCode;
            this.ProductsName = ProductsName;
            this.UnitPrice = UnitPrice;
        }
}

Repository erstellen

Erstellen Sie ein Repository, das eine Verbindung zur Datenbank herstellt und SQL-Anweisungen ausgibt.

D:\JAVA\Project\bootSample2\src\main\java\com\example\bootSample2\persistence
└─repository
  ├─ProductsMasterRepository.java
  └─ProductsMasterRepositoryImpl.java

ProductsMasterRepository.java


package com.example.bootSample2.persistence.repository;

import java.util.List;

import com.example.bootSample2.persistence.entity.ProductsMaster;

public interface ProductsMasterRepository {
    List<ProductsMaster> productsMasterList();
}

ProductsMasterRepositoryImpl.java


package com.example.bootSample2.persistence.repository;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.stereotype.Repository;

import com.example.bootSample2.persistence.entity.ProductsMaster;

@Repository
public class ProductsMasterRepositoryImpl implements ProductsMasterRepository {
	@Autowired
    NamedParameterJdbcTemplate jdbcTemplate;

	@Override
	public List<ProductsMaster> productsMasterList() {
		String sql = "SELECT * FROM ProductsMaster ORDER BY ProductsCode;";

        List<ProductsMaster> pMList = jdbcTemplate.query(sql,
                (rs, rowNum) -> new ProductsMaster(
                        rs.getString("ProductsCode"),
                        rs.getString("ProductsName"),
                        rs.getInt("UnitPrice")
                        )
                );

        return pMList;
	}
}

Serviceerstellung

Erstellen Sie einen Service, der die Geschäftslogik darstellt.

D:\JAVA\Project\bootSample2\src\main\java\com\example\bootSample2
└─service
  ├─ProductsMasterService.java
  └─ProductsMasterServiceImpl.java

ProductsMasterService.java


package com.example.bootSample2.service;

import java.util.List;

import com.example.bootSample2.persistence.entity.ProductsMaster;

public interface ProductsMasterService {
    List<ProductsMaster> productsMasterList();
}

ProductsMasterServiceImpl.java


package com.example.bootSample2.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.example.bootSample2.persistence.entity.ProductsMaster;
import com.example.bootSample2.persistence.repository.ProductsMasterRepository;

@Service
public class ProductsMasterServiceImpl implements ProductsMasterService {
	@Autowired
	ProductsMasterRepository productsMasterRepository;

	@Override
	public List<ProductsMaster> productsMasterList() {
		List<ProductsMaster> pMList = productsMasterRepository.productsMasterList();

        return pMList;
	}
}

Formularerstellung

Erstellen Sie ein Formular, das Eingabe- / Ausgabewerte in der Ansicht empfängt.

D:\JAVA\Project\bootSample2\src\main\java\com\example\bootSample2\web
└─form
  └─ProductsMasterForm.java

ProductsMasterForm.java


package com.example.bootSample2.web.form;

import java.util.List;

import com.example.bootSample2.persistence.entity.ProductsMaster;

import lombok.Data;

@Data
public class ProductsMasterForm {
	private List<ProductsMaster> pmList;
}

Controller erstellen

D:\JAVA\Project\bootSample2\src\main\java\com\example\bootSample2\web
└─controller
  └─ProductsMasterController.java

ProductsMasterController.java


package com.example.bootSample2.web.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;

import com.example.bootSample2.service.ProductsMasterService;
import com.example.bootSample2.web.form.ProductsMasterForm;

@Controller
@RequestMapping("/productsMaster")
public class ProductsMasterController {
	@Autowired
	ProductsMasterService productsMasterService;

	@GetMapping("/index")
	public String indexGet(Model model) {
		ProductsMasterForm productsMasterForm = new ProductsMasterForm();
		productsMasterForm.setPmList(productsMasterService.productsMasterList());

		model.addAttribute("productsMasterForm", productsMasterForm);
		return "productsMaster/index";
	}

}

RootController.java


package com.example.bootSample2.web.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class RootController {
    @GetMapping("/")
    public String root() {
    	return "redirect:productsMaster/index";
    }
}

Ansicht erstellen

Erstellen Sie einen Ordner "productsMaster" unter "D: \ JAVA \ Project \ bootSample2 \ src \ main \ resources \ templates ". Erstellen Sie index.html im Ordner productsMaster.

D:\JAVA\Project\bootSample2\src\main\resources\templates
└─productsMaster
  └─index.html

index.html


<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">

<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Spring5 MVC sqlSample01</title>
</head>
<body>
    <h1>Hello Spring Products List</h1>
    <table border="1">
		<thead>
			<tr>
				<th>Produktcode</th>
				<th>Produktname</th>
				<th>Stückpreis</th>
			</tr>
		</thead>
		<tbody>
			<tr th:each="pm : ${productsMasterForm.pmList}" th:object="${pm}">
		    	<td th:text="*{ProductsCode}"></td>
		    	<td th:text="*{ProductsName}"></td>
		        <td th:text="*{UnitPrice}"></td>
			</tr>
		</tbody>
	</table>
</body>
</html>

Funktionsprüfung

Drücken Sie zum Ausführen die Taste "F5". http://localhost:8080/ Bitte zugreifen. Stellen Sie sicher, dass Sie automatisch zu [http: // localhost: 8080 / productsMaster / index](http: // localhost: 8080 / productsMaster / index) umgeleitet werden.

Es ist in Ordnung, wenn die folgende Seite angezeigt wird. springbootsql1.jpg

Diese Beispielquelle

Auf GitHub hochgeladen. https://github.com/t-skri1/SpringSample04

Zusammenfassung

Der Inhalt der Quelle bleibt unverändert, mit der Ausnahme, dass sich die hierarchische Struktur und der Speicherort der Ansicht von denen ohne Start unterscheiden. Der andere Unterschied ist

--DB-Verbindungsinformationen werden unter "application.properties" beschrieben.

Wird sein.

DevTool wurde hinzugefügt, damit Sie es im laufenden Betrieb bereitstellen können. Das ist sehr praktisch.

Recommended Posts

Spring Boot2-Webanwendungsentwicklung mit Visual Studio Code SQL Server-Verbindung
Spring5 MVC-Webanwendungsentwicklung mit Visual Studio Code SQL Server-Verbindung
Spring Boot2-Webanwendungsentwicklung mit Visual Studio Code Hello World-Erstellung
Spring 5 MVC-Webanwendungsentwicklung mit Visual Studio Code Spring Security-Nutzung 1/3 [Vorbereitung]
Entwicklung von Spring5 MVC-Webanwendungen mit Visual Studio Code Maven-Vorlagenerstellung
Spring 5 MVC-Webanwendungsentwicklung mit Visual Studio Code Spring Security-Verwendung 2/3 [Seitenerstellung 1/2]
Spring 5 MVC-Webanwendungsentwicklung mit Visual Studio Code Spring Security-Verwendung 3/3 [Seitenerstellung 2/2]
Starten Sie die Entwicklung von Webanwendungen mit Spring Boot
Spring5 MVC-Webanwendungsentwicklung mit Visual Studio-Code Hello World Creation
Entwicklung von Spring5 MVC-Webanwendungen mit Visual Studio Code Environment-Konstruktion (Installation von JDK11 / Maven / Tomcat / Visual Studio Code)
Erstellen Sie mit Java + Spring eine Web-APP-Entwicklungsumgebung mit Visual Studio Code
Führen Sie die WEB-Anwendung mit Spring Boot + Thymeleaf aus
Erstellen Sie einen Web-API-Server mit Spring Boot
Erstellen Sie eine Java-Programmentwicklungsumgebung mit Visual Studio Code
[Spring Boot] Erstellung von Webanwendungen
Erstellung einer Java-Webanwendungsentwicklungsumgebung mit VS-Code (struts2)
Spring Boot-Anwendung, die DB-Verbindungseinstellungen mit Parametern angibt
Verwenden Sie PlantUML mit Visual Studio Code
Spring Boot-Anwendungsentwicklung in Eclipse
Überprüfungspunkte für den Spring Boot-Anwendungscode
Hot Deploy mit Spring Boot-Entwicklung
Spring Boot Programmierung mit VS Code
Erstellen Sie eine Anfrage-App mit Spring Boot
Implementieren Sie einen einfachen Web-REST-API-Server mit Spring Boot + MySQL
Erstellen wir eine Buchverwaltungs-Webanwendung mit Spring Boot part1
Lassen Sie uns mit Spring Boot part3 eine Webanwendung für die Buchverwaltung erstellen
Lassen Sie uns mit Spring Boot part2 eine Webanwendung für die Buchverwaltung erstellen
Verarbeitung beim Starten einer Anwendung mit Spring Boot
Versuchen Sie es mit Spring Boot mit VS-Code
Starten Sie die Nginx + Spring Boot-Anwendung mit Docker-Compose
Eine Aufzeichnung zum Einrichten einer Java-Entwicklungsumgebung mit Visual Studio Code
WAR die WEB-Anwendung per Spring Boot und stellen Sie sie auf dem Tomcat-Server bereit
Koexistenz von Flyway in der eingebetteten Datenbank (h2) der Entwicklungsumgebung und der Release-Datenbank (SQL Server) mit Spring Boot
[Spring Boot] Vorsichtsmaßnahmen beim Entwickeln einer Webanwendung mit Spring Boot und beim Ausführen eines Krieges auf einem unabhängigen Tomcat-Server
Erleben Sie .NET 5 mit Docker und Visual Studio Code
Konfigurieren Sie die Spring Boot-Anwendung mit dem Maven Multi-Modul
Ich habe versucht, eine Webanwendung voller Fehler mit Spring Boot zu klonen
Erstellen Sie eine Spring Boot-Umgebung mit Windows + VS-Code
Erstellen Sie mit Docker eine Spring Boot-Entwicklungsumgebung
Erstellen Sie mit Spring Boot 2.0 einen Spring Cloud Config Server mit Sicherheit
Vom Erstellen eines Spring Boot-Projekts bis zum Ausführen einer Anwendung mit VS Code
Wovon ich süchtig war, als ich eine Spring Boot-Anwendung mit VS Code entwickelte
Erste Schritte mit Java-Programmen mit Visual Studio Code
Versuchen Sie, OpenID Connect mit Keycloak (Spring Boot-Anwendung) zu verwenden.
Warum können Sie Java mit Visual Studio Code entwickeln?
Bis Sie mit der Entwicklung mit Spring Boot in Eclipse 1 beginnen
Etwa der Ablauf der Entwicklung von Webanwendungen mit Rails.
Bis Sie mit der Entwicklung mit Spring Boot in Eclipse 2 beginnen
Spring Boot 2.3 Verfügbarkeit von Anwendungen
Mit Spring Boot herunterladen
Memo zur Entwicklung von Webanwendungen mit MVN, Tomcat, JSP / Servlet mit VScode
Implementieren Sie die REST-API mit Spring Boot und JPA (Application Layer).
Die erste WEB-Anwendung mit Spring Boot-Making a Pomodoro Timer-
Schneiden Sie SQL in die Eigenschaftendatei mit jdbcTemplate von Spring Boot aus
Beispiel einer Webanwendung, die mit Spring Boot 1.5 mehrere Datenbanken verwaltet
Versuchen Sie, die Springcode-Such-API mit Spring Boot aufzurufen
Einführung von Spring Boot2, einem Java-Framework für die Webentwicklung (für Anfänger)
Domänengesteuerte Entwicklung mit Java und Spring Boot-Layer und Modulabteilung
[Java] Beispielprojekt zum Entwickeln von Webanwendungen mit Spring Boot