JavaWeb 入门 最简单的学生信息管理系统

最近在学习JavaWeb,整理一下。写了个很简单的学生信息管理系统。系统只包括简单的对学生信息进行增删改查。系统采用三层设计模式。
先展示一下系统的业务处理逻辑图
在这里插入图片描述
逻辑如图所示,获取前端用户交互信息,逐步调用其他层,实现“增删改查”业务。
数据库设计(DDL信息):

CREATE TABLE `stu` (
  `sno` varchar(11) NOT NULL,
  `sname` varchar(20) DEFAULT NULL,
  `sage` tinyint(4) DEFAULT NULL,
  `saddress` varchar(30) DEFAULT NULL,
  PRIMARY KEY (`sno`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

项目主要几个Jsp页面如下:
1.首页,展示学生信息
首页
2.点击学号超链接,进入学生详细信息页面
详情
3.新增学生页面
新增
页面都比较简单,只是几个输入框而已。。
接下来看一下项目文件结构:
在这里插入图片描述
这里对项目目录结构进行简单说明;

  • dao:存放数据访问层的Java文件
  • entity:存放实体类,对应数据库的表
  • service:存放业务逻辑层的Java文件
  • servlet:存放Servlet文件(本质上是一个Java文件),一个功能对应一个Servlet
  • web目录放着JS、CSS(本项目没有)、jsp文件

项目开始时要先导入数据库jar包,教程可以参考一下网上资源,这里不作介绍

接下来开始展示每个页面的代码(为了篇幅不过长,省略部分代码),都比较简单,这里从底层往上介绍:
1.Student.java

package pers.student.entity;

public class Student {
   

    private String sno;
    private String sname;
    private int age;
    private String address;

    public Student(){
   }
	
	...此处省略其他构造方法和Setter、Getter
    	
    @Override
    public String toString() {
   
        return this.getSno() + " - " + this.getSname() + " - " + this.getAge() + " - " + this.getAddress();
    }
}

2.StudentDao.java

package pers.student.dao;

import pers.student.entity.Student;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;

//数据访问层,原子性的增删改查
public class StudentDao {
   
    //数据库连接数据
    private final String DRIVER = "com.mysql.cj.jdbc.Driver";
    private final String DB = "javadb";
    private final String USER = "java";
    private final String PWD = "123456";
    private final String URL = "jdbc:mysql://localhost:3306/"+DB+"?useUnicode = true&" +
            "characterEncoding = utf-8&useSSL = false&serverTimezone = GMT&allowPublicKeyRetrieval=true";

    /**
     * 根据学号查询此人是否存在
     * @param sno
     * @return
     */
    public 
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值