javaweb练手项目jsp+servlet简易购物车系统

简易购物车项目

这是一个用intellij IDEA做的简易的javaweb项目,开发环境使用的jdk1.8和tomcat8以及mysql数据库。

1.项目开发准备:

  1. 创建github仓库
  2. 项目框架搭建
  3. 项目构建并同步仓库
  4. 编写所需业务逻辑

2.开发项目解决方案:

  1. github仓库站上所属存放的项目仓库
  2. mysql数据库中创建项目所需shopCartDB数据库,用于储存购物车项目所需数据
  3. 采用注解@WebServlet进行http请求响应
  4. 搭建jsp+servlet架构的技术框架,基于c标签及el表达式进行jsp页面数据渲染,
    c标签引入方式:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

根据jdbc直连技术,编写数据库操作工具类,方便存储数据,代码如下:

public class DBUtils {
String url = null;//连接地址
String username = null;//数据库名
String password = null;//数据库密码
String driverClass = null;//连接驱动
private static DBUtils db = new DBUtils();
/**构建数据库连接参数*/
private DBUtils() {
try {
url = "jdbc:mysql://localhost:3306/shopCartDb?useUnicode=true&characterEncoding=utf8";
username = "root";
password = "root123";
driverClass = "com.mysql.jdbc.Driver";
Class.forName(driverClass);
} catch (Exception e) {
e.printStackTrace();
}
}
/**构建数据库连接对象*/
public Connection getConnection(){
Connection conn = null;
try {
conn = DriverManager.getConnection(url, username, password);
} catch (Exception e) {
e.printStackTrace();
}
return conn;
}
public static DBUtils getInstance(){
return db;
}
}

3.项目功能:

  1. 注册
  2. 登录
  3. 找回密码
  4. 商品列表
  5. 添加购物车
  6. 购物车删除
  7. 购物车数量修改
  8. 购物车结算

4.工作内容:

本项目采用mysql数据库进行储存数据,所以优先搭建项目所需数据库结构,此项目有用户表,商品表,购物车表,结算表等信息。

利用搭建好的jsp+servlet框架提供http请求及响应视图能力,展示项目所需各个jsp页面。根据响应显示注册页面进行注册操作。

根据注册所填写的账号和密码进行系统登录,如忘记密码,可根据邮件动态验证码形式进行密码找回,密码采用腾讯QQ服务提供的SMTP服务器

进行验证码收发操作,系统进入后展示商品列表,利用c标签将db入库的数据进行动态渲染,el表达式进行数据取值展示,添加购物车利用ajax请求

进行添加购物车、移除购物车的技术实现,根据所添加的购物车列表数据,可更改购物车的数量进行结算,将购物车页面数据进行复选框勾选模式。

可进行多个商品一起结算,利用js技术筛选出具体哪些商品进行勾选,根据勾选商品的数量及商品单价进行最终价格结算。从而完成一系列的购物车技术实现

5.项目总结:

  1. jsp+servlet组合框架开发,条理清晰的mvc框架
  2. 了解c标签进行数据渲染及多方面的强大渲染能力,可以更合理动态展示复杂的数据结构
  3. 丰富学习了markdown扩充的语法,可以更直观展示项目介绍文档
  4. 合理利用jdbc直连技术,更加熟悉掌握对数据的增删改查操作
  5. 巩固java的基础知识,并针对不足之处记性额外补充学习,比如list结构及数组结构体的运用
  6. 熟悉ajax技术,能利用ajax技术针对get与post请求进行数据的传递和响应

6.部分代码截图:

  1. 商品列表代码

  2. 购物车列表代码

  3. 结算后端代码

  4. 结算列表代码

7.项目效果:

  1. 登录

  2. 商品列表

  3. 购物车列表

  4. 结算列表

(0)

相关推荐

  • jsp+servlet搭建在线投票问卷系统

    点赞再看,养成习惯 程序帮QQ:1022287044 开发环境准备: jdk1.8 tomcat8 mysql5.7 intellij IDEA 系统采用技术: jsp+ servlet mvc三层架 ...

  • 【Java练手项目】Java身份证号码识别系统

    项目介绍 本项目是通过学习https://gitee.com/nbsl/idCardCv 后整合tess4j,不需要经过训练直接使用的,当然,你也可以进行训练后进行使用.该项目修改原有的需要安装ope ...

  • 【Java练手项目】Java外卖点餐系统

    傻瓜式外卖点餐系统(无数据库) tips: 菜品类(菜品id,菜品名,菜品类型,上架时间,单价,月销售,总数量) 管理员类(管理员id,账号,密码) 客户类(客户id,客户名,性别,密码,送餐地址,手 ...

  • 如何选择一个合适的练手项目

    最近在组织编程擂台活动(前文:码上行动的同学,你有一个机会等待签收),会帮学员们挑选合适的项目,在实践中提升编程能力. 在选题过程中,有些普遍被关注的问题,今天在这里集中聊一聊,包括我这些年指导学生的 ...

  • 70个Python练手项目列表,看了让你茅塞顿开!

    前言: 不管学习哪门语言都希望能做出实际的东西来,这个实际的东西当然就是项目啦,不用多说大家都知道学编程语言一定要做项目才行. 这里整理了70个Python实战项目列表,都有完整且详细的教程,你可以从 ...

  • 5个趣味Python练手项目

    给大家整理几个具有一定趣味性的项目练练手,一来增加编程乐趣,二来能提高你的编程技能. 0.Face Recognition Face Recognition是世界上最简洁的人脸识别库,你可以使用 Py ...

  • 大神崛路上必备的10大练手的Python项目 墙裂建议收藏!

    前言 Python毫无疑问是一门很伟大的语言,最近几年,很多人都在Python的世界里转悠.很多小白在成长的路上,做一些练手的项目就显得尤为重要.一来让你知道你所学习的Python真的只是皮毛,二来巩 ...

  • Go开源实战项目推荐:用来练手挺好

    2021-07-06 阅读本文大概需要 2 分钟. 大家好,我是 polarisxu. 陆陆续续总有人问我,有没有项目练手,其实有很多优秀开源项目,有些代码量也不大.今天就推荐一些命令行方面的开源项目 ...

  • 4个Python经典项目实战,程序员练手必备!

    Python是一种极具可读性和通用性的编程语言.Python这个名字的灵感来自于英国喜剧团体Monty Python,它的开发团队有一个重要的基础目标,就是使语言使用起来很有趣.Python易于设置, ...

  • 3个值得学习和练手的.net企业级开源项目,强烈推荐

    WTM 项目名称:WTM 项目所用技术栈: wtm mvvm mvc aspnetcore dotnetcore react vue layui layui-admin element-ui ncc等 ...