# Press
**Repository Path**: hcsp/Press
## Basic Information
- **Project Name**: Press
- **Description**: No description available
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2016-10-02
- **Last Updated**: 2021-03-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Press
本项目开发采用springMvc的注解模式开发
## 项目结构说明
#### resources是配置文件资源(不多解释)
#### src是java源文件,其中UrlFilter是url过滤器,过滤url然后请求转发,者响应重定向或者不做处理
#### Urlhandler是处理url的实现部分
#### web下DemoBlog是测试模板,可以认为是默认模板
#### WEB-INF下admin是管理员的的后台控制界面
#### logs为日志目录
#### lib为项目依赖的jar包
前端展示模板结构
## Press的模板主要分为如下几类:
#### 说明
1.每个属性的设置封装成一个方法。
2.公共属性封装成一个类,每个属性一个方法
3.属性名称严格按照要求的名字
#### application中的属性
1.属性名:Option 配置信息 使用方法
${Option['web_name']} //站点名称
2.属性名:CTPATH 带有模板名称的url模板根目录 使用方法
${CTPATH}/static/example.js
3.属性名:CONTEXTPATH 上下文路径 使用方法
${CONTEXTPATH}/DemoBlog/static/example.js
4.属性名:URLIndex 模板首页的url 使用方法
首页
5.属性名:URLContent 模板内容详情页的url
6.属性名:URLSearch 模板搜索页的url
7.属性名:URLTaxonomy 模板分类页的url
8.属性名:URLUser 模板博主信息页的url
#### 公共属性
1.属性名:contentsTop10 按照点击量排序文章的前10 使用方法
${content.title} //文章标题
${content.url} //查看文章的url
2.属性名:contentsRecommend 随机推送10文章 使用方法
${content.title} //文章标题
${content.url} //查看文章的url
3.属性名:menus 顶栏菜单 使用方法
${menu.url} //菜单指向的url
${menu.title} //菜单选项的名字
${menu.status} //当菜单的状态(值:active或者null。active表示当前是选中项,null表示未选中)
#### 首页模板 (index.html)
1.属性名:title 当前页面的标题,使用方法 ${title}
2.属性名:contents 所有文章的list集合,使用方法
${content.url} //查看文章的url。
${taxonomy.key}//该文章分类的的url。
${taxonomy.value}//该文章分类的名称。
${content.title} //文章标题
${content.summary} //文章概要
${content.thumbnail} //文章缩略图
${content.author} //文章缩略图
${content.createDate} //文章发布日期
${content.modifiedDate} //文章最后修改日期
${content.watched} //文章点击量
3.属性名:公共属性/contentsTop10
4.属性名:公共属性/contentsRecommend
5.属性名:pages 当前页面的分页 使用方法
${page.url} //跳转页面url
${page.num} //页面号
${page.status} //当前页的状态(active或者null。active表示当前页,null表示非当前页)
6.属性名:pageCount 总共分页 使用方法
例:
总共${pageCount}页
7.属性名:pageNow 当前页面号 使用方法
例:总共5页,当前第${pageNow}页
8.属性名:公共属性/menus
9.当前页面接收参数
(1)没有参数:默认显示第一页的数据
(2)参数pn 表示请求的页面号;
#### 分类页面模板 (taxonomy.html)
1.属性名:title 当前页面的标题,使用方法 ${title}
2.属性名:contentsTax 所有文章的list集合,使用方法
${content.url} //查看文章的url。
${taxonomy.key}//该文章分类的的url。
${taxonomy.value}//该文章分类的名称。
${content.title} //文章标题
${content.summary} //文章概要
${content.thumbnail} //文章缩略图
${content.author} //文章缩略图
${content.createDate} //文章发布日期
${content.modifiedDate} //文章最后修改日期
${content.watched} //文章点击量
3.属性名:公共属性/contentsTop10
4.属性名:公共属性/contentsRecommend
5.属性名:pages 当前页面的分页 使用方法
${page.url} //跳转页面url
${page.num} //页面号
${page.status} //当前页的状态(active或者null。active表示当前页,null表示非当前页)
6.属性名:pageCount 总共分页 使用方法
例:总共${pageCount}页
7.属性名:pageNow 当前页面号 使用方法
例:总共5页,当前第${pageNow}页
8.属性名:公共属性/menus
9.属性名:menuNow 当前页面的菜单名字 使用方法
例:当前是菜单名称${menuNow}
10.当前页面接收参数
(1)没有tax参数:跳转至首页
(2)没有pn参数 访问当前分类请求下的第一页;
(3)参数pn 表示请求的页面号;
(4)参数tax 表示当前请求的分类菜单
#### 详情页模板 (content.html)
1.属性名:title 当前页面的标题,使用方法 ${title}
2.属性名:content 要访问文章的内容,使用方法
${content.url} //查看文章的url。
${taxonomy.key}//该文章分类的的url。
${taxonomy.value}//该文章分类的名称。
${content.title} //文章标题
${content.summary} //文章概要
${content.thumbnail} //文章缩略图
${content.author} //文章缩略图
${content.createDate} //文章发布日期
${content.modifiedDate} //文章最后修改日期
${content.watched} //文章点击量
3.属性名:公共属性/contentsTop10
4.属性名:公共属性/contentsRecommend
5.属性名:公共属性/menus
6.属性名:menuNow 当前页面的菜单名字 使用方法
例:当前是菜单名称${menuNow}
7.属性名:nextContent 当前文章的下一篇 使用方法
${nextContent.title} //下一篇文章的标题
${nextContent.summary} //下一篇文章的概要
${nextContent.thumbnail} //下一篇文章的缩略图
${nextContent.url} //下一篇文章的请求url
8.属性名:nextContent 当前文章的上一篇 使用方法
${lastContent.title} //上一篇文章的标题
${lastContent.summary} //上一篇文章的概要
${lastContent.thumbnail} //上一篇文章的缩略图
${lastContent.url} //上一篇文章的请求url
9.当前页面接收参数
(1)content_id参数 请求查看文章的id
#### 错误页模板 (404.html)
#### 用户中心模板 (user_*.html)
1.属性名:blogOwner 博客拥有者的信息 使用方法
${blogOwner.nickname} //博主的昵称
${blogOwner.realname} //博主的真实姓名
${blogOwner.email} //博主的邮箱
${blogOwner.phone} //博主的电话
${blogOwner.introduction} //博主的简介
${blogOwner.birthday} //博主的生日
${blogOwner.qq} //博主的qq
${blogOwner.weibo} //博主的微博
${blogOwner.avatar} //博主的头像
${blogOwner.profession} //博主的职业
${blogOwner.nativePlace} //博主的籍贯,联系地址
#### 搜索结果模板 (search.html)
1.属性名:title 当前页面的标题,使用方法 ${title}
2.属性名:contentsSearch 搜索结果文章的集合,使用方法
${content.url} //查看文章的url。
${taxonomy.key}//该文章分类的的url。
${taxonomy.value}//该文章分类的名称。
${content.title} //文章标题
${content.summary} //文章概要
${content.thumbnail} //文章缩略图
${content.author} //文章缩略图
${content.createDate} //文章发布日期
${content.modifiedDate} //文章最后修改日期
${content.watched} //文章点击量
3.属性名:公共属性/contentsTop10
4.属性名:公共属性/contentsRecommend
5.属性名:pages 当前页面的分页 使用方法
${page.url} //跳转页面url
${page.num} //页面号
${page.status} //当前页的状态(active或者null。active表示当前页,null表示非当前页)
6.属性名:pageCount 总共分页 使用方法
例:总共${pageCount}页
7.属性名:pageNow 当前页面号 使用方法
例:总共5页,当前第${pageNow}页
8.属性名:公共属性/menus
9.当前页面接收参数
(1)search参数 搜索的关键字
(2)pn参数 搜索结果分页的参数
(3)没有pn参数 当前搜索
#### 以下四个模板为支持第三方用户的界面
#### [user_center.html]
#### [user_detail.html]
#### [user_login.html]
#### [user_register.html]
index.html 首页
404.html 404页面,当Press有404错误的时候会渲染此页面。
content.html 详情页,文章、论坛、商城等详情内容会调用此页面进行渲染。同时,content.html
taxonomy.html 分类页,展示该类别下的文章
user_center.html 用户中心
user_detail.html 用户详情
user_login.html 用户注册
user_register.html 用户登录
后台管理模块
后台管理做成管理系统的样式包含以下功能
### 控制面板(站点的总体信息,记录文章的发布的数量,以及简单的日志信息)
### 文章
#### 查看自己所有文章(可以查看自己发布的所有文章)
#### 撰写文章
#### 创建分类(创建文章的分类,包括分类描述,分类管理)
#### 评论(查看用户对文章的评论,以及回复用户的评论,删除评论)
### 所有用户
### 添加用户
### 个人资料
#### 修改(个人基本信息)
### 模板
#### 切换模板(可以选择不同风格模板)
#### 模板设置(可以对模板的默写区域设置成可修改模块,由用户自定义设置)
### 设置
#### 常规设置(站点名称,站点标题,管理员信息)
#### 评论设置(是否允许游客用户评论,匿名用户昵称,头像)