TA的每日心情 | 衰 2021-2-2 11:21 |
---|
签到天数: 36 天 [LV.5]常住居民I
|
1. 网站模块* v% D8 N1 K0 ^9 B/ Z
前台:7 G1 ?: ?( _+ K/ T% p3 Y5 h
* 用户模块- V3 K% y2 C4 O3 D7 x
* 分类模块. r1 G: }7 z" m& a, T
* 图书模块
; J6 V" {- g/ @+ E- z$ J* E# N9 e * 购物车模块8 p; `5 q/ g! b0 H1 ?
* 订单模块
% f4 F* ~9 R1 T* i 后台:
z8 s( X4 w4 o" K * 管理员模块
0 X$ p6 Y; ]# K0 J" ^ * 分类管理模块: m8 l! _1 @) m+ p' s
* 图书管理模块) z) @7 q& y7 S
* 订单模块$ i) Q2 q5 _' Q, U3 L
1 _3 }3 }( l9 H; b8 c, N8 t, a" ?
2. 数据库满足第几范式+ _ W" Y& e. Q1 Z! R4 c% B! i
第三范式
* N" D8 {% h7 L- S
# {- K. r" O* [4 P' L" k) a3. 第三范式的定义是什么
: U3 i0 [' [% p 第三范式是第二范式的子集,即满足第三范式必须先要满足第二范式。
8 c2 ]* A7 f$ D# ?2 ` 在一个关系中,不包含其他关系中的非主关键字信息。
% l; L; G& ]% D8 }9 g$ e 例如:部门表包含:部门id、部门名称、部门简介等,在员工表中只能包含部门id,部门名称等非主关键字信息就不能包含了。# m, ?! q# t0 p0 A0 B: r
如果只有员工表,没有部门表时,在员工表中给出部门名称等属性,也不应该,而是应该把部门名称等信息提取出来,形成部门表。
. z9 I, V. c/ [) `- L1 ^: O' v& Z( _
& { { Q0 i! `5 h+ g4. 某某模块都有什么功能!0 j3 Q# w! c8 h a: E
4.1 前台:
( D- |7 }0 y9 F: x9 L& | 1). 用户模块功能有:
0 D4 N8 j2 k8 Q6 T9 G! L * 用户注册:
# D' |* s. b! {3 U4 ^; n; B > 表单页面是jQuery做校验(包含了ajax异步请求)
; g, j8 i: B/ _1 _% E6 j # 在输入框失去焦点时进行校验;$ C9 P! d( y! b3 x
# 在提交时对所有输入框进行校验;
9 ~2 X, U q: t# p # 在输入框得到焦点时,隐藏错误信息。
7 n& |* V6 N8 A$ N > 表单页面使用一次性图形验证码;% l8 N% H" k1 O6 E9 c
> 在servlet中再次做了表单校验。' _% E- f7 p( s8 A4 K0 s
> 注册成功时,使用javaMail给注册用户发送激活邮件,邮件中包含用于激活的链接,链接包含激活码参数;: b3 J4 I$ z: {- P. B( k" ?
* 用户激活:通过激活码查询用户,如果查询不到用户,那么无效激活码!激活码使用uuid生成!9 i4 A2 H2 X! {
* 用户登录:
7 j& P; P. q+ n- _" Z+ t& N > 表单校验与注册功能相同;5 z5 b d; R% I; B+ K5 ~
> 登录成功时会把当前用户名保存到cookie中,为了在登录页面的输入框中显示!
7 ?, q+ I4 g: {- n * 用户退出:销毁session+ y% O7 ]) Q( s0 t: y1 ~
2). 分类模块
# z' `5 X2 R0 Y; v- z. ?1 ~ * 查询所有分类:
2 ]) P( f9 I1 O6 K > 有1级和2级分类
" |: M# \: J& K ^0 q- c2 c > 在页面中使用手风琴式菜单(Javascript组件)显示分类。8 {- q, E2 O% W/ a
3). 图书模块:
( Q- E0 V- V5 W! U) p6 B; R9 ? * 按分类查询
4 }/ _$ a% I3 u9 N * 按作者查询
: ^1 _: U& s) r( L+ y * 按出版社查询
- U, s3 X- o8 P" ~0 n * 按书名模糊查询
( N/ }' @* o6 L) t8 Y * 多条件组合查询
, W! O+ l) F1 E! T+ g * 按id查询/ A, Q5 B9 w0 B1 ~: X
除按id查询外,其他都是分页查询。
6 h2 P: V4 H/ g3 w1 P( l 技术难点:3 ]! L9 b9 v# H. n
> 组合查询:根据多个条件拼凑sql语句。5 T. ]- V% i' f
> 带条件分页查询:条件可能会丢失。使用自定义的PageBean来传递分页数据!
+ n# V$ n. D) ?" l7 O& U > 页面上的分页导航:页码列表的显示不好计算!
3 q* S7 r1 n2 ]+ z1 p 4). 购物车模块:
3 m) o; ]: L7 ?5 ]1 _- B# B# m * 添加条目
2 G7 M; v* f3 B8 ~! r5 \ * 修改条目数量
8 Z: g6 Y) @7 w2 C * 删除条目( l& G8 M: X* P
* 批量删除条目
4 ?, p6 s3 s( D5 U$ e* Y * 我的购物车0 z- O/ _ B2 {' l& b# i: u1 g. c
* 查询被勾选条目
# }9 ~6 t6 r7 d$ C. ` 购物车没有使用sesson或cookie,而是存储到数据库中。! U) g$ M4 q3 A' j6 ~
技术难点:, \1 D. Y4 t+ \
> 添加条目时,如果两次添加针对同一本书的条目,不是添加,而是合并;" I4 B) T5 o/ i: L& p" q
> 修改数量时使用ajax时请求服务器端,服务器端返回json。
! Q/ E7 p) M3 a) f > 大量js代码
y/ L7 \6 N: E1 k 5). 订单模块:8 P7 K; p4 i' k4 U# C. z
* 生成订单& j7 V5 b) y: e. t
* 我的订单/ U" A' r% \% @5 n1 T, r! u6 m
* 查看订单详细# ?: P. L+ {# L- G# Q
* 订单支付
. H" a! r2 I1 Q * 订单确认收货
2 n' l) x1 d7 Z * 取消订单! A. W. G, F% y
技术难点:
' P6 R3 M/ ^/ H A# [/ d4 ? > 使用易宝在线支付平台:
, c1 q! e% B" A5 ?7 y, J# L4 m+ \2 B' o # 按照易宝支付范围与易宝支付网关对接。( K& c9 q& l9 F# c6 N& X. s" G
# 接收易宝的两种应答机制,针对点对点应答给予回复。8 p4 g2 V9 u0 J4 S) e7 `+ A
# 处理多次应答照成的数据库重复确认。
$ W0 X1 {; f3 z# Z9 a3 C4.2 后台
- g$ T" V3 o5 O# m 1). 管理员
$ O* M/ J! s1 `# ^8 n% E * 管理员登录/ |/ O0 z% }) F9 c4 M9 R
2). 分类管理# j9 c0 N( o1 Q# V% ?* t# W
* 添加1级分类4 n" w8 q v% j) J. V/ }! D7 ]
* 添加2级分类: 需要为2级分类指定所属1级分类
( {; M7 y1 P. W; B& }" r) Y& D * 编辑1级分类
. @( C6 G' _! p- z * 编辑2级分类: 可以修改所属1级分类6 }, ^) M% o4 ?0 X+ V
* 删除1级分类: 存在子分类时,不能删除
4 Q* J/ Z9 p0 R5 A: i% {; A0 p" a+ Y * 删除2级分类: 当前2级分类下存在图书时不能删除% S6 S4 F) V& Z2 |
* 查看所有分类
/ Q1 J$ r. q" V, ~- Q 3). 图书管理
- F2 ^2 w c7 d8 Z* b& Z' S * 各种查询:与前台相同1 \& ~5 `. t% k9 I9 G3 `
* 添加图书:
/ ^$ ^$ R& k8 @5 q1 F5 U/ j > 上传图片
0 v7 E. c7 M+ s; b3 O > 页面中使用动态下拉列表显示2级分类,当指定1级分类后,2级分类下拉列表中动态显示该1级分类下所有2级分类名称" V [: B$ T* R! Z7 {" ~
* 修改图书: 与添加图书相似,也使用动态下拉列表
( d8 Z2 r% x$ g# x * 删除图书: 需要删除图书对应图片,再删除图书" Q. K) W) R! B1 y7 I9 s3 I1 s( y! C4 z
4). 订单管理- g$ T T$ s6 H
* 各种查询7 m7 U* {6 p* {1 v. Y
* 订单发货
' G: S9 Q6 j0 j1 g * 订单取消2 l L0 _' @( I% w( }( J
==============================================$ Q4 Y& x5 s9 |6 @
界面展示
! E# @/ t1 T) b# W
]) [- E# d' I" w6 H/ W
/ _- { J8 p( C4 D( H f
/ b$ R3 |4 A, u, I
2 V/ J$ c5 ?$ v1 w7 r u2 j$ A# B
' ^' C, t( k$ ^7 Q5 a
5 m+ Y" Q) y. |/ T! y1 j( y+ ?
7 f4 f; s4 S! x4 X8 H" P + z$ u; ~, b1 B( s! P
F5 i0 p* z( ^
3 p8 ]! ^. h0 `. i/ g
8 Q9 t6 C+ p; c# J3 T7 R
0 |. a' X/ B. d+ ^
项目源码下载地址:点击下载" N' V" C4 I) a9 P' S$ G X w4 i
0 o, ^& { A* J提取码: 游客,本帖隐藏的内容需要积分高于 200 才可浏览,您当前积分为 0
8 c( y# M* t; r# G, A) i, G" P3 S, c( Y1 b
6 ~* m# i' x- R% V& j8 `+ C5 f! E* j1 Z$ h- H. j- o
- K5 ?! s2 p! y4 N) d( h% ~" _' q5 S) U3 S$ ~3 s' E* r/ g$ d+ }
|
-
总评分: 帮币 + 81
查看全部评分
|