我的日常

登录/注册
您现在的位置:论坛 盖世程序员(我猜到了开头 却没有猜到结局) 项目源码 > 基于Struts +Hibernate开发的博客管理系统源代码
总共48087条微博

动态微博

查看: 28513|回复: 195

基于Struts +Hibernate开发的博客管理系统源代码

  [复制链接]

279

主题

41

听众

689

金钱

版主

该用户从未签到

跳转到指定楼层
楼主
发表于 2015-04-30 18:26:20 |只看该作者 |正序浏览
一、        分析需求
) I6 d; f2 v3 H3 r! l* {+ J1.        用户注册:任何访问者都可以注册为博客管理系统的合法用户+ N  b7 g+ i' ^' f/ y
2.        用户登陆:登录的用户具有浏览日志,发表日志,修改日志,删除日志,删除日志评论的功能
" |6 y# Z$ u$ G3.        浏览日志:登录后的用户可以浏览自己的网络日志和评论
8 D3 S$ Y9 r$ i4 w4.        发表日志:登录后的用户可以发表自己的网络日志
8 O0 L! P( O0 M4 y5.        修改日志:登录后的用户可以修改自己的网络日志- k2 _, w( F& a
6.        删除日志:登录后的用户可以删除自己的网络日志; [+ ^* c/ B0 H( T
7.        删除评论:登录后的用户可以删除针对本人的网络日志的评论- |6 t& v% b* h9 B0 N: ^5 X$ E
8.        博客浏览:任何访问者都可以浏览特定用户博客中的日志(按照博客用户的用户名浏览此用户)! f. {: {! A. J8 U7 R
9.        发布评论:任何访问者都可以针对别人的网络日志发表评论
7 _8 O2 a+ f' {' X& p3 S
: V3 k: o8 k9 i- T$ l0 h2 p

0 L' s/ [, {' n! [二、        分析建模; v. E8 R& R# `  t4 i; b$ {
1.        实体建模- l+ X) H" `/ `, S/ ]# F9 R
2.        关系模型
0 P4 s& q7 k1 S. V1 }5 c3.        构建域模型User/Message/Reply( T. X* ]7 [) x, e+ g
7 Q1 U% A! H( b$ H2 i* }

6 E# \5 z5 T5 o( M三、        项目初始化
9 p8 z+ u6 e+ Z0 [% U* O% f1.        添加struts支持
  j" ^8 m/ y/ m& E) s; E( j2 U2.        添加hibernate支持3 t& \' Z8 F# g7 p) u8 e
3.        添加log4j/dom4j/common-lang.jar/mysql相关类库; Q) E* X8 ], a9 @0 q9 @
4.        定义系统异常类# q1 e  U: B& J1 W
A.        BlogException.java
8 i: M! z2 r5 \! ~" a: _3 O5 e3 p0 i% k; e# PB.        BlogDAOException.java
: ]( \+ L8 i3 H* \" j
8 h" a7 P9 W& X: M. O
& ^5 V6 ]1 g" c( e* J
四、        实现域模型(实体关系建模)
3 \% k/ g4 ]% W( \& D1.        Java实现域模型! Q$ Y) H' Q1 q% Y) P5 J
使用Java语言描述于模型:BaseModel.java/User.java/Message.java/Reply.java
6 G6 j  o5 }- n, C; {6 r2.        数据库实现域模型
) H0 f& ~2 }$ k7 b. I* x1 A+ n使用数据库语言描述域模型:userinfo表/message表/reply表
+ E4 ]- r1 [; S8 Z/ O; a3.        定义映射文件
. Y5 G8 j+ o* \( G
0 x( y3 Q5 ^0 f4 S& G

8 t: G7 i: |. ?! E! b五、        基于Hibernate实现DAO! }# @: M$ ]+ E$ T
1.        HibernateUtil工具类:简化Hibernate操作
* T* J9 a& G' X8 c/ @! J, ^* P2.        HibernateFilter过滤器:事务处理
9 w# S2 i% s0 Y  {- J. B& A# ?$ a3.        HibernateDao基础Dao:简化DAO操作5 b8 H* H% X4 M0 [& |& H, C
4.        实现DAO
, z" Y1 K  s: ?. ~) d六、        基于dom4j实现DAO与表现层层解耦! A: o1 |& D+ \& i
# o) `% X. f2 ?& x! V

2 }6 d  g: |3 l七、        DAO单元测试
9 c0 ]* `1 V% F# P( q- J3 n- {2 l  `) j0 j

