Vueが学生管理機能を実装

Vueが学生管理機能を実装

この記事では、学生管理を実装するためのVueの具体的なコードを例として紹介します。具体的な内容は次のとおりです。

困難

  • 生徒作成機能と生徒編集機能の両方で使用されるコンポーネント。それを判断および検証する方法。
  • ユーザー入力を確認し、空でないかどうかを確認します。
  • JSON データをサーバーに送信し、バックエンドが JSON データを変換します。
  • 3層アーキテクチャでは、各層の機能が分割されています
  • 注釈を使用して生徒のデータを操作する

全体的な難易度は平均的ですが、細かいポイントが多く、総合力は高いです。
たとえば、axios を使用してバックエンドに投稿を送信する場合、フォーマットを無視するのは簡単です。
フロントエンドとバックエンドのデータが相互作用する場合、データは大きいほど良いです。データが完全であればあるほど、データのパフォーマンスは強くなります。バックエンドデータを取得するときは、解凍レベルを明確に区別する必要があります。

コードの一部

js の

<スクリプト>
 アプリを新しいVue({
  el:"#アプリ",
  データ:{
   currentPage:1, //現在のページ pageSize:10, //ページあたりに表示されるレコード数 total:0, //レコードの合計数;
   list:[], //現在のページデータ //学生情報のバインディング student:{
    名前:""、
    年:""
   }
  },
  方法:{
   ページャー:関数(数値){
    this.currentPage = num;
    データの取得
   },
   getData:関数() {
    axios.post("/StudentManager/showAllServlet?currentPage=" + this.currentPage + "&pageSize=" + this.pageSize).then((resp) => {
     this.list = resp.data.datas;
     this.total = resp.data.total;
    });
   },
   追加:関数() {
    if (this.student.id === 未定義) {
     axios.post("/StudentManager/addStudentServlet", this.student).then((resp) =>{
      if (resp.data.flag){
       データの取得
      }それ以外 {
       alert("追加に失敗しました!");
      }
     });
    }それ以外 {
     axios.post("/StudentManager/updateStudentServlet", this.student).then((resp)=>{
      if (resp.data.flag){
       データの取得
      }それ以外 {
       alert("変更に失敗しました!");
      }
     });
    }
   },
   学生の削除:関数(id) {
    axios.post("/StudentManager/deleteStudentServlet?id="+id).then((resp)=>{
     if (resp.data.flag){
      データの取得
     }それ以外 {
      alert("削除に失敗しました!");
     }
    });
   },
   findById:関数 (id) {
    axios.post("/StudentManager/findByIdStudentServlet?id=" + id).then((resp)=>{
     this.student = resp.data;
    });
   }
  },
  マウント:関数() {
   データの取得
  }
 });
</スクリプト>

ページ分けされた学生情報を表示する

// サーブレット
 文字列 currentPage = request.getParameter("currentPage");
 文字列 pageSize = request.getParameter("pageSize");
 
 PageBean<Student> pageBean = showAllStudentService.showAllStudent(Integer.parseInt(currentPage), Integer.parseInt(pageSize));
 オブジェクトマッパー objectMapper = 新しいオブジェクトマッパー();
 文字列 json = objectMapper.writeValueAsString(pageBean);
 
 レスポンスの getWriter() を json に書き込みます。
// サービス
  @テスト
    @オーバーライド
    パブリック PageBean<Student> showAllStudent(int currentPage, int pageSize) {
        PageHelper.startPage(現在のページ、ページサイズ);
        SqlSession sqlSession = SqlSessionUtils.getSqlSession(false);
        StudentMapper マッパー = sqlSession.getMapper(StudentMapper.class);
        リスト<Student> students = mapper.showStudent();

        PageInfo<学生> pageInfo = 新しい PageInfo<>(学生);
        長い合計 = pageInfo.getTotal();
        ページ情報を取得します。
        PageBean<Student> pageBean = new PageBean<>(total, students, pages);
        sqlSession を閉じます。
        pageBean を返します。
    }
//ダオ
 /**
     * ホームページにはすべての生徒が表示されます* @生徒リストを返す*/
    @Select("SELECT * FROM 学生")
    リスト<学生> showStudent();

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Vue+Bootstrapでシンプルな学生管理システムを実現
  • 学生管理システムを実現するJavaコンソール
  • 学生管理システムのJava実装(IO版)
  • Javaで実装された学生管理システムの詳細説明
  • Vueプロジェクトの学生管理システム例の詳細説明

<<:  MySQL インデックスのカーディナリティの概念と使用例

>>:  Centos6.5 でのスーパーバイザーのアップグレード、インストール、および構成に関するチュートリアル

推薦する

MySQLデータベースのnullに関する知識ポイントのまとめ

MySQL データベースでは、null は一般的な状況です。MySQL での null に関する注意...

Linux でのマルチスレッドプログラミング例の分析

1 はじめにスレッド技術は 1960 年代にすでに提案されていましたが、マルチスレッドがオペレーティ...

.Net Core を使用して数千万のデータを MySQL にインポートする手順

目次事前準備実施方法: 1. 単一のデータを挿入する2. マージデータ挿入3. MySqlBulkL...

Win10 での MySQL 8.0.15 のインストールと設定のグラフィック チュートリアル

この記事ではMySQL 8.0.15のインストールと設定方法を参考までに記録します。具体的な内容は以...

シンプルなページカウントダウンを実現するJavaScript

この記事では、参考までに、シンプルなページカウントダウンを実装するためのJavaScriptの具体的...

MySQL接続クエリの原理と応用

概要MySQL の最も強力な機能の 1 つは、データ取得を実行しながらテーブルを結合できることです。...

HTML thead タグの定義と使用法の詳細な紹介

コードをコピーコードは次のとおりです。 <thead> <!– 最初の 2 行をヘ...

Docker で MySQL をデプロイする詳細なプロセス (Docker でデプロイされる一般的なアプリケーション)

以前にも紹介しました: docker (一般的なアプリケーションのデプロイ): docker dep...

フロントエンド開発者のための HTML 入門

1 HTML入門1.1 初めてのコード体験、最初のウェブページの作成XML/HTML コードコンテン...

docker mysqlの起動時に初期化SQLを実行する

1.Mysqlイメージを取得するdocker pull mysql:5.7 2. MySQLイメージ...

MySQL 8.0.11 MacOS 10.13 のインストールと設定方法のグラフィックチュートリアル

MacにMySQLデータベースをインストールし、環境変数を設定する手順を参考までに記録します。具体的...

Zabbixを介してデータベース接続情報といくつかの拡張機能をすばやく取得します

背景アプリケーション システムの数が増え続けると、当初はアラームを発していなかったアクティブ スレッ...

mysql5.5.28 のインストール チュートリアルは非常に詳細です。

参考までにmysql5.5.28のインストールチュートリアルです。具体的な内容は次のとおりです。イン...

MySQL マルチテーブルクエリの具体例

1. SELECT句を使用して複数のテーブルをクエリするSELECT フィールド名 FROM tab...

HTML テーブル データを Json 形式に変換するサンプル コード

<table>テーブルデータをJSON形式に変換するJavaScript関数は次のとおり...