Saat membangun proyek baru, Anda perlu menambahkan dependensi JPA dan H2
Ketergantungan file pom adalah sebagai berikut:
<? Xml Version = "1.0" encoding = "UTF-8"?> <Project xmlns = "http://maven.apache.org/pom/4.0.0" xmlns: xsi = "http://www.w3.org/2001/xmlschema XSI: schemalocation = "http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <ModelVersion> 4.0.0 </ModelVersion> <groupid> com.chhlri. <ArTifactId> Springboot-H2 </artifactId> <version> 0.0.1-Snapshot </version> <packaging> Jar </packaging> <name> Springboot-H2 </name> <mrecpriping> Proyek Demo untuk Spring Boot H2 </Deskripsi> <partent> <groupid> org.springframework. Boots </description> <partent> <groupid> org.springframework. Boots </groupid> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.3.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <Project.Reporting.OutputEncoding> utf-8 </project.reporting.outputEncoding> <Java.Version> 1.7 </java.version> </Properties> </ArtifAcid> <ArtActid> org.springframework.boot </groupid> <ArtifacTid> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId> org.springframework.boot </groupid> <ArtifactId> spring-boot-starter-test </stifactid> <scope> test </cope> </dependency> </dependency> </dependency> <build> <dlugin> <groupId> <groupid> org.springframework.oot. <ArTifactId> spring-boot-maven-plugin </artifactid> </lugin> </lugin> </build> </poject>
paket com.chhliu.springboot.h2.entity; impor java.math.bigdecimal; impor javax.persistence.column; impor javax.persistence.entity; impor javax.persistence.generatedValue; impor javax.persistence.generationType; impor javax.persistence.id; @Entity Public Class User {@id @GeneratedValue (Strategy = GenerationType.Auto) Private Long ID; @Column Private String username; @Column nama string pribadi; @Column usia pendek pribadi; @Column Private BigDecimal Balance; ... menghilangkan metode gettter dan setter} paket com.chhliu.springboot.h2.repository; impor org.springframework.data.jpa.repository.jparepository; impor org.springframework.stereotype.repository; impor com.chhliu.springboot.h2.entity.user; @Repository Public Interface UserRepository memperluas jParepository <user, long> {} paket com.chhliu.springboot.h2.controller; impor org.springframework.beans.factory.annotation.Autowired; impor org.springframework.web.bind.annotation.getmapping; impor org.springframework.web.bind.annotation.pathvariable; impor org.springframework.web.bind.annotation.RestController; impor com.chhliu.springboot.h2.entity.user; impor com.chhliu.springboot.h2.repository.userrepository; @RestController kelas publik usercontroller {@autowired private userrepository userrepository; @GetMapping ("/user/{id}") // Perhatikan bahwa anotasi getMapping digunakan di sini, dan fungsi anotasi ini mirip dengan @RequestMapping (value = "/user/{id}", metode = @pathod.get), @postmapping anotasi yang sama dengan pengguna publik. }}# Server Port Number Server.port = 7900 # Apakah akan menghasilkan pernyataan DDL spring.jpa.generate-ddl = false # apakah akan mencetak pernyataan SQL spring.jpa.show-sql = true # secara otomatis menghasilkan DDL. Karena DDL spesifik ditentukan, diatur ke tidak ada spring.jpa.hibernate.ddl-auto = tidak ada # Gunakan database h2 spring.datasource.platform = h2 # Tentukan lokasi file skema untuk menghasilkan database spring.dataSource.schema = classpath: scrip.sql # spesifik spring.datasource.data = classpath: data.sql # konfigurasikan informasi pencetakan log logging.level.root = info logging.level.org.hibernate = info logging.level.org.hibernate.type.descriptor.sql.basicbinder = trace logging.level.org.hibernate.type.descriptor.sql.basicextractor = jejak logging.level.com.itmuch = debug
Masukkan URL berikut di browser Anda: http: // localhost: 7900/user/4
Anda dapat melihat hasil tes
{"id": 4, "nama pengguna": "user4", "name": "Maliu", "Age": 20, "Balance": 100.00}
Jelaskan bahwa integrasi kami baik -baik saja
paket com.chhliu.springboot.h2; impor org.junit.assert; impor org.junit.test; impor org.junit.runner.runwith; impor org.springframework.beans.factory.annotation.Autowired; impor org.springframework.boot.test.context.springboottest; impor org.springframework.test.context.junit4.springrunner; impor com.chhliu.springboot.h2.entity.user; impor com.chhliu.springboot.h2.repository.userrepository; @Runwith (springrunner.class) @springboottest kelas publik springbooth2applicationTest {@Autowired private userrepository repository; @Test public void test () {user u = repository.findone (1l); Assert.assertequals ("kasus uji yang berhasil", "zhang san", u.getname ()); }} Saya menemukan tesnya baik -baik saja!
Karena H2 adalah database memori relasional, ketika program dimulai, tabel akan dibuat dalam memori dan data akan disimpan dalam memori. Setelah memulai kembali program, data dalam memori akan dihapus secara otomatis, yang dapat digunakan dengan baik untuk pengujian unit di lapisan DAO dan pengujian unit di lapisan layanan, sehingga seluruh program tidak akan bergantung pada database tertentu, dan juga meningkatkan efisiensi pengujian unit.
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.