1 实验目的

1.了解项目开发的基本流程和开发步骤知识

2.掌握项目分析和软件设计的主要步骤

3.回顾掌握JDBC编程的技术和方法

4.掌握JSP·Servlet综合知识和编程方法

 2 实验环境

1.MyEclipse插件平台、

2.Weblogic(或者Tomcat)容器

3.MySQl(或者SQLServer、Oracle)数据库

 3 实验知识背景

 3.1项目背景

随着网络技术的飞速发展,网络电子商务业务迅速扩大。商家可以将商品的展示、销售和结算在网站中进行,客户可以将喜爱的商品和网站资料保存下来,把珍藏的商品列为精品。并对其对应的网站链接地址保存到本地数据库中,以供查询、搜索和编辑使用。基于这个需求背景,结合Web编程技术,采用MVC软件设计模式设计本项目案例。知名精品网站URL如表 1-1所示。

表 1-1 精品网站

精品网店

收藏URL

凡客诚品

http://www.vancl.com/?source=bdzqbtd56a1cce0ea3fe76

京东

http://www.360buy.com/?utm_source=baidu&utm_medium=cpc&utm_term=baidu1_

麦考林

http://www.m18.com/

玛莎玛索

http://www.masamaso.com/index_n.shtml

珂兰

http://www.kela.cn/?mfrom=000000260977

一号店

http://www.yihaodian.com/product/index.do?tracker_u=2225501&merchant=9

好乐买

http://www.okbuy.com/?from=wangmai_baidu_pzltgbt

创业邦

http://www.cyzone.cn/

优购

http://www.yougou.com/

试客联盟

http://www.shikee.com/

易物网

http://www.ewu.cc/

9钻网

http://www.9diamond.com/

慧聪网

http://www.hc360.com/

银座网

http://www.yinzuo100.com/

金蚂蚁

http://www.goldant.com.cn/

 3.2编程思想

1.分层开发思想

软件的层次结构可以分为四层:

表现层

控制层

业务逻辑层

数据逻辑层(持久层)

2.面向接口编程思想
在编程中将业务逻辑抽象出接口,以供上次调用

依赖抽象(接口),而非具体(接口实现)的编程思想,又称之为控制反转(Inversion of Control)

 3.3设计模式

1.DAO设计模式

DAO的全称是:Data Access Object,数据访问对象。

使用DAO设计模式,来封装数据库持久层的所以操作(CRUD),使 低级的数据逻辑和高级的业务逻辑分离,达到解耦合的目的。

一个典型的DAO实现有如下的组件:

一个 DAO 接口

一个实现了 DAO 接口的具体类

一个 DAO 工厂类

数据传输对象(有时称为值对象)

以维护一个客户信息为例,具体组件如下所示:

CustomerDao 接口

Customer 值对象(VO)

CustomerDaoImpl(接口的具体实现类)

CustomerFactory(工厂类,实例化用)

编程思想和设计模式的具体应用参照精品收藏项目案例。

2.MVC设计模式

MVC模型、视图、控制器关系如图 1-1所示。

 4  实验内容与步骤

 4.1收藏管理

案例描述

本实例运用了分层开发思想、面向接口编程两种思想;和DAO、MVC设计模式来实现一个收藏管理程序,程序的主要功能是,把感兴趣的链接做维护,包括添加一个新的链接、删除一个链接、显示一个链接列表、修改链接等内容。

案例中使用到的表

收藏表(LinkTbl)如表 1-2所示。

表 1-2 LinkTbl

列名

数据类型

长度

允许为空

是否主键

说明

id

integer

11

编号

url

varchar

50

链接URL

name

varchar

50

链接名

例 1-1】综合程序案例——收藏管理。

程序运行结果示意如图 1-2、图 1-3所示

 4.2项目运行效果图

项目部署完成后,启动Tomcat,然后打开IE,输入URLhttp://localhost:8080/jsp_ob/link.jsp.

 5 实验总结

