基于ssh的新闻主页管理系统

项目分为两个模块:用户模块 管理员模块

设计指标:
1)使用Struts2、Hibernate和Spring框架实现新闻管理系统的前台和后台。
前台功能(用户模块):
a)首页按新闻类型分块列表显示每类新闻;
每条新闻显示的内容包括新闻标题和发布时间,要求对标题设置超链接,点击该链接后新开一个页面显示该新闻标题、发布时间、内容和来源。
b)在首页中还可以实现标题的模糊查询以及发布时间的范围查询。
后台功能管理员模块():

a)后台必须具有权限的用户才可以登录。
b)进入后台的用户,可以管理新闻类型和新闻。
c)新闻类型管理包括:发布新闻类型、新闻类型查看。点击新闻类型后打开新闻类型列表。在列表中的每条类型可以执行删除和更新操作。
d)新闻管理包括:发布新闻、新闻查看。点击新闻类型后打开新闻类型列表。在列表中的每条类型可以执行删除和更新操作。
e)新闻列表显示时可分页显示(可选)
f)要求用户登录以及发布新闻类型时进行非空校验;发布新闻时进行标题、内容等项目的非空校验,另外要求新闻必须属于某个类型。
2)要求使用连接池和事务管理。
功能比较简单 意在熟悉使用ssh框架

进入正题

  1. 新建一个Web项目导入 hibernate5、Struts2、spring5 的jar包

Hibernate需要的jar包
spring需要的jar包
Struts2需要的jar包
2.建立项目结构
在这里插入图片描述
3.新建spring Struts2 hibernate 配置文件
放在项目根目录下面
4.注意在这里配置导入文件位置
在这里插入图片描述
5 Struts2 导入包配置文件 注意点,这里经常踩坑
在这里插入图片描述
6 添加库 以及服务器的包 这里也是坑
在这里插入图片描述
7 准备工作完成 可以开始新建数据库了,注意都要设置id为主键并且勾选自动递增
数据库下面有三个表
admin表
管理员表
category表
新闻类型表
news表
新闻表
8 添加dataBase生成bean文件以及hbm配置文件
在这里插入图片描述

输入
数据库帐号、密码
端口号就是你的数据库端口 默认都是3306
Driver. 选择 MySQL for 5.1
点击TestConnection
在这里插入图片描述
有个绿色的勾这样就算成功了 然后点击schemas页 勾选你需要数据库以及表
在这里插入图片描述
左下角点击Persistence
在这里插入图片描述
右键选择
在这里插入图片描述
勾选你需要的数据表 生成bean文件以及hbm配置文件
在这里插入图片描述
点击确定就行了
然后再去相应的文件夹查看
导入完成
idea有一些坑 就是生成的hbm配置文件需要自己修改 生成的并不好用 我只是懒得创建文档
还有bean文件也是要自己改的 在里面 加个toString函数对后面开发比较有用
按住ALT+INSERT键 选择 toString就行了
在这里插入图片描述
9 这个项目采用的是自动扫描注解
因此不用在applicationContext.xml配置 action Service 以及 Dao

10 贴部分关键代码
Action自动扫描注解代码1:
在这里插入图片描述
校检代码2:
在这里插入图片描述

关键代码(使用持久化对象)3:
在这里插入图片描述

范围模糊查询Dao代码:
在这里插入图片描述

内容模糊查询Dao代码:
在这里插入图片描述
拦截器配置文件代码:
在这里插入图片描述
Spring配置文件
在这里插入图片描述
分页查询Action代码:
在这里插入图片描述

分页查询Dao代码:
在这里插入图片描述
分页查询Jsp页面代码:
在这里插入图片描述
分页查询效果:
在这里插入图片描述
前端页面1:
在这里插入图片描述
模糊查询页面:
在这里插入图片描述

注解:
Newaction.java
在这里插入图片描述
NewDaoInterface.java
在这里插入图片描述
NewService.java
在这里插入图片描述
总结经验

ssh
1struts 是因为struts是基于mvc模式的,很好的将应用程序进行了分层,使开发者更关注业务逻辑的实现,struts有着丰富的标签库,能大大的提高开发效率
使用hibernate是一个轻量级的持久层框架,功能丰富
使用spring 是因为他的控制翻转和aop框架多层的j2ee系统框架
2 在表示层中,首先通过jsp页面实现交互界面,负责传送请求和接收相应,然后后struts根据配置文件 将actionServlet接收到的request发给action处理
在业务层中,管理服务组件的spring ioc容器负责向action提供业务模型组件 和组件的协作对象处理组件完成业务逻辑,并提供事务处理,缓冲池等容器组件以提升系统性能和保证数据的完整性
在持久层,则依赖hibernate的对象化映射好数据库交互 处理dao组件请求的数据 病房会处理结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值