零基础小白自学java-问答系统项目-需求分析以及数据库实现(一)

本文介绍了零基础小白如何自学Java并构建问答系统项目。主要内容包括需求分析,如用户登录、注册、提问和回答功能;项目版本规划,包括GUI界面、Web应用和SSM框架三个版本;以及数据库设计,详细讲解了E-R图、userbase用户表和question问题表的设计。此外,还提供了完整的学习路线和常见问题解答。
部署运行你感兴趣的模型镜像

在这里插入图片描述

1. 需求分析

《问答系统》主要实现问题的提问功能以及管理员对问题的回答,具体需求包括如下:

  1. 登录功能

    在用户使用《问答系统》平台之前是需要登录的,只有通过账号和密码登录成功才可以使用平台中的各种功能。

  2. 用户注册

    一个新用户在数据中是没有账号的,所以在使用系统之前需要注册。

  3. 主页面

    当用户登录成功之后首先进入的页面,这个主页面包括用户的登录信息,用户的剩余提问次数,提问功能的入口以及查看当前用户的提问记录。

  4. 我要提问

    用户可以通过“我要提问”功能实现问题的提交操作,包括问题的提问者,提问标题,提问内容,提问时间等。

  5. 我的问题

    用户可以查看自己的所有问题,包括已答和未答的信息,并且按照时间顺序从近及远的顺序排列,提供每个问题的详细入口,支持问题记录显示的分页功能。

  6. 问题详细

    查看当前用户的当前问题的详细信息,包括问题的内容,问题的提问时间,问题的回答状态以及回答者和回答时间。

  7. 回答问题

    当管理员进入问题详细的时候,能使用回答功能,写入问题的回答内容并且提交回答。

2. 项目版本

为了能让大家学到各种技术,我们设计了同一个项目有3个不同的版本。

  1. gui 界面版

    javase+jdbc+mysql

  2. web 应用版

    html+css+js+servlet+jsp+ajax

  3. ssm 框架版

    vue+springmvc+spring+mybatis+springboot

3. 数据库设计

3.1 数据库 “qasysdb” E-R设计图

在这里插入图片描述

3.2 userbase用户基本表

字段名数据类型长度默认值主键外键注释
idint11编号
rolechar10角色
telvarchar11手机号码
pwdvarchar20用户密码
namevarchar5用户名字
numint113访问次数
regdatedatetime注册日期
enddatedatetime最后登录日期
/*Table structure for table `userbase` */

DROP TABLE IF EXISTS `userbase`;

CREATE TABLE `userbase` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `role` char(1) COLLATE utf8_unicode_ci DEFAULT '0',
  `tel` varchar(11) COLLATE utf8_unicode_ci DEFAULT NULL,
  `pwd` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
  `name` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL,
  `num` int(11) DEFAULT '3',
  `regdate` datetime DEFAULT NULL,
  `enddate` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

3.3 question问题表

字段名数据类型长度默认值主键外键注释
idint11编号
titlevarchar200标题
contenttext内容
flagvarchar5未答回答状态
useridvarchar11用户编号
answertext3回答内容
pubdatedatetime发布日期
answerdatedatetime回答日期
/*Table structure for table `question` */

DROP TABLE IF EXISTS `question`;

CREATE TABLE `question` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(20) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
  `content` text,
  `flag` varchar(5) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT '未答',
  `userid` int(11) DEFAULT NULL,
  `answer` text CHARACTER SET utf8 COLLATE utf8_unicode_ci,
  `pubdate` datetime DEFAULT NULL,
  `answerdate` datetime DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `userid` (`userid`),
  CONSTRAINT `question_ibfk_1` FOREIGN KEY (`userid`) REFERENCES `userbase` (`id`) ON DELETE SET NULL ON UPDATE SET NULL
) ENGINE=InnoDB  AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;



完整课程内容

零基础小白-自学java全栈开发-学习路线-只要看这一篇就 可以了(完整版)

开发学习中常见问题

实战项目演练

更多资料请关注微信公众号 《java微课程》

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值