$ O! [! j3 ~0 A- B: |0 ?八、        基于Struts实现表现层7 g* i" `  x: r% e
A.        用户管理模块
" n* H, y' |8 r. ]6 i8 X, g4 B1.        用户注册业务流程9 l$ U6 s) V- m
a)        配置注册页面跳转Action:registerInput.action3 ^) i& R! ]* ~8 C+ R% I
b)        开发注册页面:register.jsp4 {0 K) E# E, x1 T$ E
c)        开发注册Action:RegisterAction.java/ RegisterAction校验文件& Y0 o9 f+ M" I5 j
i.        获取并保存用户注册信息, _+ p5 L. A5 Y* A, ^# C; x
ii.        注册失败:添加注册失败提示信息;返回注册页面:register.jsp3 F- T9 T4 D- K0 l
iii.        注册成功:在Session中添加登录用户信息;返回博客管理主页面:homepage.jsp& L$ k% u6 S& G. }2 V
2.        用户登陆业务流程
1 ~& J9 {- j  p) {* x; C+ u7 _  m# Ca)        开发登录页面:login.jsp3 V: V3 c; g8 f( z# }* }% j
b)        开发登录Action:LoginAction.java/ LoginAction校验文件
* V3 z5 n$ ~8 ai.        根据用户名查询用户信息
& b5 d& E) Y) z8 |7 j! R8 i" ]ii.        如果用户不存在或者密码不匹配则登录失败,否则登录成功
9 z: T9 a5 m( j7 _iii.        登录失败:添加登录失败信息;返回登录页面:login.jsp' ]# ]' u0 r  O' N$ @
iv.        登录成功:在Session中添加登录用户信息;返回博客管理主页面:homepage.jsp  `- d0 Q# K! n7 ~  R
B.        博客管理模块$ X" `. e: k' w1 h
1.        浏览日志业务流程
. ]% V. G$ k! e% m4 Ka)        开发浏览日志Action:HomePageAction.java
7 w1 d. ?- T; B' @$ G. o! Gi.        得到当前登陆用户的信息2 s, u4 K% C) V1 n( O
ii.        根据登录用户信息得到User持久化对象
% g3 q" D( Z2 Aiii.        返回到博客管理主页面4 Y% @7 p- P. j; p6 ^1 R- x
b)        开发博客管理主页面:homepage.jsp
& Z- D! A  `- `$ M9 J% }  ?( di.        根据用户持久化对象获取用户日志迭代输出/ U5 |  }- V! R/ A: ]6 m: _4 S
ii.        根据每条日志对象获取日志评论迭代输出
2 K; W) a; P/ ~* x$ U2.        发表日志业务流程
/ q4 A9 [* c1 C; V# Fa)        配置发表日志跳转Action:messageAddInput.action
. Y; @4 ^  w: q. tb)        开发发表日志页面:message_add.jsp  a' `9 p1 \5 }
c)        开发发表日志Action:MessageAdd.java/ MessageAdd校验文件8 R( l7 F" o( G5 s4 w
i.        保存日志信息
9 ]" N) C& O- q& f4 lii.        设置提示信息
' V4 G% W2 r( ]6 f! Ziii.        返回到博客管理主页面1 l9 `, w5 ^3 k  g, ^, ~
3.        修改日志业务流程
" T1 l/ _& o6 F, N; P: Ea)        开发修改日志跳转Action:MessageUpdateInputAction.java
. y& m* k) I4 {, k( ^/ u1 C' Fi.        根据日志ID获取日志对象
; s% b3 B5 U. u7 |ii.        返回修改日志页面message_update.jsp: \  m* R: W9 l5 d! C6 k
b)        开发修改日志页面:message_update.jsp
* i8 y* c. J2 F  Y1 ~9 Wi.        根据日志持久化对象获取并展示被修改的日志信息9 h9 ?* H: C* n( h
c)        开发修改日志Action:MessageUpdateAction.java/ MessageUpdateAction校验文件
5 L) f" ]' M$ m' e" ti.        根据ID得到Message对象
, X7 H+ A4 r; Y* Jii.        更新数据
) w5 M+ B+ x, |" J6 g$ Q9 z" u. Q" ~iii.        返回博客管理主页面- Q- ?1 b( H7 o3 i7 `& J- Z( A6 N
4.        删除日志业务流程" y: }6 H, y+ D$ A% D
a)        开发删除日志Action:MessageDeleteAction.java5 z4 n! W6 j# s
i.        获取当前用户ID
  ^4 k! E. n2 O/ P  L& wii.        根据用户ID和日志ID删除日志
- d* y: V' q0 r3 @iii.        添加提示信息
, Q" M$ e9 G4 g, D; Giv.        返回博客管理主页面
2 v2 F' V5 S* P! B5.        删除评论业务流程
$ M" `) P! s$ S( B& i  Na)        删除评论Action:ReplyDeleteAction.java# u* `* a0 P$ X* k3 e5 L
i.        获取当前用户ID' x' v- p4 o* D6 C
ii.        根据用户ID和评论ID删除日志; s7 N5 M7 }+ _9 b
iii.        添加提示信息( {% E" F* {. A, s9 {( w) H: i
iv.        返回博客管理主页面0 |( Y- ^8 r1 U; P( y( A* A7 k
C.        博客访问模块" F/ E  q! o8 c& C+ b
1.        博客浏览业务流程+ ^: w  U9 D2 ?% W6 n2 C& b
a)        开发博客浏览Action:BlogAction.java0 s/ D: ?' T7 v9 }) d
i.        根据用户名获取持久化User对象
, A, M1 j1 ]+ r% V/ b, c' v- \ii.        返回博客浏览主页面0 F* P; j$ [& M
b)        开发博客浏览主页面:blog.jsp
0 ]5 G) m" ^, D* N) C) Xi.        根据用户持久化对象User获取用户日志迭代输出& F3 U# C0 z3 F4 y# y" L
ii.        根据每条日志对象获取日志评论迭代输出6 ]/ h2 Y+ ^! S3 z+ H# c
2.        发表评论业务流程5 U7 P2 n+ G9 \3 D7 f* Z+ t
a)        开发配置跳转Action:replyAddInput.action! o6 I. s8 A% |* t3 [+ Y) E4 C- @4 {
i.        根据日志ID获取被评论的日志对象message
6 {& v# W5 W: L5 Kii.        返回添加日志评论页面0 F, P0 U: J8 k
b)        开发添加评论页面:reply.jsp0 d8 I% ]: |7 f
i.        显示持久化的message信息(且使用隐藏表单域保存Message信息)
* d+ j  ?  p, aii.        显示评论的表单( @6 f$ @5 I, s# O* C1 Y0 E8 @
c)        开发添加评论Action:ReplyAddAction.java/ ReplyAddAction验证文件9 ]' Q8 u! b% M; q6 L$ ^
i.        获取并保持评论信息
: @* j) }) z  ~& Tii.        评论失败:返回添加评论页面reply.jsp(所以Action中应该保存被评论的日志信息)
& \' w  C5 _4 M/ U0 j* e4 `iii.        评论成功:返回博客浏览主页面:blog.jsp6 v* f. p6 `. ~) i  P. C6 ~8 j

3 w! A3 e2 u$ \+ ]基于Struts +Hibernate开发的博客管理系统源代码5 A  F8 w  n/ B# M( r# ?
* ?6 T: e# H/ t& S, f

$ ]/ z5 ~( Q/ ^+ E7 M9 J0 p. J: a9 x. |解压码:
游客,如果您要查看本帖隐藏内容请回复

) P6 }( j# |2 ^3 z) y7 v

- b5 B; j( [) E6 j8 r
" Q, ]' F3 u$ J" x1 w! l- R0 E1 N& o- R! a* F3 j/ r

科帮网 1、本主题所有言论和图片纯属会员个人意见,与本社区立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与科帮网享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和科帮网的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、科帮网管理员和版主有权不事先通知发贴者而删除本文


JAVA爱好者①群:JAVA爱好者① JAVA爱好者②群:JAVA爱好者② JAVA爱好者③ : JAVA爱好者③

本帖被以下淘专辑推荐:

shiyi    

47

主题

0

听众

751

金钱

四袋长老

  • TA的每日心情
    奋斗
    2020-11-12 16:05
  • 签到天数: 24 天

    [LV.4]偶尔看看III

    196#
    发表于 2020-06-05 09:39:32 |只看该作者
    看起来不错!
    回复

    使用道具 举报

    xinqi    

    0

    主题

    0

    听众

    62

    金钱

    二袋弟子

    该用户从未签到

    195#
    发表于 2020-05-13 20:23:17 |只看该作者
    学习学习啦啦啦啦
    & {# b1 O" r- B4 O  m
    回复

    使用道具 举报

    2

    主题

    0

    听众

    162

    金钱

    三袋弟子

    该用户从未签到

    194#
    发表于 2018-05-09 23:03:04 |只看该作者
    向楼主致敬,拿来学习了
    回复

    使用道具 举报

    0

    主题

    0

    听众

    87

    金钱

    三袋弟子

    该用户从未签到

    193#
    发表于 2018-05-01 14:50:29 |只看该作者
    1111111112222222222
    回复

    使用道具 举报

    2

    主题

    0

    听众

    114

    金钱

    三袋弟子

    该用户从未签到

    192#
    发表于 2018-04-28 17:26:58 |只看该作者
    我要好好学习一下
    回复

    使用道具 举报

    2

    主题

    1

    听众

    268

    金钱

    三袋弟子

    该用户从未签到

    191#
    发表于 2018-03-21 00:25:34 |只看该作者
    有没有jar包的。。。
    回复

    使用道具 举报

    2

    主题

    1

    听众

    110

    金钱

    三袋弟子

    该用户从未签到

    190#
    发表于 2018-03-20 00:08:09 |只看该作者
    hadsasd asdadsdad
    回复

    使用道具 举报

    0

    主题

    0

    听众

    73

    金钱

    二袋弟子

    该用户从未签到

    189#
    发表于 2018-01-16 11:13:14 |只看该作者
    好好学习,天天向上。
    回复

    使用道具 举报

    2

    主题

    0

    听众

    113

    金钱

    三袋弟子

    该用户从未签到

    188#
    发表于 2018-01-15 17:36:55 |只看该作者
    一起学习学习.....................
    回复

    使用道具 举报

    快速回复
    您需要登录后才可以回帖 登录 | 立即注册

       

    关闭

    站长推荐上一条 /1 下一条

    发布主题 快速回复 返回列表 联系我们 官方QQ群 科帮网手机客户端
    快速回复 返回顶部 返回列表