本次实验通过网上精品收藏的应用案例,结合设计模式,实践设计一个B/S结构的JSP·Serverlet综合应用案例的编程实验,了解了项目背景和MVC设计模式的分层开发思想,采用面向接口编程的方法,实现与主程序的解耦合的面向设计程序设计思想。从软件分析、软件设计,数据库设计到项目设计和项目实现整个流程都有详细的例子和方法介绍,通过JDBC技术实现与数据库的链接和操作。对于不同数据库的连接和开发,读者可以根据书中的方法自行开展学习和实践。

代码:我在这,我来了!!

希望这篇文章可以帮助到你们,更多详细代码可以留言私信小主,加油!

Javaweb实验: JSP与Servlet综合案例(含完整代码)相关推荐

  1. 基于javaweb+jsp的设备维修管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot)

    基于javaweb+jsp的设备维修管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot) JavaWeb JavaBean JSP MVC ...

  2. 基于javaweb+jsp的鲜花花卉销售管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot)

    基于javaweb+jsp的鲜花花卉销售管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot) JavaWeb JavaBean JSP MV ...

  3. 基于javaweb+jsp的餐饮店信息管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot)

    基于javaweb+jsp的餐饮店信息管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot) JavaWeb JavaBean JSP MVC ...

  4. 基于javaweb+jsp的工作日志管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot)

    基于javaweb+jsp的工作日志管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot) JavaWeb JavaBean JSP MVC ...

  5. 基于javaweb+jsp的高校科研项目管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot)

    基于javaweb+jsp的高校科研项目管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot) JavaWeb JavaBean JSP MV ...

  6. 基于javaweb+jsp的仓库进销存管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot)

    基于javaweb+jsp的仓库进销存管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot) 运行环境 Java≥8.MySQL≥5.7.To ...

  7. 基于javaweb+jsp的大学生个人财务记账系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot)

    基于javaweb+jsp的大学生个人财务记账系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot) JavaWeb JavaBean JSP M ...

  8. 基于javaweb+jsp的快递物流管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot)

    基于javaweb+jsp的快递物流管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot) JavaWeb JavaBean JSP MVC ...

  9. 基于javaweb+jsp的企业财务记账管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot)

    基于javaweb+jsp的企业财务记账管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot) JavaWeb JavaBean JSP MV ...

最新文章

  1. Python模拟登录,Python识别图形验证码实现自动登陆
  2. 【AC Saber】离散化
  3. Linux下安装Jboss
  4. easyUI tabs 显示与隐藏 tab 页
  5. KVM虚拟机共享存储动态迁移与冷迁移
  6. Android之canvas详解
  7. java导入数据 neo4j_java-neo4j-使用neo4j剩余图数据库进行批量插...
  8. 爬虫-抖音无水印视频下载
  9. 如何在移动硬盘上安装Ubuntu系统(2)
  10. UCI、KEEL下载数据集
  11. Gvim中实现特定行文本的替换
  12. 干货:压敏电阻选型和注意事项,必知
  13. 服务器主板显示ff,MSI K9A2-CF主板显示错误代码“FF”
  14. 奥维地图显示所有标注
  15. [综][PDPTW]A survey on pickup and delivery problems
  16. 一次云服务器购买经历,给个人建站的小白做些参考
  17. 牛客_美团点评2020校招前端笔试题(仅个人学习记录)
  18. php中define的参数_php中define的含义及用法详解
  19. 计算机无法ping其他设备,局域网ping不到其他设备怎么办
  20. 6个可以下载合同范本的网站,涵盖各岗各业,直接编辑使用

热门文章

  1. Vscode连接指定环境始终在connecting to kernel
  2. 有了特斯拉光伏屋顶 未来不需要电网?
  3. 命名实体识别的两种方法
  4. oracle数据库系统中启动数据库第一步,Oracle数据库基础题库【含答案】
  5. 拼多多众多 API 接口皆可使用
  6. 滴滴司机端使用 出现 bridge start carRequest
  7. qt Please select a 64 bit Debugger in the kit settings for this kit.
  8. Postman一直在登录界面转圈
  9. c语言 值传递与引用传递
  10. pubg android apk,PUBG Mobile国际服