Java eclipse+jsp+mysql に基づく、Java 面接の質問の大きな要約 Yunqi Community

教師管理:

教師情報を追加する

教師リスト情報を表示:

グレード管理:

学生の成績情報を見る

パーソナルセンター:

パーソナル センターがランダムにアラートのポップアップ ウィンドウを作成しました

コード実装の一部:


フロントエンドにログインします。

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

学生信息管理系统

ログイン


<input type="text" name="ope_name"

id="ope_name">


<input type="password" name="ope_pwd"

id="ope_pwd">

<入力

スタイル="幅:60px; フロート:右; margin-top:10px;margin-right:20px;」

type="button" value="login" οclick="login()">

ログイン バックグラウンド サーブレット:

パッケージ実装;

java.sql.Connection をインポートします。

import java.sql.PreparedStatement;

java.sql.ResultSet をインポートします。

import java.util.ArrayList;

java.util.List をインポートします。

import javax.servlet.http.HttpServletRequest;

javax.servlet.http.HttpSession をインポートします。

util.DB をインポートします。

dao.ILogin をインポートします。

エンティティをインポートします。

「第一線メーカーのJava面接質問分析+バックエンド開発検討ノート+最新アーキテクチャ解説動画+実際のプロジェクトソースコード配布資料」

[docs.qq.com/doc/DSmxTbFJ1cmN1R2dB] 完全なコンテンツのオープン ソース共有

エンティティをインポートします。特権;

public class LoginImpl は ILogin を実装します {

プライベート PrivilegeImpl1 特権Impl = 新しい PrivilegeImpl1();

プライベート RoleImpl roleImpl = new RoleImpl();

プライベート リスト list_privilege;

プライベート PreparedStatement pst;

プライベート オペレーター log_operator;

プライベート HttpSession セッション。

プライベート文字列 checkResult;

プライベート接続 conn;

プライベート ResultSet rs;

// ログイン認証

public String login(HttpServletRequest request, Operator operator) {

セッション = request.getSession();

checkResult = "成功";

log_operator = new Operator();

試す {

conn = DB.getConn();

pst = 接続

.prepareStatement(“SELECT * FROM operator WHERE ope_name = ?”);

pst.setString(1, operator.getName());

rs = pst.executeQuery();

if (!rs.next()) {

checkResult = "アカウントが存在しません。再入力してください!";

session.setAttribute(“isLogin”, “false”);

} それ以外 {

if (!operator.getPwd().equals(rs.getString(3))) {

checkResult = "入力したパスワードが正しくありません。再入力してください!";

session.setAttribute(“isLogin”, “false”);

} それ以外 {

// ログイン成功

session.setAttribute(“isLogin”, “true”);

// ユーザーの完全な情報を取得します

log_operator.setId(rs.getInt(1));

log_operator.setName(rs.getString(2));

log_operator.setPwd(rs.getString(3));

log_operator.setRole(roleImpl.query(“rol_id”,

rs.getString(4)).get(0));

session.setAttribute(“log_operator”, log_operator);

// ユーザーに応じて、対応するロールに対応するパーミッションを取得します

list_privilege = privilegeImpl.query(“rol_id”, log_operator

.getRole().getId()

  • "");

リスト リスト = 新しい ArrayList();

list.add(list_privilege.get(0));

for (int i = 1; i < list_privilege.size(); i++) {

int y=0;

for(int x=0;x<list.size();x++){

if(!list.get(x).getMenu_name().equals()

list_privilege.get(i).getMenu_name())){

y++;

}

}

if (y==list.size()) {

list.add(list_privilege.get(i));

}

}

session.setAttribute(“リスト”, リスト);

session.setAttribute(“list_privilege”, list_privilege);

}

}

キャッチ(例外e){

e.printStackTrace();

} ついに {

DB.close(conn、pst、rs);

}

checkResult を返します。

}

}

リンク データベース:

最も基本的な jdbc を使用してリンクする

パッケージユーティリティ;

java.sql.Connection をインポートします。

java.sql.DriverManager をインポートします。

import java.sql.PreparedStatement;

java.sql.ResultSet をインポートします。

公開クラス DB {

// データベース接続を取得

public static Connection getConn() {

接続接続 = null;

文字列 url = “jdbc:mysql://localhost:3306/jsp_studentmanager?characterEncoding=utf8”;

文字列名 = 「ルート」;

文字列 pwd = “123456”;

試す {

Class.forName(“com.mysql.jdbc.Driver”);

conn = DriverManager.getConnection(url, name, pwd);

キャッチ(例外e){

e.printStackTrace();

}

conn を返します。

}

// オブジェクトを閉じてリソースを解放します

public static void close(Connection conn, PreparedStatement pst,

結果セット rs) {

試す {

もし (rs != null)

rs.close();

もし (pst != null)

pst.close();

if (conn != null)

conn.close();

キャッチ(例外e){

e.printStackTrace();

}

}

}

部分的なテーブル構造:


生徒用テーブル:

テーブルの作成NewTable(

stu_idint(11) NOT NULL AUTO_INCREMENT 、

ope_idint(11) NULL デフォルト NULL 、

stu_novarchar(22) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,

stu_namevarchar(22) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,

stu_sex enum(‘男’,‘女’) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT ‘男’ ,

stu_birth日付 NULL DEFAULT NULL ,

stu_picvarchar(22) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,

cla_idint(11) NULL デフォルト NULL 、

主キー ( stu_id)、

外部キー ( cla_id) 参照classes( cla_id) の削除カスケードの更新カスケード、

外部キー ( ope_id) 参照operator( ope_id) の削除カスケードの更新カスケード、

BTREE を使用した一意のインデックスuni_no( ) 、stu_no

BTREE を使用した一意のインデックスuni_ope( ) 、ope_id

INDEX fk_stu_cla( cla_id) BTREE を使用して、

インデックスfk_stu_ope( ope_id) BTREE を使用

)

エンジン=InnoDB

デフォルト文字セット=utf8 COLLATE=utf8_general_ci

AUTO_INCREMENT=13

ROW_FORMAT=コンパクト

;

CREATE DEFINER= root@ localhostTRIGGER TG_3AFTER DELETE ONNewTable

FOR EACH ROW BEGIN

DELETE FROM operator WHERE ope_id = old.ope_id;

終わり;

転写:

テーブルの作成NewTable(

sco_idint(11) NOT NULL AUTO_INCREMENT 、

sco_dailyfloat NULL DEFAULT 0 ,

おすすめ

転載: blog.csdn.net/m0_65484000/article/details/122175383