Jadual Kandungan
Soalan
Sambung ke Redis
Anotasi penggunaan antara muka
Penyelesaian mati pucuk antara muka
Rumah Peranti teknologi AI Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.

Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.

Jun 05, 2023 pm 01:33 PM
antara muka ai Mati pucuk

Helo, semua, saya hebat.

Tidak kira berapa kali antara muka dipanggil sekali atau beberapa kali, penyahdayaan antara muka memastikan bahawa operasi pada sumber yang sama hanya akan menghasilkan hasil yang sama. Panggilan berulang kepada permintaan antara muka yang sama beberapa kali harus mempunyai hasil yang sama seperti permintaan tunggal dan tidak boleh menyebabkan ketidakkonsistenan atau kesan sampingan.

Hari ini kami menggunakan kecerdasan buatan untuk mencipta anotasi tersuai untuk menghalang antara muka daripada diminta beberapa kali dalam masa 30 saat dan menggunakan Redis sebagai cache.

Soalan

Jangan banyak cakap, tanya terus:

Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.

Setelah menunggu beberapa minit . . .

1 Buat anotasi tersuai, termasuk tempoh perlindungan antara muka, menghidupkan perlindungan terhadap penyerahan berulang, dsb.

Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.

2 Kemudian buat pemintas

Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.

Di sini kita Siarkan kod teras pemintas:

@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {if (handler instanceof HandlerMethod) {HandlerMethod handlerMethod = (HandlerMethod) handler;RepeatSubmit annotation = handlerMethod.getMethodAnnotation(RepeatSubmit.class);if (annotation != null && annotation.enable()) {String key = buildKey(request);if (StringUtils.hasText(redisTemplate.opsForValue().get(key))) {response.getWriter().write("repeat request, please try again later!");return false;} else {redisTemplate.opsForValue().set(key, Arrays.toString(request.getInputStream().readAllBytes()), annotation.timeout(), TimeUnit.SECONDS);}}}return true;} //创建redis 缓存keyprivate String buildKey(HttpServletRequest request) throws IOException, NoSuchAlgorithmException {String key = useRequestMD5 ? hashRequest(request) : request.getRequestURI();return "repeat-submit:" + key;} //对请求做hash运算private String hashRequest(HttpServletRequest request) throws IOException, NoSuchAlgorithmException {byte[] hashBytes = MessageDigest.getInstance("MD5").digest(request.getInputStream().readAllBytes());StringBuilder sb = new StringBuilder();for (byte b : hashBytes) {sb.append(String.format("%02x", b));}return sb.toString();}
Salin selepas log masuk

3 Daftarkan pemintas

Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.

Penjelasan dan kaedah penggunaan yang diberikan pada penghujung. .

Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.


Kod di atas ialah kod yang paling kritikal.

Sambung ke Redis

Seterusnya kita sambung ke Redis. Versi konfigurasi yang paling diperkemas

spring:data:redis:host: 127.0.0.1 port: 6379
Salin selepas log masuk

Anotasi penggunaan antara muka

@RestControllerpublic class RepeatTestController {@RepeatSubmit@GetMapping("/hello/mono1")public Mono<string> mono(){return Mono.just("Hello Mono -Java North");}@RepeatSubmit@PostMapping ("/hello/mono1")public Mono<string> mono1(@RequestBody User user){return Mono.just("Hello Mono -Java North-"+user.getName());}}</string></string>
Salin selepas log masuk

Mulakan Redis secara setempat, dan kemudian mulakan projek SpringBoot tempatan untuk ujian,

Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.

Ujian antara muka tempatan: Permintaan berulang dalam masa 30 saat perlu dipintas terus

Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.

KEY yang dicache dalam Redis ialah seperti berikut:

Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.

Kod yang berkaitan ada di penghujung artikel, anda boleh menggunakannya secara percuma jika anda memerlukannya!

Penyelesaian mati pucuk antara muka

Mari kita tanya tentang penyelesaian mati pucuk antara muka,

Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.

Tentang Apa pendapat anda jawapan ini?

Pautan kod berkaitan, dialu-alukan untuk melawat:

https://www.php.cn/link/94c0915ab3bcbc61c1c61624dd6d7cd5

Atas ialah kandungan terperinci Hari ini kami menggunakan AI untuk mencipta antara muka untuk mengelakkan penyerahan anotasi berulang.. 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

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.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

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)

Cara menggunakan array char dalam bahasa c Cara menggunakan array char dalam bahasa c Apr 03, 2025 pm 03:24 PM

Arus char menyimpan urutan watak dalam bahasa C dan diisytiharkan sebagai array_name char [saiz]. Unsur akses diluluskan melalui pengendali subskrip, dan elemen berakhir dengan terminator null '\ 0', yang mewakili titik akhir rentetan. Bahasa C menyediakan pelbagai fungsi manipulasi rentetan, seperti strlen (), strcpy (), strcat () dan strcmp ().

Elakkan kesilapan yang disebabkan secara lalai dalam penyataan suis C Elakkan kesilapan yang disebabkan secara lalai dalam penyataan suis C Apr 03, 2025 pm 03:45 PM

Strategi untuk mengelakkan kesilapan yang disebabkan oleh lalai dalam pernyataan suis C: Gunakan enums dan bukannya pemalar, mengehadkan nilai pernyataan kes kepada ahli yang sah dari enum. Gunakan kejatuhan dalam pernyataan kes terakhir untuk membiarkan program terus melaksanakan kod berikut. Untuk pernyataan suis tanpa kejatuhan, selalu tambahkan pernyataan lalai untuk pengendalian ralat atau memberikan tingkah laku lalai.

Apakah fungsi jumlah bahasa C? Apakah fungsi jumlah bahasa C? Apr 03, 2025 pm 02:21 PM

Tiada fungsi jumlah terbina dalam dalam bahasa C, jadi ia perlu ditulis sendiri. Jumlah boleh dicapai dengan melintasi unsur -unsur array dan terkumpul: Versi gelung: SUM dikira menggunakan panjang gelung dan panjang. Versi Pointer: Gunakan petunjuk untuk menunjuk kepada unsur-unsur array, dan penjumlahan yang cekap dicapai melalui penunjuk diri sendiri. Secara dinamik memperuntukkan versi Array: Perlawanan secara dinamik dan uruskan memori sendiri, memastikan memori yang diperuntukkan dibebaskan untuk mengelakkan kebocoran ingatan.

Bagaimana untuk membalikkan hasil! X dalam C? Bagaimana untuk membalikkan hasil! X dalam C? Apr 03, 2025 pm 01:57 PM

Dalam bahasa C, anda boleh menggunakan !! x, tetapi hanya menggunakan dua penukaran boolean, dan ia lebih ringkas dan cekap untuk menggunakan x secara langsung.

Kepentingan lalai dalam pernyataan kes suis (bahasa c) Kepentingan lalai dalam pernyataan kes suis (bahasa c) Apr 03, 2025 pm 03:57 PM

Pernyataan lalai adalah penting dalam pernyataan kes suis kerana ia menyediakan laluan pemprosesan lalai yang memastikan bahawa blok kod dilaksanakan apabila nilai pembolehubah tidak sepadan dengan sebarang pernyataan kes. Ini menghalang tingkah laku atau kesilapan yang tidak dijangka dan meningkatkan keteguhan kod.

Apakah kesan kata kunci statik pada skop pengenal pengguna C? Apakah kesan kata kunci statik pada skop pengenal pengguna C? Apr 03, 2025 pm 12:09 PM

Kata kunci statik mempengaruhi skop dan kitaran hayat pengenal: pembolehubah global: terhad kepada fail sumber, hanya dapat dilihat dalam fail semasa, mengelakkan konflik penamaan. Fungsi: Terhad kepada fail sumber, ia hanya dapat dilihat dalam fail semasa, menyembunyikan butiran pelaksanaan dan meningkatkan enkapsulasi. Pembolehubah Tempatan: Kitaran hayat dilanjutkan kepada keseluruhan program, mengekalkan nilai antara panggilan fungsi, dan boleh digunakan untuk merekodkan keadaan, tetapi memberi perhatian kepada risiko pengurusan ingatan.

Apakah kesan kata kunci extern pada pengenal pengguna dalam bahasa C? Apakah kesan kata kunci extern pada pengenal pengguna dalam bahasa C? Apr 03, 2025 pm 01:00 PM

Kata kunci extern digunakan dalam bahasa C untuk mengisytiharkan pembolehubah dan fungsi luaran. Ia memberitahu pengkompil bahawa pembolehubah atau fungsi ditakrifkan di tempat lain, mengarahkan pengkompil untuk mencari definisi semasa peringkat menghubungkan. Apabila Extern mengisytiharkan pembolehubah luaran, ruang memori tidak diperuntukkan, dan definisi dilakukan dalam fail lain; Apabila Extern mengisytiharkan fungsi luaran, ia tidak termasuk pelaksanaan fungsi, dan pelaksanaannya juga dilakukan dalam fail lain. Penggunaan kata kunci extern biasanya digabungkan dengan fail header, yang kondusif untuk pengurusan kod dan mengelakkan pengisytiharan berulang. Adalah sangat penting untuk memahami pengendalian Extern kompilasi pelbagai fail dan penamaan konflik, dan ia memainkan peranan penting dalam proses menghubungkan.

Apakah keutamaan bahasa C! X? Apakah keutamaan bahasa C! X? Apr 03, 2025 pm 02:06 PM

Non-operator logik (!) Mempunyai keutamaan di sebelah kurungan, yang bermaksud bahawa dalam ungkapan, ia akan mendahului kebanyakan pengendali lain. Memahami keutamaan bukan sahaja memerlukan hafalan, tetapi lebih penting lagi, memahami logik dan perangkap yang berpotensi di belakangnya untuk mengelakkan kesilapan yang tidak dapat dikesan dalam ekspresi kompleks. Menambah kurungan dapat menjelaskan niat ekspresi, meningkatkan kejelasan kod dan pemeliharaan, dan mencegah tingkah laku yang tidak dijangka.

See all articles