国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Jadual Kandungan
Kandungan soalan
Penyelesaian
Masalah 1: Membaca fail dengan betul
Soalan 2: Memetik fail dengan betul
Rumah Java Bagaimana untuk menambah imej ke halaman html menggunakan Thymeleaf?

Bagaimana untuk menambah imej ke halaman html menggunakan Thymeleaf?

Feb 09, 2024 pm 05:30 PM

editor php Xigua akan memperkenalkan anda cara menggunakan Thymeleaf untuk menambah imej pada halaman HTML dalam artikel ini. Thymeleaf ialah enjin templat Java sebelah pelayan yang popular yang membolehkan kami menggunakan data dinamik dalam halaman HTML. Menambah imej adalah keperluan biasa dalam reka bentuk web, dan Thymeleaf menyediakan ciri yang mudah tetapi berkuasa untuk mencapai matlamat ini. Dalam kandungan berikut, kita akan belajar cara menggunakan teg dan ungkapan Thymeleaf untuk merujuk dan memaparkan imej. Sama ada anda seorang pemula atau pembangun yang berpengalaman, artikel ini akan memberikan anda panduan berguna untuk menambahkan imej ke halaman HTML anda dengan mudah.

Kandungan soalan

Masalah saya ialah blok thymeleaf saya tidak menunjukkan imej dan ikon pintasan pada halaman html

Saya cuba menggunakan laluan fail:

<img class="logo" th:src="@{src/main/resources/static/logo.png}" alt="logo">

Dan juga cuba menggunakan api rehat:

<img class="logo" th:src="@{/api/v1/logo}" alt="logo">

Dengan pengawal:

@RestController
@RequestMapping("/api/v1/logo")
public class LogoController {

    @GetMapping(produces = MediaType.IMAGE_JPEG_VALUE)
    public Resource getLogo() throws IOException {
        return new ByteArrayResource(Files.toByteArray(new File("src/main/resources/static/logo.png")));
    }
}

Dan saya sentiasa mendapat alt dan bukannya imej...

Penyelesaian

Masalah 1: Membaca fail dengan betul

Jika anda menggunakan konfigurasi lalai, anda meletakkan src/main/resources 的任何內(nèi)容都會復(fù)制到類路徑中。因此,您不應(yīng)在代碼中引用 src/main/resources sebaliknya rujuk pada laluan kelas itu sendiri.

Jika anda menjalankannya secara setempat, ia mungkin masih berfungsi, tetapi sebaik sahaja anda menjalankan fail jar di tempat lain ia akan ranap sepenuhnya.

Sebaik-baiknya anda harus menulis semula pengawal anda sebagai:

// get location from classpath
uri location = getclass().getclassloader().getresource("static/logo.png").touri();
// get file
path file = paths.get(location);
// read bytes
return new bytearrayresource(files.readallbytes(file));

Memandangkan mendapatkan semula sumber daripada fail adalah tugas biasa, anda sebenarnya tidak perlu membaca bait. Anda boleh menggunakan filesystemresource 代替 bytearrayresource:

// get location from classpath
uri location = getclass().getclassloader().getresource("static/logo.png").touri();
// get file
path file = paths.get(location);
return new filesystemresource(file);

Anda juga boleh memendekkan masa ini, kerana mengambil sumber daripada laluan kelas adalah perkara biasa sehingga terdapat kelas classpathresource:

return new classpathresource("static/logo.png");

Bukan itu sahaja, biasanya anda perlu menyediakan sumber web daripada classpath, jadi dalam but spring, classpath:static/ 文件夾或 classpath:public/ 文件夾中的所有內(nèi)容都已經(jīng)在網(wǎng)絡(luò)。所以通常情況下,您的圖像已經(jīng)可以在 http://localhost:8080/logo.png digunakan tanpa memerlukan kaedah pengawal anda.

Jadi biasanya anda boleh mengalih keluar kaedah pengawal itu sepenuhnya.

Soalan 2: Memetik fail dengan betul

Ini membawa kita kepada soalan kedua. Pada masa ini, anda menggunakan @{/api/v1/logo}@{src/main/resources/static/logo.png} untuk merujuk imej anda. thymeleaf akan @{path/to/file} 解釋為上下文相關(guān) url,因此它唯一做的就是在上下文路徑前面添加上下文路徑(如果有的話)并期望該文件在 http://localhost:[serverport ]/[contextpath]/path/to/file.

Tetapi seperti yang kami tetapkan sebelum ini, imej anda sepatutnya tersedia di http://localhost:8080/logo.png 上找到,因此,您應(yīng)該使用 @{/logo.png}:

<img class="logo" th:src="@{/logo.png}" alt="Logo">

Jika ini tidak berkesan, maka:

  • Anda mungkin telah mengkonfigurasi alatan binaan anda dengan salah dan tidak disertakan src/main/resources dalam laluan kelas anda.
  • Anda mungkin telah mengkonfigurasi but spring untuk tidak menyampaikan apa-apa secara automatik dalam classpath:static/classpath:public/ .

Atas ialah kandungan terperinci Bagaimana untuk menambah imej ke halaman html menggunakan Thymeleaf?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1502
276