实现方法:JSP+Servlet+JavaBean

基本实现思想:jsp文件为显示界面,包括增删改查四个界面,然后使用form或者href超链接的方法将网页获得的值传到Servlet中的方法里;而servlet方法中调用dao层里面的包括增删改查等方法的对象,以此实现对数据库里面的数据的增删改查,最后返回页面输出操作的结果。

具体实现步骤:

首先使用操作数据库软件(Navicat),新建数据库,建立好自己所用的表中包括的内容,然后按照以下步骤编写代码,实现操作。

1.建立DB包,DB类方法中包括的是连接数据库的方法,并实现数据库关闭的方法;

2.建立JavaBean包,里面的course类定义将要操作的对象以及其相关属性以及get、set方法;

3.建立dao层的包,在dao包里实现数据库的增删改查的方法,使用SQL语句实现,运用数据库语言,这是本次实验最重要的一个包,也是实验实现的关键。

4.建立Servlet包,新建servlet,里面包括两大部分,第一是接受来自JSP界面的相关参数,收集参数,传到dao层操作。第二大部分是将dao层传回来的操作结果返回至JSP界面进行显示。以此利用servlet来实现界面的交互跳转操作。

(工程实现时,可以再建立一个service包,实现dao中方法封装的功能)

5.建立一系列jsp文件,实现操作要求,功能如下:

首页:包括四个不同功能(课程添加、删除、查询、修改),利用href超链接跳转到四个不同的界面实现功能。

增加:(1)在add.JSP页面中的Form表格中输入要添加的相应的信息,通过Form表格的提交按钮将输入框Input中的内容和值(该值确定调用Servlet中的add方法)传给Servlet;(2)在Servlet中调用dao层中的add方法,dao层中的add方法;(3)通过DB层获取与数据库的连接,实现数据库的添加;(4)返回操作结果给Servlet的add方法,由Servlet中的add方法判断输出添加成功的JSP信息页面

删除:(1)输入要删除的课程名称,然后传值到Servlet中;(2)在Servlet中通过调用dao层的查询方法,在数据库中查找是否存在此课程,若存在,将课程全部信息存入List中传给Servlet,Servlet在用JSP文件显示该课程全部信息;(3)用户确定是否要删除,若要删除则继续传值给Servlet,调用Servlet中的删除del方法,该方法调用Dao层的del函数,实现数据库中的数据的删除;(4)操作结果返回至Servlet中,在Servlet中判断输出一个JSP结果页面。

修改:(1)显示全部的数据,点击要修改的一组数据,传值(此值为要修改的id )给Servlet;(2)Servlet中调用dao层的update修改方法,update方法修改数据库中数据;(3)操作结果返回至Servlet中,JSP弹出操作结果。

查找:(1)输入要查询的信息,进行粗略和精确查询,将输入的内容通过Form表格传值给Servlet;(2)Servlet中查询search方法调用dao层的查询search方法,在数据库中进行模糊或者精确查询,将查询到的信息装在List中传给Servlet;(3)JSP返回最终查询的信息。

除此之外,可以添加细节,来完善程序,对输入框中输入的信息要进行判断,通过Form表格进行onsubmit的判断,判断输入的内容是否合理,是否为空。

Web界面实现数据库增删改查过程的更多相关文章

  1. 前端使用AngularJS的$resource,后端ASP.NET Web API,实现增删改查

    AngularJS中的$resource服务相比$http服务更适合与RESTful服务进行交互.本篇后端使用ASP.NET Web API, 前端使用$resource,实现增删改查. 本系列包括: ...

  2. 2. MongoDB基本操作 —— 用Mongo.exe操作数据库增删改查

    一.开篇 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由数据库(database).集合(collection).文档对象 ...

  3. go——beego的数据库增删改查

    一直都不理解使用go语言的时候,为什么还要自己去装beego,以为使用go便可以解决所有的问题,结果在朋友的点拨下,才意识到: go与beego的关系就好比是nodejs与thinkjs的关系,因此也 ...

  4. (转)SQLite数据库增删改查操作

    原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数 ...

  5. WindowsPhone8 数据库增删改查

    今天第一次在博客园发表文章,如果有的地方写的不对,还请大家指出! 1.这就是一个简单wp8数据库增删改查 1.创建数据表Person [Table] public class Person : INo ...

  6. MVC——数据库增删改查(Razor)——Html语法

    一.显示界面 .Models(模板) private MyDBDataContext _context = new MyDBDataContext(); public List<Info> ...

  7. MVC——数据库增删改查(aspx)

    MVC: V(View) :视图→就是页面的模板 C(Control): 控制器→客户主要面对的就是控制器, M(Model):模板→在模板里面主要就是写关于数据库的各种增删改查的方法 它们之间的关系 ...

  8. Android SQLite 数据库 增删改查操作

    Android SQLite 数据库 增删改查操作 转载▼ 一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库--SQLite,SQLite3支持NU ...

  9. spring--boot数据库增删改查

    spring--boot数据库增删改查 数据库配置:(必须配置),我写的文件是yml的,和properties是相同的 1 spring: 2 datasource: 3 driver-class-n ...

随机推荐

  1. C# Excel行高、列宽、合并单元格、单元格边框线、冻结

    private _Workbook _workBook = null;private Worksheet _workSheet = null;private Excel.Application _ex ...

  2. Modbus库开发笔记之六:Modbus RTU Master开发

    这一节我们来封装最后一种应用(Modbus RTU Master应用),RTU主站的开发与TCP客户端的开发是一致的.同样的我们也不是做具体的应用,而是实现RTU主站的基本功能.我们将RTU主站的功能 ...

  3. Java的动手动脑(七)

    日期:2018.11.18 博客期:025 星期日 Part 1:使用 Files.walkFileTree()来找出指定文件夹下大小大于1KB的文件 package temp; import jav ...

  4. NIO(四)

    使用非直接缓冲区和直接缓冲区复制同一个文件,看一下时间差别 1.创建非直接缓冲区测试类 package com.cppdy.nio; import java.io.FileInputStream; i ...

  5. Practical Web Penettation Testing (the first one Mutillidae 大黄蜂)

    1.now we looke at this book . I decide  to make a brief review the book covers as follows (I straigh ...

  6. cf1107e uva10559区间dp升维

    /* 区间dp,为什么要升维? 因为若用dp[l][r]表示消去dp[l][r]的最大的分,那么显然状态转移方程dp[l][r]=max{dp[l+1][k-1]+(len[l]+len[k])^2+ ...

  7. angular-cli ng build 打包完成后 打开文件显示空白

    将index.html 里面的<base href="/"> 改为<base href="./"> 前面加一个 点 就好了,然后再次打包 ...

  8. nodejs 如何获取页面get、post传递过来的参数

    如果是get传递参数,可以直接使用 request.query.name 如果是post 需要借助body-parser 首先引入bodyParser = require('body-parser') ...

  9. Python深度学习案例2--新闻分类(多分类问题)

    本节构建一个网络,将路透社新闻划分为46个互斥的主题,也就是46分类 案例2:新闻分类(多分类问题) 1. 加载数据集 from keras.datasets import reuters (trai ...

  10. 20165323 实验二 Java面向对象程序设计

    一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:杨金川 学号:20165323 指导教师:娄嘉鹏 实验日期:2018年4月16日 实验时间:13:45 - 15:25 实验序号:二 ...