Panduan untuk Musim Semi di Eclipse STS

Java Teratas

Saya baru sahaja mengumumkan kursus Learn Spring yang baru , yang berfokus pada asas-asas Spring 5 dan Spring Boot 2:

>> SEMAK KURSUS

1. Gambaran keseluruhan

Artikel ini menggambarkan beberapa ciri berguna dari Eclipse Spring Tool Suite (STS) IDE, yang berguna semasa mengembangkan aplikasi Spring.

Mula-mula kami menunjukkan faedah menggunakan STS berbanding dengan cara pembuatan aplikasi tradisional dengan Eclipse.

Selepas itu, kami memfokuskan pada cara bootstrap aplikasi, cara menjalankannya dan bagaimana menambahkan dependensi tambahan. Akhirnya kami membuat kesimpulan dengan menambahkan hujah aplikasi.

2. Ciri-ciri Utama STS

STS adalah persekitaran pengembangan berasaskan Eclipse yang disesuaikan untuk pengembangan aplikasi Spring.

Ini menyediakan lingkungan yang siap digunakan untuk menerapkan, men-debug, menjalankan dan menyebarkan aplikasi Anda. Ia juga merangkumi integrasi untuk Pivotal tc Server, Pivotal Cloud Foundry, Git, Maven dan AspectJ. STS dibina sebagai tambahan di atas keluaran terbaru Eclipse.

2.1. Konfigurasi Projek

STS memahami hampir semua struktur projek Java yang paling biasa. Ia menguraikan fail konfigurasi dan kemudian memaparkan maklumat terperinci mengenai kacang yang ditentukan, kebergantungan, ruang nama yang digunakan dan sebagai tambahan ekstrak gambaran keseluruhan untuk stereotaip tertentu.

2.2. Gambaran Keseluruhan Ciri STS

Eclipse STS mengesahkan projek anda dan memberikan pembaikan cepat untuk aplikasi anda. Sebagai contoh, ketika bekerja dengan Spring Data JPA, IDE dapat digunakan untuk mengesahkan nama kaedah pertanyaan (lebih lanjut mengenai ini di bahagian 6).

STS juga memberikan pandangan grafik mengenai semua kaedah kacang dan hubungan antara mereka. Anda mungkin ingin melihat lebih dekat pada editor grafik yang disertakan dengan STS dengan melihat paparan yang tersedia di bawah tetingkap menu , paparan paparan dan kemudian Musim Semi .

STS juga menawarkan ciri berguna tambahan lain yang tidak terhad kepada aplikasi Spring sahaja. Pembaca disarankan untuk melihat senarai penuh ciri yang terdapat di sini.

3. Pembuatan Permohonan Musim Bunga

Mari kita mulakan dengan bootstrap aplikasi mudah. Tanpa STS, aplikasi Spring biasanya dibuat dengan menggunakan laman web Spring Initializer atau Spring Boot CLI. Ini mungkin dipermudah dengan mengklik Buat Spring Spring Starter Project dari papan pemuka anda di STS.

Pada skrin New Spring Starter Project gunakan lalai atau buat penyesuaian anda sendiri dan kemudian pergi ke skrin seterusnya. Pilih Web dan klik selesai. Pom.xml anda kini kelihatan serupa dengan ini:

 org.springframework.boot spring-boot-starter-parent 1.3.6.RELEASE     UTF-8 1.8    org.springframework.boot spring-boot-starter-web   org.springframework.boot spring-boot-starter-test test  

Versi Spring Boot anda mungkin berbeza tetapi versi terkini selalu terdapat di sini.

4. Menjalankan Aplikasi

Aplikasi yang disebutkan di atas dapat dimulakan dengan mengklik kanan projek dan memilih run sebagai Spring Boot App . Tanpa STS, kemungkinan besar anda akan menjalankan aplikasi dari baris perintah dengan arahan berikut:

$ mvn spring-boot:run

Secara automatik aplikasi Spring dimulakan dengan Tomcat berjalan di port 8080. Pada ketika ini, aplikasi bermula di port 8080 dan pada dasarnya tidak melakukan apa-apa lagi kerana kami belum melaksanakan kod apa pun. Bahagian 8 menunjukkan cara menukar port lalai.

5. Pembalakan dan ANSI Console

Apabila anda menjalankan projek dari IDE menggunakan perintah run, anda akan melihat bahawa konsol mengeluarkan beberapa penyataan log berkod warna yang bagus. Sekiranya anda ingin mematikannya, pergi untuk menjalankan konfigurasi … dan lumpuhkan kotak centang Aktifkan output konsol ANSI pada tab Spring Boot . Sebagai alternatif anda juga boleh melumpuhkannya dengan menetapkan nilai sifat dalam fail application.properties .

spring.output.ansi.enabled=NEVER

Maklumat lebih lanjut mengenai konfigurasi log aplikasi anda boleh didapati di sini.

6. Pemeriksaan Nama Pertanyaan JPA

