您的位置:首页 > 其它

电子商城开发第一天(基本的分析)

2014-03-13 21:38 183 查看
一、Estore电子商城 --- 知识的整合,加入一些真实开发中的思想 面向切面编程 利用注解加本地线程的方式实现事务管理

1.用户注册(验证码 前台js校验 激活邮件--javamail开发)

2.用户激活

3.用户登录(记住用户名 30天内自动登陆)

4.用户注销

5.添加商品(文件上传)

6.商品列表

7.商品详细信息页面

8.购物车 (session) 修改商品数量 删除所购买的商品 清空购物车

9.生成订单 (多表设计)

10.查看订单列表 (多表查询)

11.定单删除 (事务控制--面向切面编程 利用注解+本地线程变量的方式控制事务)

12.在线支付 (易宝+网银 -- 调用第三方接口实现特定的功能)

13.销售榜单下载 (组织称excel文件 下载)

14.权限控制

数据库:

用户表:编号 用户名 密码 昵称 邮箱 激活状态 激活码 角色 注册时间

商品表:编号 商品名称 商品种类 单价 库存数量 图片地址 描述信息

订单表:订单编号 下单时间 收货地址 订单金额 所属用户编号 支付状态

订单项表: 订单编号 商品编号 购买数量

用户 1 -- * 订单

订单 * -- * 商品

create database estore;

用户:

create user estore identified by 'estore';

授权:

grant all on estore.* to estore;

use estore;

create table users (

id int primary key auto_increment,

username varchar(40),

password varchar(100),

nickname varchar(40),

email varchar(100),

role varchar(100) ,

state int ,

activecode varchar(100),

updatetime timestamp

);

create table products(

id varchar(100) primary key ,

name varchar(40),

price double,

category varchar(40),

pnum int ,

imgurl varchar(100),

description varchar(255)

);

create table orders(

id varchar(100) primary key,

money double,

receiverinfo varchar(255),

paystate int,

ordertime timestamp,

user_id int ,

foreign key(user_id) references users(id)

);

create table orderitem(

order_id varchar(100),

product_id varchar(100),

buynum int ,

primary key(order_id,product_id), #联合主键,两列的值加在一起作为这张表的主键使用

foreign key(order_id) references orders(id),

foreign key(product_id) references products(id)

);

javaee经典三层架构

com.itheima.web

.service

.dao

.domain

.exception

.util

.factory

.test

.filter

.listener

junit

jstl

beanutils

mysql驱动

c3p0

dbutils

fileupload

config.properties

c3p0-config.xml

配置虚拟主机:

在tomcat的conf/server.xml中配置:

<Host name="www.estore.com" appBase="E:\resource\resource\20140212\Estore">

<Context path="" docBase="E:\resource\resource\20140212\Estore\WebRoot"/>

</Host>

将工程目录配置虚拟主机目录,其中的WebRoot目录配置为缺省虚拟主机

修改hosts文件使www.estore.com指向本机

通用工厂类实现解耦

全站乱码过滤器

工具类

javabean

*权限管理器

===================

1.用户注册(邮件发送):

index.jsp :

根据用户登录状态提示不同消息,如果没有登录,欢迎光临,游客登录 注册如果登录过 提示 欢迎回来 xx,注销

regist.jsp:

提供注册用 的表单,允许输入用户的基本信息,提交(验证码 js校验)

RegistServlet:

检查验证码,如果不正确提示

封装数据到bean 校验数据

调用Service中的方法注册用户

重定向到主页

UserService:

注册用户的方法,检查用户名是否已经存在 注册用户 发送激活邮件

UserDao:

根据用户名查找用户

添加客户

2.激活用户 -- 点击激活邮件中的连接,应该将用户的激活状态从0 改为 1

ActiveServlet:获取激活码 调用Service中激活用户的方法 重定向到主页

UserService:提供激活用户的方法 根据激活码找到用户 如果找不到用户 提示 , 找到用户但是用户已经激活过,提示 不要重复激活, 如果没激活过,检查是否超过24小时,如果超过了,提示激活码超时,要求重新注册,删除该条用户

UserDao: 根据激活码找用户 根据用户id删除用户 更改用户的激活状态

3.用户登录(记住用户名 30天内自动登陆)

index.jsp <登录>

login.jsp 提供登录用户的表单,允许用户输入用户名 密码

LoginServlet 获取用户名 密码 调用Service中根据用户名密码查找用户的方法,找不到 提示,找到则校验用户是否已经激活,如果没激活提示,激活过,则登录用户返回主页

UserService 根据用户名密码查找用户

UserDao 根据用户名密码查找用户的方法

*记住用户名 -- 用js解码URL编码

*30天内自动登录 -- 配置Cookie和过滤器实现自动登陆

4.用户注销

杀死session
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: