二.相关方法:
1.将导航之类的用统一的一个文件来管理.
<jsp:include page="common/header.html" />
如果include是一个JSP文件,可能会产生乱码,需要在头部加:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>以保证编码的统一.
2.加入了struts2相关jar包,据说Struts2与GAE有一定的冲突,所以我又添加了一个struts-gae.jar,这个是从网上找到的用于整合两者的包.可以从:
http://code.google.com/p/struts2-gae/downloads/list下载得到.
3.使用JDO中排序得到最新的article:
Query query = PM.newQuery(Article.class);
query.setOrdering("time desc");
List<Article> articles = (List<Article>)query.execute();
query排序及获得所有存储的对象:
Query query = PM.newQuery(Article.class);
query.setOrdering("time desc");
articles = (List<Article>)query.execute();
4.
struts2中action获取jsp页面参数
ActionContext context = ActionContext.getContext();
Map params = context.getParameters();
String username = (String) params.get("username");
5.Blog 中id的设置方法,我以前没用过,感觉很不错:
Date date = new Date();
Long id = date.getTime()
6.自定义filter需实现filter接口,实现doFilter方法,此外,Filter是一条链,如果想继续其它的Filter,代码如下:
// Pass control on to the next filter
chain.doFilter(request, response);
7.在servlet中实现页面跳转:
req.setAttribute("article", article);
req.getRequestDispatcher("/index.jsp").forward(req,resp);
8.传值问题(从Servlet向JSP页面传值的操作):在页面中使用<s:if></s:if>,注意:s:if中判断的对象必须包含在action中(也就是必须是对应action的成员变量),对于只是Servlet中request传递过来的参数是无效的!
<s:if test="#article == null">
<jsp:forward page="/initIndex" />
</s:if>
9. Action中获得Session及request:
//在Action中获得request对象.
HttpServletRequest request = ServletActionContext.getRequest ();
//在Action中获得Session对象:
HttpServletRequest request = ServletActionContext.getRequest();
HttpServletResponse response = ServletActionContext.getResponse();
HttpSession session = request.getSession();
//在Action中获得Session的拷贝:
ActionContext.getContext().getSession();
10.JSP页面EL表达式无效的问题,解决方法:
方法1.在JSP页面头部加:<%@ page isELIgnored="false" %>
方法2.在WEB.xml中添加:
11.要想在首页实现jsp:forward 跳转至Action
方法一:需要在web.xml中配置:
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern >/*</url-pattern>
<dispatcher>REQUEST</dispatcher>//1
<dispatcher>FORWARD</dispatcher> //2 加多这两行就行了
</filter-mapping>
页面上:
<jsp:forward page="xxxx.action"></jsp:forward>
方法二:使用Filter
12.页面获得对象的属性值
<jsp:getProperty name="article" property="time" />
注意:s:property与jsp:getProperty是不一样的:
s:property获得的是在Action中存储的对象(相当于Servlet中getParameter所得到的对象),而jsp:getProperty使用的是request/session/application中Attribution存储的对象.
13.对象与常量比较时,将常量放前面不会出现NullPointException
14.Interceptor的配置
注意:默认情况下action是有默认拦截器的,但是如果自己配置了拦截器,默认拦截器将不起作用,需要将默认拦截器手动添加.
15.invocation.invoke()。这是ActionInvocation中的方法,而ActionInvocation是Action调度者,所以这个方法具备以下2层含义:
1. 如果拦截器堆栈中还有其他的Interceptor,那么invocation.invoke()将调用堆栈中下一个Interceptor的执行。
2. 如果拦截器堆栈中只有Action了,那么invocation.invoke()将调用Action执行。
所以,我们可以发现,invocation.invoke()这个方法其实是整个拦截器框架的实现核心。
15输出HTML标签:
<c:out value="${article.content}" escapeXml="false" />
<!--EndFragment-->
分享到:
相关推荐
综上所述,【JSP个人博客系统(完整版)】是一个集成了JAVA、JSP、AJAX等技术的Web应用,它提供了全面的博客功能,同时也展示了MVC模式在实际项目中的应用。开发者可以通过学习和实践这个项目,提升自己的JAVA Web...
《构建Web个人博客管理系统》 在信息技术日新月异的今天,个人博客已经成为了许多人分享思想、交流经验的重要平台。...实践中,我们可以逐步理解这些知识点,掌握Web个人博客管理系统的开发流程和技术要点。
标题中的“红黑相间的个人博客模板-黑色 简洁 个人 博客 二栏 简单 红色.rar”表明这是一款设计风格以红色和黑色为主调的个人博客模板,其特点包括简洁、个人化、采用两栏布局,并且设计简单。这种模板通常适用于...
根据提供的信息,我们可以总结出以下关于“个人博客系统”的相关知识点: ### 一、个人博客系统概述 个人博客系统是一种允许用户创建、编辑并发布个人文章的网络应用程序。这种系统通常具备用户管理、文章编辑、...
【PHP个人博客系统详解】 PHP个人博客系统是一种基于PHP编程语言和MySQL数据库构建的网络应用,用于个人在线发表文章、分享观点和展示个人成就。它通常包含用户注册、登录、文章发布、评论互动、分类管理等多种功能...
ASP.NET个人博客源码是一个基于微软的ASP.NET技术构建的博客系统,旨在提供一个功能强大的前后台管理平台,用于个人或小型团队分享思想、记录生活和技术经验。这个源码不仅适用于学习ASP.NET开发,也可以作为基础...
综上所述,基于ASP的个人博客系统设计与实现是一个涵盖网页设计、服务器端脚本、数据库管理和网站优化的综合性项目,对于提升学生的实际操作能力和问题解决能力具有重要意义。通过这一过程,学生将不仅学习到理论...
【基于SSH2开发的个人博客】是一个利用Secure Shell (SSH) 协议的第二版本进行开发的项目,它结合了Spring、Struts2和Hibernate这三个流行的技术框架,以构建一个功能丰富的个人博客系统。SSH2(Spring、Struts2、...
这个"ASP源码—简单个人博客系统源码 v1.3.zip"压缩包包含了一个基于ASP技术构建的个人博客系统的完整源代码,版本为1.3。通过这个源码,我们可以深入学习和理解ASP在实际项目中的应用,特别是如何用它来构建一个...
基于SSM的个人博客系统设计软件程序源码+数据库+WORD毕业设计论文文档, 个人博客系统主要用于发表个人博客,记录个人生活日常,学习心得,技术分享等,供他人浏览,查阅,评论等。本系统结构如下: (1)博主端: ...
1、支持QQ互联登录(需要在QQ互联官网上申请,需要在Web.config填写相关的 AppID和AppKey以及回调地址)。 2、后台发布文章,数据统计以及对读者的浏览权限设置。 3、在线的浏览人数进行统计。 4、根据读者的ip...
标题中的“黑色个性的个人博客CSS模板_黑色个性二栏个人博客蓝色.rar”指的是一个用于创建个性化个人博客的网页设计资源。这个模板采用黑色作为主色调,并辅以蓝色元素,营造出一种深邃且个性化的视觉效果。CSS...
在深入探讨这个模板的组成部分和相关知识点之前,我们先了解一下个人博客模板的基础概念。 个人博客模板是用于快速构建个性化博客的一种网页设计框架。它通常包括头部、主体、侧边栏、页脚等元素,预设了颜色方案、...
在IT行业中,网页设计是至关重要的一环,尤其是对于个人博客来说,一个简洁、干净且漂亮的模板可以提升用户体验,使读者更愿意沉浸在博主的世界中。这个压缩包“简洁干净漂亮的个人博客CSS模板-简洁 干净 漂亮 灰色 ...
这种布局在个人博客中很常见,因为它能够平衡内容展示和辅助信息的提供,让读者在浏览时既能关注主要文章,又能快速找到其他相关链接或信息。 5. **个人博客**: 个人博客是个人表达自我、分享见解、记录生活或专业...
在本文中,我们将深入探讨如何基于“个人博客系统blog.rar”这个项目,通过团队开发的方式,构建一个高效、功能丰富的个人博客系统。该项目名为“blog-master-v2”,暗示着这是一个经过迭代优化的版本,可能包含更多...
在IT行业中,个人博客系统是一个常见的项目,它可以帮助用户展示自我、分享想法和生活瞬间。在本课程设计中,我们将重点讨论如何使用JSP(JavaServer Pages)技术构建这样一个系统,同时结合Myeclipse作为开发环境。...
在个人博客系统中,搜索算法用于查找特定的文章,排序算法用于显示最新的或者最热门的文章列表,图遍历可能用于推荐系统,根据用户的浏览历史推荐相关文章。 这个压缩包中的个人博客系统源程序,很可能是用C++实现...
知识点一:Github简介 Github是一个代码托管平台,它将代码与社区紧密联系起来,使得很多有趣的项目得以发生。Github是最流行的代码仓库之一...以上就是使用Github Pages搭建个人博客的相关知识点。希望对您有所帮助。
这个压缩包文件“简单墨绿色个人博客CSS模板_简单 墨绿 绿色 个人 博客 二栏.rar”包含了一个设计简洁、色调以墨绿色为主的个人博客的CSS模板。CSS,全称为Cascading Style Sheets,是用于描述HTML或XML(包括如SVG...