Kadang-kadang melaksanakan lapisan akses data mungkin merupakan aktiviti yang membebankan. Banyak kod pelat boiler mungkin perlu ditulis untuk mewujudkan pertanyaan mudah dan melakukan penomboran. Spring Data JPA (JPA) bertujuan untuk memudahkan pelaksanaan lapisan akses data sedemikian. Bahagian ini menerangkan beberapa faedah menggunakan JPA bersama dengan STS.

Untuk memulakan, tambahkan kebergantungan berikut untuk JPA ke pom.xml yang dihasilkan sebelumnya :

 org.springframework.boot spring-boot-starter-data-jpa   com.h2database h2 

Anda mungkin menyedari bahawa versi belum dinyatakan dalam deklarasi di atas. Ini disebabkan oleh fakta bahawa kebergantungan diurus dari pom.xml induk :

 org.springframework.boot spring-boot-starter-parent 1.3.6.RELEASE 

Untuk membuat JPA berfungsi, anda mesti menentukan pengurus entiti dan pengurus transaksi dengan betul. Walau bagaimanapun, Spring mengkonfigurasikannya secara automatik untuk anda. Yang tinggal hanya untuk pembangun adalah membuat kelas entiti sebenar. Entiti ini diuruskan oleh pengurus entiti, yang seterusnya dibuat oleh wadah. Mari kita contohnya membuat kelas entiti Foo seperti:

@Entity public class Foo implements Serializable { @Id @GeneratedValue private Integer id; private String name; // Standard getters and setters }

Bekas mengimbas semua kelas yang diberi penjelasan dengan @Entity dari akar pakej konfigurasi. Seterusnya kami membuat repositori JPA untuk entiti Foo :

public interface FooRepository extends JpaRepository { public Foo findByNames(String name); }

Pada ketika ini anda mungkin telah memperhatikan bahawa IDE kini menandakan kaedah pertanyaan ini dengan pengecualian:

Invalid derived query! No property names found for type Foo! 

This is of course due to the fact that we have accidentally written an ‘s' in the method name of the JPA repository. To fix this remove the spurious ‘s' like so:

public Foo findByName(String name);

Notice that no @EnableJpaRepositories was used on the config class. This is because the container's AutoConfigration pre-registers one for the project.

7. Jar Type Search

“Jar Type Search” is a feature that was introduced in STS 3.5.0. It provides content-assisted proposals in projects for classes that are not (yet) on the classpath. STS may help you adding dependencies to your POM file in case they are not yet on the classpath.

For example, let us add a line to the Foo entity class. For this example to work properly, please ensure first that the import statement for java.util.List is already present. Now we may add Google Guava as follows:

private List strings = Lists // ctrl + SPACE to get code completion

The IDE will suggest several dependencies to be added to the classpath. Add the dependency from com.google.common.collect,press return and add the dependency from Guava. The Guava jar will now automatically be added to your pom.xml file like so:

 com.google.guava guava 19.0  

As of version STS 3.8.0, you get a confirmation dialog box before STS makes its changes to your pom.xml.

8. Adding Application Arguments

One of the other powerful features of Spring is the support of external configurations which can be passed to an application in several ways, e.g. as command-line arguments, specified in properties or YAML files or as system properties. In this section, we focus on adding a configuration option as application start argument using STS. This is illustrated by configuring Tomcat to start on a different port.

In order to run an application on a Tomcat port other than the default, you may use the command below, where a custom port is specified as command-line argument:

mvn spring-boot:run -Drun.arguments="--server.port=7070"

When using STS, you have go to the run menu. Select run configurations… from the Run Configurations dialog, select Spring Boot App from the left panel and select demo – DemoApplication (this will be different if you did not select the default project). From (x)= Arguments tab type in the Program Arguments window

--server.port=7070

and run. You should see output in your console similar to the output that is shown below:

. . 2016-07-06 13:51:40.999 INFO 8724 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 7070 (http) 2016-07-06 13:51:41.006 INFO 8724 --- [ main] com.baeldung.boot.DemoApplication : Started DemoApplication in 6.245 seconds (JVM running for 7.34)

9. Conclusion

Dalam artikel ini kami telah menunjukkan asas-asas mengembangkan projek Spring di STS. Beberapa perkara yang kami tunjukkan adalah pelaksanaan aplikasi di STS, dukungan selama pengembangan Spring Data JPA dan penggunaan argumen baris perintah. Walau bagaimanapun, terdapat banyak lagi ciri berguna yang mungkin digunakan semasa pembangunan kerana STS menawarkan pelbagai ciri.

The pelaksanaan penuh artikel ini boleh didapati dalam projek github - ini adalah projek berasaskan Eclipse, jadi ia harus mudah untuk import dan berjalan kerana ia adalah.

Bahagian bawah Java

Saya baru sahaja mengumumkan kursus Learn Spring yang baru , yang berfokus pada asas-asas Spring 5 dan Spring Boot 2:

>> SEMAK KURSUS