Rumah  >  Artikel  >  Java  >  Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

WBOY
WBOYke hadapan
2023-05-11 09:25:051623semak imbas

    SpringBoot Overview

    SpringBoot ialah rangka kerja baharu yang disediakan oleh pasukan Pivotal, yang direka untuk memudahkan aplikasi Spring The persediaan awal dan proses pembangunan.

    Semua orang pernah mengalami program SpringBoot Mari kita lihat semula dan lihat apakah fungsi utama SpringBoot, iaitu untuk memudahkan proses pembinaan dan pembangunan Spring.

    AsalSpring Terdapat masalah berikut dalam pembinaan dan pembangunan persekitaran:

    • Kebergantungan konfigurasi yang rumit

    • Persediaan yang rumit

    SpringBoot Kelebihan program ini ialah ia secara automatik mengkonfigurasi kelemahan Spring

    • . Ini digunakan untuk menyelesaikan masalah Spring konfigurasi program yang menyusahkan

    • memulakan kebergantungan. Ini digunakan untuk menyelesaikan masalah Spring tetapan pergantungan program yang menyusahkan

    • fungsi tambahan (pelayan terbina dalam,…). Apabila kami memulakan program SpringBoot, kami tidak menggunakan tomcat tempatan mahupun pemalam tomcat, tetapi menggunakan SpringBoot pelayan terbina dalam.

    Seterusnya mari kita bincangkan tentang kebergantungan permulaan SpringBoot

    Kebergantungan permulaan

    Kami menggunakan kaedah Spring Initializr untuk mencipta Maven projek pom.xml Fail konfigurasi secara automatik menjana banyak kebergantungan yang mengandungi starter, seperti yang ditunjukkan di bawah

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    Kebergantungan ini ialah kebergantungan permulaan. Seterusnya, mari kita terokai cara ia berfungsi .

    Teroka projek induk

    Daripada fail di atas, anda boleh melihat bahawa projek induk ditentukan Kami memasuki projek induk dan mendapati projek induk lain dinyatakan dalam projek induk, sebagai ditunjukkan dalam rajah di bawah

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    Kemudian masukkan projek induk Dalam projek ini, kita boleh melihat struktur kandungan konfigurasi seperti yang ditunjukkan di bawah

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas<.>

    Teg

    dalam gambar di atas mentakrifkan versi setiap pergantungan perisian teknikal, yang mengelakkan kami mempertimbangkan isu keserasian versi apabila menggunakan teknologi perisian yang berbeza. Dalam properties kami dapati versi properties dan servlet seperti yang ditunjukkan di bawah mysql

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    teg adalah untuk penguncian versi kebergantungan, tetapi kebergantungan yang sepadan adalah. tidak diimport. Jika projek kami memerlukan kebergantungan itu, kami hanya perlu memperkenalkan tanggungan dependencyManagement dan groupid tanpa menentukan artifactId. version

    Teg

    juga mengunci versi pemalam, seperti yang ditunjukkan di bawahbuild

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    Selepas membaca konfigurasi

    dalam projek induk, Sukar untuk memahami mengapa tiada satu pun kebergantungan projek kami dikonfigurasikan pom.xml. version

    Teroka kebergantungan
    Kebergantungan berikut dikonfigurasikan dalam

    dalam projek yang kami buat pom.xml

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    Pergi ke kebergantungan dan lihat akan mendapati bahawa ia memperkenalkan kebergantungan berikut:

    pom.xml

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas yang memperkenalkan kebergantungan

    dan

    , itulah sebabnya tiada kebergantungan dalam projek kami Sebab mengapa anda masih boleh menggunakan anotasi dalam spring-web biasanya dengan bergantung pada kedua-dua pakej ini. spring-webmvcspringMVC bergantung pada

    Dari namanya, kami pada asasnya boleh mengesahkan bahawa ia bergantung pada

    secara dalaman, jadi projek kami boleh bermula seperti biasa. spring-boot-starter-tomcattomcatKesimpulan: Jika anda perlu menggunakan teknologi pada masa hadapan, anda hanya perlu memperkenalkan kebergantungan permulaan yang sepadan dengan teknologi

    Ringkasan

    pemula

    Nama projek biasa dalam

    • tentukan semua koordinat projek yang digunakan oleh projek semasa untuk mengurangkan konfigurasi pergantungan

      SpringBoot

    ibu bapa

      Semua projek yang akan diwarisi oleh projek
    • mentakrifkan beberapa nombor versi koordinat (pengurusan pergantungan, bukan pergantungan) untuk mencapai tujuan mengurangkan konflik pergantungan

    • spring-boot-starter-parent (2.5.0) dan spring-boot-starter-parent (2.4.6) mempunyai sejumlah 57 versi koordinat berbeza

    Sebenar pembangunan

    Apabila menggunakan koordinat arbitrari, hanya tulis G dan A dalam GAV, V disediakan oleh SpringBoot

    G: groupid

    A: artifactId

    V: versi

    Jika ralat koordinat berlaku, nyatakan versi sekali lagi (berhati-hati tentang konflik versi)

    Atur cara bermula

    Setiap SpringBoot dicipta Program ini mengandungi kelas yang serupa dengan yang berikut Kami memanggil kelas ini sebagai kelas but

    rreee

    Nota:

    • SpringBoot Apabila mencipta projek, gunakan balang Kaedah pembungkusan

    • SpringBoot ialah titik masuk projek Menjalankan kaedah main boleh memulakan projek

    kerana kami adalah

    Kebergantungan dikonfigurasikan dalam pom.xml, dan kebergantungan ini tahu bahawa ia bergantung pada spring-boot-starter-web melalui pembelajaran sebelumnya, jadi menjalankan kaedah tomcat boleh menggunakan main untuk memulakan projek kami. tomcat

    Tukar pelayan web

    Sekarang kita mulakan projek menggunakan pelayan

    , bolehkah kita menggunakan pelayan tomcat dan bukannya tomcat berada dalam jetty kami? Perbincangan lanjutan jetty Pelayan yang digunakan oleh pelayan peribadi. Untuk menukar pelayan maven, anda perlu mengecualikan pelayan lalai maven Bagaimana untuk mengecualikannya? Menggunakan web tag tomcat

    @SpringBootApplication
    public class Springboot01QuickstartApplication {
        
        public static void main(String[] args) {
            SpringApplication.run(Springboot01QuickstartApplication.class, args);
        }
    }
    exclusion Sekarang bolehkah kita menjalankan kelas bootstrap? Cuba jalankannya. Maklumat log yang dicetak adalah seperti berikut:

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantasAtur cara dihentikan terus. Ini kerana jika anda mengecualikan pelayan

    , tidak akan ada pelayan dalam program. Jadi pada masa ini kita bukan sahaja perlu mengecualikan pelayan

    , tetapi juga memperkenalkan pelayan tomcat. Dalam tomcat, kerana kebergantungan permulaan jetty ialah pom.xml

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <exclusions>
            <exclusion>
                <artifactId>spring-boot-starter-tomcat</artifactId>
                <groupId>org.springframework.boot</groupId>
            </exclusion>
        </exclusions>
    </dependency>
    jetty, jalankan kelas but sekali lagi Anda boleh lihat dalam maklumat log bahawa pelayan

    jetty. digunakan.

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    Ringkasan:

    Dengan menukar pelayan, tidak sukar untuk mencari bahawa apabila menggunakan untuk menukar teknologi, kita hanya perlu mengimport permulaan kebergantungan teknologi.
    SpringBootPerbandingan antara spring dan springboot

    Selepas kita menyelesaikan kes pengenalan dalam artikel sebelum ini, kita dapati bahawa terdapat perbezaan besar antara kedua-duanya:

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantasKoordinat

      Koordinat dalam program perlu ditulis sendiri, dan terdapat banyak koordinat
    • Spring

    • Koordinat dalam program dijana secara automatik dengan menyemak apabila kami mencipta projek
    • SpringBoot

    • kelas konfigurasi web3.0

      Program perlu menulis kelas konfigurasi ini dengan sendirinya. Semua orang telah menulis kelas konfigurasi ini sebelum ini, dan ia mesti berasa sangat rumit
    • Spring

    • Program ini tidak memerlukan kami menulisnya sendiri
    • SpringBoot

    • Kelas konfigurasi

      Kelas konfigurasi atur cara perlu ditulis sendiri. Program
    • tidak memerlukan penulisan.

      Spring/SpringMVCSpringBoot

    • Nota: Berasaskan idea
    pembinaan pantas
    projek memerlukan sambungan Internet.

    Spring InitializrSpringBootProjek pembinaan laman web rasmi

    Sebab projek

    boleh dibina dengan cepat dalam kotak masuk adalah kerana

    menggunakan komponen yang disediakan oleh laman web rasmi dengan cepat membina projek

    direalisasikan. Jadi bagaimana untuk membina projek di laman web rasmi? Bina melalui langkah berikutSpringBootIdeaMasukkan tapak web rasmi SpringBootSpringBoot

    Masukkan

    tapak web rasmi dan seret ke bahagian bawah untuk melihat kandungan berikut

    SpringBoot

    Kemudian klik hiperpautan Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas dan ia akan melompat ke halaman berikut

    Spring Initializr

    Adakah kandungan halaman ini kelihatan biasa? gunakan Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas untuk membina dengan cepat

    Antara muka projek pada asasnya adalah sama. Masukkan maklumat yang sepadan pada halaman di atas

    IdeaPilih kebergantungan SpringBoot

    Pilih

    Anda boleh mengklik butang

    di penjuru kanan sebelah atas gambar di atas, dan antara muka berikut akan muncul

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    生成工程

    以上步骤完成后就可以生成 SpringBoot 工程了。在页面的最下方点击 GENERATE CTRL + 回车 按钮生成工程并下载到本地,如下图所示

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    打开下载好的压缩包可以看到工程结构和使用 Idea 生成的一模一样,如下图

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    而打开 pom.xml 文件,里面也包含了父工程和 Spring Web 的依赖。

    通过上面官网的操作,我们知道 Idea 中快速构建 SpringBoot 工程其实就是使用的官网的快速构建组件,那以后即使没有 Idea 也可以使用官网的方式构建 SpringBoot 工程。

    SpringBoot工程快速启动

    问题引入

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    以后我们和前端开发人员协同开发,而前端开发人员需要测试前端程序就需要后端开启服务器,这就受制于后端开发人员。为了摆脱这个受制,前端开发人员尝试着在自己电脑上安装 TomcatIdea ,在自己电脑上启动后端程序,这显然不现实。

    我们后端可以将 SpringBoot 工程打成 jar 包,该 jar 包运行不依赖于 TomcatIdea 这些工具也可以正常运行,只是这个 jar 包在运行过程中连接和我们自己程序相同的 Mysql 数据库即可。这样就可以解决这个问题,如下图

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    那现在问题是如何打包呢?

    打包

    由于我们在构建 SpringBoot 工程时已经在 pom.xml 中配置了如下插件

    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
    </plugin>

    所以我们只需要使用 Mavenpackage 指令打包就会在 target 目录下生成对应的 Jar 包。

    注意:该插件必须配置,不然打好的 jar 包也是有问题的。

    启动

    进入 jar 包所在位置,在 命令提示符 中输入如下命令

    java -jar 包名.jar

    执行上述命令就可以看到 SpringBoot 运行的日志信息

    Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas

    Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah pembinaan laman web rasmi SpringBoot dan permulaan pantas. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    Kenyataan:
    Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam