Inhaltsverzeichnis
Umgebungsvorbereitung
Listenfunktion
添加功能
添加功能状态处理
Heim Java javaLernprogramm So verwenden Sie Java SSM, um das gemeinsame Debuggen von Front-End- und Back-End-Protokollen zu implementieren

So verwenden Sie Java SSM, um das gemeinsame Debuggen von Front-End- und Back-End-Protokollen zu implementieren

May 05, 2023 pm 10:31 PM
java ssm

Umgebungsvorbereitung

Die Projektstruktur ist dieselbe wie zuvor:

So verwenden Sie Java SSM, um das gemeinsame Debuggen von Front-End- und Back-End-Protokollen zu implementieren

Wir fügen neue statische Ressourcen hinzu:

So verwenden Sie Java SSM, um das gemeinsame Debuggen von Front-End- und Back-End-Protokollen zu implementieren

Da statische Ressourcen hinzugefügt werden, fängt SpringMVC sie ab und alle statischen Ressourcen müssen konfiguriert werden die Konfigurationsklasse von SpringConfig. Release:

Nachdem unser neuer SpringMvcSupport

@Configuration
public class SpringMvcSupport extends WebMvcConfigurationSupport {
    @Override
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/pages/**").addResourceLocations("/pages/");
        registry.addResourceHandler("/css/**").addResourceLocations("/css/");
        registry.addResourceHandler("/js/**").addResourceLocations("/js/");
        registry.addResourceHandler("/plugins/**").addResourceLocations("/plugins/");
    }
}
Nach dem Login kopieren

konfiguriert ist, müssen wir SpringMvcSupport in SpringMvcConfig scannen:

@Configuration
@ComponentScan({"com.nefu.controller","com.nefu.config"})
@EnableWebMvc
public class SpringMvcConfig {
}
Nach dem Login kopieren

Als nächstes müssen wir alle Listenabfragen, Hinzufügungen, Änderungen, Löschungen und andere Funktionen nacheinander implementieren eins.

Listenfunktion

So verwenden Sie Java SSM, um das gemeinsame Debuggen von Front-End- und Back-End-Protokollen zu implementieren

Anforderungen: Senden Sie nach dem Laden der Seite eine asynchrone Anfrage an den Hintergrund, um die Listendaten zur Anzeige abzurufen.

  • Finden Sie die Hook-Funktion der Seite, created()created()

  • created()方法中调用了this.getAll()方法

  • 在getAll()方法中使用axios发送异步请求从后台获取数据

  • 访问的路径为http://localhost/books

  • 返回数据

返回数据res.data的内容如下:

{
"data": [
{
"id": 1,
"type": "计算机理论",
"name": "Spring实战 第五版",
"description": "Spring入门经典教程,深入理解Spring原理技术内幕"
},
{
"id": 2,
"type": "计算机理论",
"name": "Spring 5核心原理与30个类手写实践",
"description": "十年沉淀之作,手写Spring精华思想"
},...
],
"code": 20041,
"msg": ""
}

发送方式:

getAll() {
    //发送ajax请求
    axios.get("/books").then((res)=>{
        this.dataList = res.data.data;
    });
}
Nach dem Login kopieren

So verwenden Sie Java SSM, um das gemeinsame Debuggen von Front-End- und Back-End-Protokollen zu implementieren

添加功能

So verwenden Sie Java SSM, um das gemeinsame Debuggen von Front-End- und Back-End-Protokollen zu implementieren

需求:完成图片的新增功能模块

  1. 找到页面上的新建按钮,按钮上绑定了@click="handleCreate()"方法

  2. 在method中找到handleCreate方法,方法中打开新增面板

  3. 新增面板中找到确定按钮,按钮上绑定了@click="handleAdd()"方法

  4. 在method中找到handleAdd方法

  5. 在方法中发送请求和数据,响应成功后将新增面板关闭并重新查询数据

handleCreate打开新增面板

handleCreate() {
    this.dialogFormVisible = true;
},
Nach dem Login kopieren

handleAdd方法发送异步请求并携带数据

handleAdd () {
    //发送ajax请求
    //this.formData是表单中的数据,最后是一个json数据
    axios.post("/books",this.formData).then((res)=>{
        this.dialogFormVisible = false;
        this.getAll();
    });
}
Nach dem Login kopieren

添加功能状态处理

基础的新增功能已经完成,但是还有一些问题需要解决下:

需求:新增成功是关闭面板,重新查询数据,那么新增失败以后该如何处理?

1.在handlerAdd方法中根据后台返回的数据来进行不同的处理

2.如果后台返回的是成功,则提示成功信息,并关闭面板

3.如果后台返回的是失败,则提示错误信息

(1)修改前端页面

handleAdd () {
    //发送ajax请求
    axios.post("/books",this.formData).then((res)=>{
        //如果操作成功,关闭弹层,显示数据
        if(res.data.code == 20011){
            this.dialogFormVisible = false;
            this.$message.success("添加成功");
        }else if(res.data.code == 20010){
            this.$message.error("添加失败");
        }else{
            this.$message.error(res.data.msg);
        }
    }).finally(()=>{
        this.getAll();
    });
}
Nach dem Login kopieren

(2)后台返回操作结果,将Dao层的增删改方法返回值从void改成int

created() Methode namens this.getAll()< /code>Methode

Verwenden Sie axios, um eine asynchrone Anfrage zu senden, um Daten aus dem Hintergrund in der getAll()-Methode abzurufen

So verwenden Sie Java SSM, um das gemeinsame Debuggen von Front-End- und Back-End-Protokollen zu implementieren

Der Zugriffspfad ist http://localhost/ Bücher

Daten zurückgeben

🎜Der Inhalt der zurückgegebenen Daten res.data ist wie folgt:🎜
🎜{
"data" : [
{< br/>            "id": 1,
             "type": "Computer Theory",
            "name": "Spring Practical Fifth Edition",
         " Beschreibung": „Spring Beginner's Classic Tutorial, tiefgreifendes Verständnis der Spring-Prinzipien und technische Insider"
                                            der Ansammlung, die Essenz der Handschrift Frühlingsgedanken"
           },...
                                          br/> "code": 20041,
"msg": ""
}🎜🎜Sendemethode:🎜
public interface BookDao {
//    @Insert("insert into tbl_book values(null,#{type},#{name},#{description})")
    @Insert("insert into tbl_book (type,name,description) values(#{type},#{name},#{description})")
    public int save(Book book);
    @Update("update tbl_book set type = #{type}, name = #{name}, description = #{description} where id = #{id}")
    public int update(Book book);
    @Delete("delete from tbl_book where id = #{id}")
    public int delete(Integer id);
    @Select("select * from tbl_book where id = #{id}")
    public Book getById(Integer id);
    @Select("select * from tbl_book")
    public List<Book> getAll();
}
Nach dem Login kopieren
🎜So verwenden Sie Java SSM zur Implementierung von Front- Gemeinsames Debuggen von End- und Back-End-Protokollen🎜🎜Funktionen hinzufügen🎜🎜Wie />🎜🎜Anforderungen: Vervollständigen Sie das neue Funktionsmodul des Bildes🎜<ol class=🎜🎜Suchen Sie die neue Schaltfläche auf der Seite. Die Schaltfläche ist an die Methode @click="handleCreate()"🎜🎜Finden Sie in der Methode handleCreate und öffnen Sie das neue Panel in der Methode🎜🎜🎜Finden Sie die Schaltfläche „OK“ im neuen Bedienfeld. Die Schaltfläche ist an die Methode @click="handleAdd()" gebunden🎜 🎜🎜Finden Sie die handleAdd Methode in der Methode🎜🎜🎜Senden Sie die Anfrage und die Daten in der Methode. Nach erfolgreicher Antwort wird das neue Panel geschlossen und die Daten werden erneut abgefragt🎜 🎜handleCreateÖffnen Sie das neue Panel🎜
@Service
public class BookServiceImpl implements BookService {
    @Autowired
    private BookDao bookDao;
    public boolean save(Book book) {
        return bookDao.save(book) > 0;
    }
    public boolean update(Book book) {
        return bookDao.update(book) > 0;
    }
    public boolean delete(Integer id) {
        return bookDao.delete(id) > 0;
    }
    public Book getById(Integer id) {
        if(id == 1){
            throw new BusinessException(Code.BUSINESS_ERR,"请不要使用你的技术挑战我的耐性!");
        }
//        //将可能出现的异常进行包装,转换成自定义异常
//        try{
//            int i = 1/0;
//        }catch (Exception e){
//            throw new SystemException(Code.SYSTEM_TIMEOUT_ERR,"服务器访问超时,请重试!",e);
//        }
        return bookDao.getById(id);
    }
    public List<Book> getAll() {
        return bookDao.getAll();
    }
}
Nach dem Login kopieren
🎜Die handleAdd-Methode sendet eine asynchrone Anfrage und überträgt Daten🎜
resetForm(){
	this.formData = {};
}
handleCreate() {
    this.dialogFormVisible = true;
    this.resetForm();
}
Nach dem Login kopieren
🎜Funktionsstatusverarbeitung hinzufügen🎜🎜Grundlegende neue Funktionen Es ist abgeschlossen, aber es müssen noch einige Probleme gelöst werden: 🎜🎜Anforderung: Wenn die neue Ergänzung erfolgreich ist, schließen Sie das Panel und fragen Sie die Daten erneut ab 🎜🎜1. Führen Sie in der handlerAdd-Methode basierend auf den vom Hintergrund zurückgegebenen Daten eine andere Verarbeitung durch🎜🎜2. Wenn der Hintergrund erfolgreich ist, wird eine Erfolgsmeldung angezeigt und das Bedienfeld wird geschlossen 🎜(1) Ändern Sie die Front-End-Seite🎜rrreee🎜( 2) Der Hintergrund gibt die Operationsergebnisse zurück und ändert den Rückgabewert der Hinzufügungs-, Lösch- und Änderungsmethoden der Dao-Ebene von void in int🎜rrreee🎜(3) In BookServiceImpl basieren die Methoden zum Hinzufügen, Löschen und Ändern auf DAO. Der Rückgabewert wird verwendet, um zu entscheiden, ob wahr/falsch zurückgegeben werden soll🎜rrreee🎜(4) Um die Fehlersituation zu testen, Legen Sie einfach die Länge der Buchkategorie außerhalb des Bereichs fest. 🎜🎜🎜🎜🎜Nach der Verarbeitung des neuen Zusatzes werden Sie feststellen, dass immer noch ein Problem mit dem neuen Zusatz vorliegt.🎜🎜 Nachdem der Zusatz erfolgreich war, klicken Sie erneut auf die Schaltfläche „Hinzufügen“. Sie werden feststellen, dass die vorherigen Daten noch vorhanden sind. Zu diesem Zeitpunkt müssen Sie den Formularinhalt beim Hinzufügen löschen. 🎜rrreee

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Java SSM, um das gemeinsame Debuggen von Front-End- und Back-End-Protokollen zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Perfekte Zahl in Java Perfekte Zahl in Java Aug 30, 2024 pm 04:28 PM

Leitfaden zur perfekten Zahl in Java. Hier besprechen wir die Definition, Wie prüft man die perfekte Zahl in Java?, Beispiele mit Code-Implementierung.

Weka in Java Weka in Java Aug 30, 2024 pm 04:28 PM

Leitfaden für Weka in Java. Hier besprechen wir die Einführung, die Verwendung von Weka Java, die Art der Plattform und die Vorteile anhand von Beispielen.

Smith-Nummer in Java Smith-Nummer in Java Aug 30, 2024 pm 04:28 PM

Leitfaden zur Smith-Zahl in Java. Hier besprechen wir die Definition: Wie überprüft man die Smith-Nummer in Java? Beispiel mit Code-Implementierung.

Fragen zum Java Spring-Interview Fragen zum Java Spring-Interview Aug 30, 2024 pm 04:29 PM

In diesem Artikel haben wir die am häufigsten gestellten Fragen zu Java Spring-Interviews mit ihren detaillierten Antworten zusammengestellt. Damit Sie das Interview knacken können.

Brechen oder aus Java 8 Stream foreach zurückkehren? Brechen oder aus Java 8 Stream foreach zurückkehren? Feb 07, 2025 pm 12:09 PM

Java 8 führt die Stream -API ein und bietet eine leistungsstarke und ausdrucksstarke Möglichkeit, Datensammlungen zu verarbeiten. Eine häufige Frage bei der Verwendung von Stream lautet jedoch: Wie kann man von einem Foreach -Betrieb brechen oder zurückkehren? Herkömmliche Schleifen ermöglichen eine frühzeitige Unterbrechung oder Rückkehr, aber die Stream's foreach -Methode unterstützt diese Methode nicht direkt. In diesem Artikel werden die Gründe erläutert und alternative Methoden zur Implementierung vorzeitiger Beendigung in Strahlverarbeitungssystemen erforscht. Weitere Lektüre: Java Stream API -Verbesserungen Stream foreach verstehen Die Foreach -Methode ist ein Terminalbetrieb, der einen Vorgang für jedes Element im Stream ausführt. Seine Designabsicht ist

Zeitstempel für Datum in Java Zeitstempel für Datum in Java Aug 30, 2024 pm 04:28 PM

Anleitung zum TimeStamp to Date in Java. Hier diskutieren wir auch die Einführung und wie man Zeitstempel in Java in ein Datum konvertiert, zusammen mit Beispielen.

Java -Programm, um das Kapselvolumen zu finden Java -Programm, um das Kapselvolumen zu finden Feb 07, 2025 am 11:37 AM

Kapseln sind dreidimensionale geometrische Figuren, die aus einem Zylinder und einer Hemisphäre an beiden Enden bestehen. Das Volumen der Kapsel kann berechnet werden, indem das Volumen des Zylinders und das Volumen der Hemisphäre an beiden Enden hinzugefügt werden. In diesem Tutorial wird erörtert, wie das Volumen einer bestimmten Kapsel in Java mit verschiedenen Methoden berechnet wird. Kapselvolumenformel Die Formel für das Kapselvolumen lautet wie folgt: Kapselvolumen = zylindrisches Volumenvolumen Zwei Hemisphäre Volumen In, R: Der Radius der Hemisphäre. H: Die Höhe des Zylinders (ohne die Hemisphäre). Beispiel 1 eingeben Radius = 5 Einheiten Höhe = 10 Einheiten Ausgabe Volumen = 1570,8 Kubikeinheiten erklären Berechnen Sie das Volumen mithilfe der Formel: Volumen = π × R2 × H (4

Wie führe ich Ihre erste Spring -Boot -Anwendung in der Spring Tool Suite aus? Wie führe ich Ihre erste Spring -Boot -Anwendung in der Spring Tool Suite aus? Feb 07, 2025 pm 12:11 PM

Spring Boot vereinfacht die Schaffung robuster, skalierbarer und produktionsbereiteter Java-Anwendungen, wodurch die Java-Entwicklung revolutioniert wird. Der Ansatz "Übereinkommen über Konfiguration", der dem Feder -Ökosystem inhärent ist, minimiert das manuelle Setup, Allo

See all articles