Je suis toujours accro aux paramètres initiaux de Spring Boot + Doma2 + Gradle lors du développement avec Eclipse, je vais donc le résumer moi-même.


build.gradle
dependencies {
  // ...réduction
  implementation 'org.seasar.doma.boot:doma-spring-boot-starter:1.4.0'
  annotationProcessor 'org.seasar.doma:doma-processor:2.35.0'
}
Ajoutez un plugin pour les paramètres Eclipse aux plugins dans build.gradle.
build.gradle
plugins {
  // ...réduction
  id 'com.diffplug.eclipse.apt' version '3.23.0'
}
Exécutez gradle eclipse pour refléter les paramètres.
$ ./gradlew eclipse
Starting a Gradle Daemon (subsequent builds will be faster)
BUILD SUCCESSFUL in 16s
5 actionable tasks: 5 executed
Il peut être confirmé que les paramètres Eclipse (traitement des annotations) sont terminés.


Selon le README de https://github.com/domaframework/doma-spring-boot/tree/1.4.0 Et en gros, créez-le.
Reservation.java
package com.example.demo;
import org.seasar.doma.Entity;
import lombok.Data;
@Data
@Entity
public class Reservation {
	private Integer id;
	private String name;
}
ReservationDao.java
package com.example.demo;
import java.util.List;
import org.seasar.doma.Dao;
import org.seasar.doma.Insert;
import org.seasar.doma.Select;
import org.seasar.doma.boot.ConfigAutowireable;
import org.springframework.transaction.annotation.Transactional;
@ConfigAutowireable
@Dao
public interface ReservationDao {
	@Select
	public List<Reservation> selectAll();
	@Insert
	@Transactional
	public int insert(Reservation reservation);
}
Placez le curseur sur ReservationDao # selectAll et cliquez avec le bouton droit de la souris sur> Doma> Aller au fichier SQL pour générer un fichier SQL vide. (Si vous avez ajouté le plug-in Doma Tools à Eclipse)
selectAll.sql
SELECT
  id,
  name
FROM reservation
ORDER BY name ASC
ReservationService.java
package com.example.demo;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class ReservationService {
	@Autowired
	private ReservationDao reservationDao;
	public List<Reservation> selectAll() {
		return reservationDao.selectAll();
	}
	public int insert(Reservation reservation) {
		return reservationDao.insert(reservation);
	}
}
ReservationController.java
package com.example.demo;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class ReservationController {
	@Autowired
	private ReservationService reservationService;
	@GetMapping(path = "/")
	public List<Reservation> selectAll() {
		return reservationService.selectAll();
	}
	@PostMapping(path = "/")
	public int insert(@RequestBody Reservation reservation) {
		return reservationService.insert(reservation);
	}
}
Réservation au démarrageNous utilisons une base de données en mémoire Java appelée HSQLDB. Si vous placez schema.sql directement sous src / main / resources, vous pouvez exécuter le script de création de table au démarrage.
schema.sql
CREATE TABLE reservation (
  id   IDENTITY,
  NAME VARCHAR(50)
);
POST (inscription)
POST http://localhost:8080 HTTP/1.1
Content-Type: application/json
{
  "id": 1,
  "name": "Échantillon A"
}
réponse;
HTTP/1.1 200 
Content-Type: application/json
Transfer-Encoding: chunked
Date: Sun, 12 Jul 2020 15:09:30 GMT
Connection: close
1
GET (obtenir tout)
GET http://localhost:8080 HTTP/1.1
réponse;
HTTP/1.1 200 
Content-Type: application/json
Transfer-Encoding: chunked
Date: Sun, 12 Jul 2020 15:10:20 GMT
Connection: close
[
  {
    "id": 1,
    "name": "Échantillon A"
  }
]
Dans le cas où le chemin absolu du fichier SQL n'est pas comme prévu et où l'erreur DOMA4019 se produit, comme indiqué ci-dessous.
[DOMA4019] The file "META-INF/com/example/demo/ReservationDao/selectAll.sql" is not found in the classpath. The absolute path is "C:\Git\springboot-doma2-sample\bin\main\META-INF\com\example\demo\ReservationDao\selectAll.sql".
Sur le projet cible, cliquez avec le bouton droit de la souris> Propriétés> Modifier le chemin de construction Java.

Dossier de sortie par défaut du projet ⇒ Modifié dans un dossier de sortie spécifique (bin / main).

L'application créée a été stockée dans Repository. Voyez si vous voulez voir la quantité totale de build.gradle.
Recommended Posts