• 实验项目名称

    JavaWeb网上名片管理系统

  • 实验目的

    实现名片的增、删、改、查等操作。

  • 实验基本原理

JSP指令、JSP动作、JSP内置对象等

  • 主要仪器设备及耗材

    Win10、Myeclipse

  • 实验步骤

说明:再打开本项目的时候,需要修改为自己本地的数据库名和密码,

并导入我的数据库里面的表。所有的连接数据库驱动的操作使用一个公共类实现,对外只提供一个静态的连接数据库的接口。

(一)、用户登录与注册

  • 用户登录

    界面设计:

使用bootstrap 部分代码如下:

用户名或密码为空时报错,密码错误时报错!然后自动返回登录界面;

部分后端代码:

  • 用户注册

使用bootstrap部分代码如下:

界面设计:

当用户名或密码为空以及两次输入不一致时,会报错!

当用户名存在时报错

部分后端代码:

然后插入数据库,并返回登录界面!!

(二)、主界面

界面设计:利用bootstrap设计,采用下拉菜单实现导航功能

部分代码如下:

(三)、名片管理

  • 添加名片

界面设计:利用bootstrap以仿真形式增加名片信息。

用户名为空会报错!用户名已存在会报错!

部分后端代码:获取前端信息,判断数据库中是否存在,若存在则报错,不存在则插入数据库。

  • 修改名片

界面设计:

部分后端代码:首先获取想要修改的姓名,然后从数据库中查找到这条记录,然后显示到前端,然后再修改后,修改到数据库中。

注意:如果修改名字的话,需要3个jsp页面。一个前端,两个后端,在第二个里面将姓名用session.setAttribute("name", name);设置为会话属性,然后在第三个jsp获取这个属性,因为如果要改姓名的话,会按照你当前改的去数据库查询,所以肯定会抛出异常。

  • 查询名片

界面设置:

采用模糊查询的方式,把姓氏相同的人查出来,放在列表里。

部分后端代码:从数据库中选出符合条件的记录。然后利用while语句放入列表中。

  • 删除名片

界面设计:分为彻底删除和放入回收站

放入回收站:

后端部分代码:

根据输入的姓名,然后选择不同的删除。设计三个jsp,第一个是前端,第二个就是从数据库中彻底删除数据,第三个是放入回收站中,如何实现在点击不同代码的的时候跳转提交到不同的jsp是个重点:

第一个按钮就通过外层的form提交的相应的jsp,然后第二个按钮就设计formaction属性跳到相应的jsp页面。

彻底删除部分代码如下;

放入回收站部分代码如下:

放入回收站的操作:首先根据姓名找到该数据,然后建一个与前一个表对应的新表,先把数据加入新表,然后再把前一个表的数据删除。

(四)、回收站管理

  • 还原

界面设置:

部分后端代码:

还原与放入回收站互为逆操作,只需将相应的提示消息和表名改一下即可

  • 彻底删除

界面设计:

彻底删除就直接将回收站的表里的记录删掉即可

部分后代代码:

  • 浏览和查询

界面设计:就将回收站数据库中的记录一条条全部输出到列表

部分后端代码:

  • 思考讨论题或体会或对改进实验的建议

    此次实验的不足在于代码过于繁琐,下次可以考虑把相同的CSS设计样式写到一个样式表中并引用,实现代码复用,提高编程效率。

  • 参考资料

    Bootstrap档案

    数据库课本

项目代码已上传至我的Github:https://github.com/GavinYGM/JavaWeb_Protects/tree/master/javaweb_homework4

