开源分享,使用Servlet实现360商城
简介
今天翻看硬盘,无意间看到这个项目的workspace,掀起了我无尽的回忆啊,一把辛酸一把泪。
现在把这个现在看来比较low的项目分享出来,也算记录下当初菜鸟的成长之路了,也希望能够对刚入门的朋友有些帮助 。
这是我上大学期间写的第一个相对较完善的学习项目了,项目中所有css和js都是自己边摸索、边学习画出来的,自我感觉对于我当时的水平还算可以了。
此项目适合javaweb初学者参考,大神请无视。大家可以从中学到javaweb底层原理、使用Servlet处理请求、css和js入门理解等。数据库使用Mysql,全部源代码开放。
360mall
开发语言:JAVA
开发工具:Eclipse
数据库:Mysql
后台技术:纯Servlet+JDBC
前台技术:Jsp+Css+Js
项目地址:https://github.com/allanzhuo/360mall
如果本项目对您有帮助的话,请方便给我个Star
功能模块
- 首页
- 导航栏
- 轮播图
- 分栏推荐
- 搜索
- 显示关键词搜到的产品
- 能通过产品进入详情页
- 详情页
- 显示商品详情
- 多图轮廓展示
- 购物车
- 立即购买功能
- 购物车
- 显示加入购物车产品信息
- 登录注册
- 实现登录注册功能
- 后台管理
- 后台首页
- 商品管理
- 用户管理
环境要求
- JDK7或更高版本
- Tomcat7.0或更高版本
- MySQL5.1或更高版本
部署说明
- 创建数据库。使用MySQL,字符集选择为
utf8
或者utf8mb4
(支持更多特殊字符,推荐)。 - 创建数据库导入数据。数据库在
360mall\WebContent\sql
目录下,参考数据脚本创建数据库。 - 设置项目编码为utf-8,选择jdk1.7版本或以上,不要选择jre。
- 修改数据库连接。打开
360mall\src\dao\BaseDao.java
文件,根据实际情况修改jdbc.url
、jdbc.user
、jdbc.password
的值 - 部署项目。将项目部署到Tomcat7或以上版本,启动Tomcat。
- 访问系统。前台地址:http://localhost:8080/360mall;用户名:admin,密码:123456,后台登录点击右下角小人,即可切换登录,进入后台管理。
项目结构
│ ├── src
│ ├── dao
│ ├── BaseDao // 数据库连接基础dao
│ ├── CartDao // 购物车dao
│ ├── GoodsDao // 商品dao
│ └── UserDao // 用户dao
│ ├── dao.impl
│ ├── CartDao // 购物车处理实现类
│ ├── GoodsDao // 商品处理实现类
│ └── UserDao // 用户处理实现类
│ ├── entity // 工具方法
│ ├── Cart // 购物车实体类
│ ├── Goods // 商品实体类
│ └── User // 用户实体类
│ └──── servlets // 处理类,相当于action或controller
│ ├── CartServlet // 购物车处理类
│ ├── GoodsServlet // 商品处理类
│ └── UserServlets // 用户处理类
│
├── WebContent
│ ├── css
│ └── ... // 样式文件
│ ├── img
│ └── ... // 用到的图片
│ ├── js
│ └── ... // js文件
│ ├── sql
│ └── ... // sql文件
│ ├── WEB-INF
│ └── lib // jar包
│ └── ... //页面
└── README.md
项目预览
首页
导航
详情页
前台登录
后台登录
注册
购物车
搜索
后台首页
用户管理
商品管理
开源分享,使用Servlet实现360商城的更多相关文章
- 基于Python使用SVM识别简单的字符验证码的完整代码开源分享
关键字:Python,SVM,字符验证码,机器学习,验证码识别 1 概述 基于Python使用SVM识别简单的验证字符串的完整代码开源分享. 因为目前有了更厉害的新技术来解决这类问题了,但是本文作 ...
- Java版斯诺克开源分享
Java版斯诺克开源分享 这个小程序是我平时无聊写着玩的,在网盘里躺了好久了,今天就把它拿出来跟大家分享一下,下面是游戏截图: 请不要吐槽这个界面,斯诺克的球台是我从qq游戏里面截取的... 下面是源 ...
- 开源分享三(炫酷的Android Loading动画)
开源分享三(炫酷的Android Loading动画) 分享GitHub上的一些Loading,为了提升产品用户体验,一个好的Loading必然是不可缺少的,对于一些耗时需要用户等待的页面来说会转移用 ...
- 基于WeChat的消息存储备份、远程控制、小功能项目开源分享计划
WeChat+ 关于该项目 起源 该项目的起因是一个比较程(老)序(油)猿(条)的理由,有一天我发现我下班时间比较早,有点尴尬,但是又不想没事干还坐在公司,那么如何解决我的问题呢,初步想法是远程控制电 ...
- [项目分享]JSP+Servlet+JDBC实现的云端汽修后台管理系统
本文存在视频版本,请知悉 项目简介 项目来源于:https://gitee.com/chenlinSir/CloudDemo-servlet 难度等级:简单 基于JSP+Servlet+Jdbc的云端 ...
- [项目分享]JSP+Servlet+JDBC实现的学生信息管理系统
本文存在视频版本,请知悉 项目简介 项目来源于:https://gitee.com/liu_xu111/JavaWeb01 这次分享一个学生管理系统,我感觉这是程序员在大学时期的毕设和课程设计选择最多 ...
- 【开源分享】微信营销系统(第三方微信平台)github 开源
升讯威微信营销系统(微信第三方平台) 在线体验:http://wxcm.eeipo.cn/开源地址GitHub:https://github.com/iccb1013/Sheng.WeixinCons ...
- 【开源分享:入门到精通ASP.NET MVC+EF6+Bootstrap】从这里开始,一起搭框架(1)开篇介绍
框架简介 这几年一直在做ASP.NET开发,几年前做项目都是老老实实一行行的写代码,后来发现那些高手基本都会有自己积累起来的代码库,现在称之为开发框架,基础代码不用再去堆,主要精力可以集中在业务逻辑实 ...
- 【开源分享】2018CRM C# 源码(基于小黄豆CRMv2.0.925.3版本功能更新)
分享出来的初衷,我分享一下最近我在小黄豆CRM2.0版本(小黄豆CRM+v2.0.925.3)上加的功能,如果有类似需求的,可以把功能代码发你,节约你的开发时间.(这是在小黄豆开源免费CRM①群231 ...
随机推荐
- grub 学习之路
现在,是grub2的天下了呀,虽然网上关于grub2的资料不少,但很多都是就一个方面讨论的,跟着这些教程配置虽然也能够成功,但总是迷迷糊糊,不知这grub2背后到底是怎么实现的.所以决定花时间深入了解 ...
- vmvare虚拟机经验
关于网络连接:如果宿主机网络类型:如果是无线网络网络适配器选择桥接模式:如果是物理网线选择NAT模式: 关于刚装完系统apt-get update出现could not lock /var/lib/l ...
- [asp.net mvc 奇淫巧技] 02 - 巧用Razor引擎在Action内生成Html代码
在web开发中经常会遇到在内部代码中获取Html,这些Html是需要和数据进行一起渲染.并不是直接把Html代码返回给客户端.这样的做法有很多应用场景,例如分页.Ajax一次性获取几段Html片段.生 ...
- 《JAVA与模式》之门面模式
<JAVA与模式>之门面模式 在阎宏博士的<JAVA与模式>一书中开头是这样描述门面(Facade)模式的: 门面模式是对象的结构模式,外部与一个子系统的通信必须通过一个统一的 ...
- javaWeb学习总结(5)- HttpServletRequest应用
HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,开发人员通过这个对象的相关方法,即可以获得客户的这些信息 ...
- javascript基础-对象
原理 万物皆为对象.假设将'莫德'(我)看成对象.莫德的属性有名字,性别,年龄等. 莫德的行为有吃饭,走路,睡觉等.莫德与他人的往来即对象间的交互.对象对应世界的一个实体.类,即管理对象的分类.如果莫 ...
- python之 centos6.7下 python 3.5.2、Django-1.9 安装
在linux6.5中已经自带了python 2 .python 2.6 ,并且yum程序使用的就是自带的python,所以系统自带的python不要随意卸载否则可能导致yum用不了. 测试环境:cen ...
- 克隆 CentOS 后系统启动问题解析
问题背景: 虚拟机:VMware Workstation. 操作系统:CentOS,是Linux发行版之一. 问题: 原因:虚拟机的服务没有开启(虚拟机开启一般比较占内存,所有多数人都设置成手动开启) ...
- js创建对象的多种方式及优缺点
在js中,如果你想输入一个的信息,例如姓名,性别,年龄等,如果你用值类型来存储的话,那么你就必须要声明很多个变量才行,变量声明的多了的话,就会造成变量污染.所以最好的方式就是存储到对象中.下面能我就给 ...
- SQL Server 在Alwayson上使用内存表"踩坑"
200 ? "200px" : this.width)!important;} --> 介绍 因为线上alwayson环境的一个数据库上使用内存表.经过大概一个星期监控程序发 ...