index.jsp
开始引入包~
<%@ page language="java" import="java.util.*,cn.edu.model.*,cn.edu.dao.*" pageEncoding="UTF-8"%>
依旧body里面第一行
<%@include file="header.jsp"%>
紧接着
<%
User user = (User) session.getAttribute("user");
ArrayList<Article> alist=null;
<span style="white-space:pre"> </span>ArticleDAO adao=new ArticleDAO();
alist=adao.findAll();
%>
这里直接就找出这个user的所有文章了
<%
if (user == null) {
%>
<td width="250" class="bigtitle">博客系统</td>
<%
} else {
%>
<td width="250" class="bigtitle"><%=user.getRealName()%>的空间</td>
<%
}
%>
如果没找到用户,就显示为博客系统,否则,显示为这个人的空间
<td width="30" align="center"><img src="images/house.gif" width="16" height="16" /></td>
<td width="30" align="center"><a href="index.jsp">主页</a></td>
<td width="30" align="center"><img src="images/ico_entry.gif" width="16" height="16" /></td>
<td width="30" align="center"><a href="#">日志</a></td>
<td width="30" align="center"><img src="images/ico_picture.gif" width="16" height="16" /></td>
<td width="30" align="center"><a href="#">相册</a></td>
<td width="30" align="center"><img src="images/ico_video.gif" width="16" height="16" /></td>
<td width="30" align="center"><a href="#">视频</a></td>
<td width="30" align="center"><img src="images/icon.gif" width="16" height="16" /></td>
<td width="30" align="center"><a href="#">微博</a></td>
<td width="30" align="center"><img src="images/ico_profile.gif" width="16" height="16" /></td>
<td width="30" align="center"><a href="#">资料</a></td>
<td width="30" align="center"><img src="images/ico_share2.gif" width="16" height="16" /></td>
<td width="30" align="center"><a href="#">分享</a></td>
博客系统后面的一串小图标和链接
<span style="white-space:pre"> </span> <%
for(int i=0;i<alist.size();i++){
Article a=alist.get(i);
%>
<table width="650" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="30" align="left"><a href="doarticleinfo.jsp?articleid=<%=a.getId() %>" class="title">[日志]<%=a.getTitle() %></a></td>
</tr>
<tr>
<%
String content=a.getContent();
if(content.length()>60)
content=content.substring(0, 60);
%>
<td align="left"><p class="content"><%=content %></p></td>
</tr>
<tr>
<td height="30" align="left" class="F12Gray">>><a href="doarticleinfo.jsp?articleid=<%=a.getId() %>" class="L12Gray">阅读全文</a></td>
</tr>
<tr>
<td height="30" align="right" class="F12Gray">访问次数<%=a.getClicks() %>次 <%=a.getPublishTime() %> </td>
</tr>
<tr>
<td height="1" align="left" bgcolor="#dddddd"></td>
</tr>
</table>
<%} %>
精简一下
从list中循环调出文章
每条链接里面传递了articleId,链接文字为文章标题
下面p段落中展示了文章的一部分,只截取了长度为60的字符串
再下面有一个阅读全文的文字链接,和上面标题的文字链接一样,先把articleId传递给doarticleinfo.jsp
然后由doarticleinfo.jsp转向articleinfo.jsp
阅读全文的下面从Article对象a中取出了访问次数和发布时间
<%
for(int i=0;i<alist.size();i++){
Article a=alist.get(i);
%>
<a href="doarticleinfo.jsp?articleid=<%=a.getId() %>" class="title">[日志]<%=a.getTitle() %></a>
<%
String content=a.getContent();
if(content.length()>60)
content=content.substring(0, 60);
%>
<p class="content"><%=content %></p>
<a href="doarticleinfo.jsp?articleid=<%=a.getId() %>" class="L12Gray">阅读全文</a>
访问次数<%=a.getClicks() %>次 <%=a.getPublishTime() %>
<%} %>
其中doarticleinfo.jsp
<%@ page language="java" import="java.util.*,cn.edu.dao.*,cn.edu.model.*" pageEncoding="UTF-8"%>
<%
// 设置编码格式
request.setCharacterEncoding("UTF-8");
// 获取文章编号
String articleId = request.getParameter("articleid");
int aid = Integer.parseInt(articleId);
// 根据文章编号查询具体的一篇文章
ArticleDAO adao = new ArticleDAO();
Article article = adao.findArticleById(aid);
adao.clicksAdd(article);
article.setClicks(article.getClicks()+1);
// 把查询到的文章存放到session中
session.setAttribute("currentArticle", article);
//跳转到文章详细信息页面
response.sendRedirect("articleinfo.jsp");
%>
把获得到的String类型的articleId换成int类型的 Integer.parseInt(articleId);
new一个ArticleDAO的对象,对文章进行操作
通过articleId找文章
adao.clicksAdd(article)先在数据库中将阅读量+1
然后给article中的阅读量属性赋值+1
把查询到的文章放到session中,,记住currentArticle
跳转到文章详细信息页articleinfo.jsp
等一下单把articleinfo.jsp拿出来
先继续说index.jsp
用户如果没有登录,先实现登陆界面
<!-- 用户如果没有登陆,现实登陆界面,如果登陆,现实个人资料界面 -->
<%
if (user == null) {
%>
<table width="200" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<tr>
<td height="30" bgcolor="#fafafa"> 用户登录</td>
</tr>
<tr>
<td height="80" bgcolor="#FFFFFF"><form id="form1" name="form1" method="post" action="dologin.jsp">
<table width="190" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="56" height="30" align="right">用户名:</td>
<td><label>
<input name="username" type="text" class="inputTextW110H22" id="username" />
</label></td>
</tr>
<tr>
<td height="30" align="right">密 码:</td>
<td><label>
<input name="password" type="password" class="inputTextW110H22" id="password" />
</label></td>
</tr>
<tr>
<td height="30" colspan="2" align="center">记住密码
<label>
<input type="radio" name="rad" value="radiobutton" />
是
<input name="rad" type="radio" value="radiobutton" checked="checked" />
否</label></td>
</tr>
<tr>
<td height="30" colspan="2" align="center"><table width="150" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center"><input type="image" name="imageField" src="images/login.jpg" /></td>
<td align="center"><img src="images/reg.jpg" width="74" height="22" οnclick="javascript:window.location='register.jsp'" /></td>
</tr>
</table> </td>
</tr>
</table>
</form>
</td>
</tr>
</table>
如果已经登录,则展示个人资料页面
<%
} else {
%>
<table width="200" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<tr>
<td height="30" bgcolor="#fafafa"> 个人资料</td>
</tr>
<tr>
<td height="80" bgcolor="#FFFFFF"><table width="190" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="30" align="left" class="F12Gray"><table width="190" border="0" cellspacing="0" cellpadding="0">
<tr>
<%if(user.getHeaderImg()==null || user.getHeaderImg()=="") {%>
<td align="center"><img src="headerimg/linchong.jpg" width="180" height="140" /></td>
<%}else { %>
<td align="center"><img src="<%=user.getHeaderImg()%>" width="180" height="140" /></td>
<%} %>
</tr>
<tr>
<td height="25" align="center"><%=user.getRealName()%></td>
</tr>
<tr>
<td height="2" align="center" bgcolor="#E6E6E6"></td>
</tr>
</table></td>
</tr>
<tr>
<td height="20" align="center"><img src="images/information.jpg" width="177" height="90" /></td>
</tr>
<tr>
<td height="20" align="left"> </td>
</tr>
<tr>
<td height="20" align="center"><a href="addArticle.jsp">发表文章</a> <a href="articlemanagerlist.jsp">文章管理</a></td>
</tr>
<tr>
<td height="20" align="center"><a href="changepwd.jsp">更改密码</a> <a href="setinfo.jsp">个人设置</a></td>
</tr>
<tr>
<td height="30" align="center"><label><a href="logout.jsp"><img src="images/exitlogin.jpg" width="74" height="22" border="0" /></a></label></td>
</tr>
</table></td>
</tr>
</table>
<%}%>
取出用户realname
文字链接 发表文章 指向 addArticle.jsp
文章管理指向 articlemanagerlist.jsp
更改密码指向 changepwd.jsp
个人设置指向 setinfo.jsp
最后 注销按钮是一张图片 指向 logout.jsp
下面是化简后的jsp代码
<%if(user.getHeaderImg()==null || user.getHeaderImg()=="") {%>
<img src="headerimg/linchong.jpg" width="180" height="140" />
<%}else { %>
<img src="<%=user.getHeaderImg()%>" width="180" height="140" />
<%} %>
<%=user.getRealName()%></td>
<a href="addArticle.jsp">发表文章</a> <a href="articlemanagerlist.jsp">文章管理</a>
<a href="changepwd.jsp">更改密码</a> <a href="setinfo.jsp">个人设置</a>
<a href="logout.jsp"><img src="images/exitlogin.jpg" width="74" height="22" border="0" /></a>
右下角依旧展示了一些博客用户的头像
原作者貌似很喜欢水浒传呢,,
<table width="100%" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<tr>
<td height="30" bgcolor="#fafafa"> 博客用户</td>
</tr>
<tr>
<td height="80" valign="top" bgcolor="#FFFFFF"><table width="180" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="50" align="center" valign="top"><img src="headerimg/linchong.jpg" alt="林冲" width="50" /></td>
<td width="15" align="center" valign="top"> </td>
<td align="center" valign="top"><img src="headerimg/lujunyi.jpg" alt="卢俊义" width="50" /></td>
<td width="15" align="center" valign="top"> </td>
<td align="center" valign="top"><img src="headerimg/panjinlian.jpg" alt="潘金莲" width="50" /></td>
</tr>
<tr>
<td height="50" align="center" valign="top"><img src="headerimg/songjiang.jpg" alt="宋江" width="50" /></td>
<td align="center" valign="top"> </td>
<td align="center" valign="top"><img src="headerimg/wusong.jpg" alt="武松" width="50" /></td>
<td align="center" valign="top"> </td>
<td align="center" valign="top"><img src="headerimg/ximenqing.jpg" alt="西门庆" width="50" /></td>
</tr>
</table></td>
</tr>
</table></td>