JavaWeb练习-网上名片管理系统的更多相关文章

  1. Python:名片管理系统

    字符串和列表学完, 自己试着写了一个非常简单的名片管理系统, 新萌尝试, 大佬们不要喷, 修改名片的功能我偷了个懒, 因为我不知道怎么通过定义下标,然后通过下标来修改列表内的字符串 我的思路是,把用户 ...

  2. Python:名片管理系统(增加登录功能后出现问题,求教)

    我将一个简单的名片管理系统定义成了函数.. 2层. 一个登录界面: 一个名片管理系统使用界面: 逻辑是:登录成功=>跳入名片系统使用界面,同时,跳出登录界面,给出欢迎使用,程序结束. 此时问题来 ...

  3. 名片管理系统v1.1(main)

    # version: 1.1# author: Mark import cords_tools while True: # 显示界面    cords_tools.show_cords() cords ...

  4. 名片管理系统v1.1(tools)

    cords_list = []def show_cords(): print("*"*80) print("欢迎使用[名片管理系统]v.1.1") print( ...

  5. Python基础综合运用——搭建名片管理系统

    综合应用 —— 名片管理系统 目标 综合应用已经学习过的知识点: 变量 流程控制 函数 模块 开发 名片管理系统 系统需求 程序启动,显示名片管理系统欢迎界面,并显示功能菜单 ************ ...

  6. python程序—名片管理系统

    创建一个名片管理系统,实现增.删.改.查.四项功能 listcard = [] while True: print('**********欢迎来到名片管理系统**********') print(' ...

  7. python基础提高演练(名片管理系统的开发)

    综合应用 —— 名片管理系统 目标 综合应用已经学习过的知识点: 变量 流程控制 函数 模块 开发 名片管理系统 系统需求 1. 程序启动,显示名片管理系统欢迎界面,并显示功能菜单 ********* ...

  8. day_11 py 名片管理系统

    '' 2018-4-23 11:42:29 名片管理系统 字典与列表的结合 ''' #1.打印功能提示 print("="*50) print(" 1.添加一个新的名片& ...

  9. day 4 名片管理系统 -函数版

    修改没有用函数的程序 具有独立功能的代码块 源程序 #1.打印功能信息 print("*"*50) print("\t名片管理系统 V3\t") print(& ...

随机推荐

  1. note 9 列表、时间复杂度、排序

    列表 List +内建(built-in)数据结构(data structure),用来存储一系列元素(items) 如:lst = [5.4,'hello',2] 前向索引.后向索引.切片.拼接.成 ...

  2. CentOS初次安装基本配置

    在虚拟机中安装CentOS7碰到的问题以及解决方法 1.安装之后想通过CRT远程连接获,输入ifconfig查看系统ip报错误:ifconfig command not found,报此错误是由于初次 ...

  3. php 关于laravel5.7框架

    一.配置 首先说下配置,安装node.js  .npm .cmd 命令行 node -v  .npm -v 若已安装出现版本号,若无自行百度 安装compaser 通过compaser命令安装lara ...

  4. 二、Python-运算符、控制及循环语句

    一.运算符 算数运算符 +:加 -:减 *:乘 /:除 ~:取反 %:求余数(只返回余数) //:取整数(只返回整数部分) **:幂,返回x的y次方 赋值运算符:= 比较运算符:<小于.< ...

  5. Visual Studio中定义OVERFLOW不能用

    在Visual Studio中对OK.ERROR.OVERFLOW进行宏定义,但只有OVERFLOW不能正常使用为什么呢? #define OK 1: #define ERROR 0: #define ...

  6. C语言程序实现,统计字符串里面各个字符的个数在总字符个数中的比例,并打印输出。

    #include<stdio.h> int main() { char *ppp= "aaassadddeeds"; ] = {};//存放字符 uint32 ccnt ...

  7. 比较C#中几种常见的复制字节数组方法的效率

    在日常编程过程中,我们可能经常需要Copy各种数组,一般来说有以下几种常见的方法:Array.Copy,IList<T>.Copy,BinaryReader.ReadBytes,Buffe ...

  8. 4Linux环境变量、Vim、Shell脚本

    环境变量 命令在Linux中的执行分为4个步骤: 1.以路径的形式来执行 2.命令的别名形式来执行,alias 新命令=“原始命令”,新命令与原始命令互不冲突,可以同时使用,重启失效,修改/etc/p ...

  9. JAVA_maven 配置

    前人种树: https://www.cnblogs.com/supiaopiao/p/7276805.html?utm_source=itdadao&utm_medium=referral

  10. UVa514 Rails (栈)

    题意:一列有n节车厢的火车按顺序进站,给你一个出站顺序,问你该火车的车厢能否以该顺序出站? 分析:出站的车厢满足后进先出的关系,所以我们考虑采用栈s 假设车厢一共有n节,n = 5: 进站顺序A:1 ...