关于JFinal_Blog 添加百度SiteMap服务Java代码bug修正

首先,很惭愧的告诉大家:于2014年6月2日发表的《JFinal_Blog 添加百度Ping和百度SiteMap服务》文章中提到的百度SiteMap代码存在逻辑调用错误,此bug已经修复并同步到了OSC和Github两大平台。

一、错误原因:
由于原先对于百度站长工具中的SiteMap方法是用有误读,今天登陆百度站长发现昨天提交的文章都出错了,于是仔细阅读,发现时调动方法参数传递错误(以前是无参,现在需要添加xml格式的参数)。

二、代码纠正如下:
1、百度SiteMap工具类方法:

package com.zcm.utils;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import com.jiangge.utils.DateUtils;

/**
 * 百度文章SiteMap工具
 * <p>Company:  91注册码</p>
 * time:2014-06-01
 * @author www.91zcm.com
 * @date
 * @version 1.0
*/
public class SiteMapHttpUtils {

/百度SiteMap地址/
public static final String siteMapURL = "http://ping.baidu.com/sitemap?site=www.91zcm.com&resource_name=sitemap&access_token=lcrfZbBh";  

/**
* 百度SiteMap
* @param articleURL
*/
public static void postSiteMap(String articleURL) {
        try {
            URL url = new URL(siteMapURL);
            URLConnection con = url.openConnection();
            con.setDoOutput(true);
            con.setRequestProperty("Pragma:", "no-cache");
            con.setRequestProperty("Cache-Control", "no-cache");
            con.setRequestProperty("Content-Type", "text/xml");
            OutputStreamWriter out = new OutputStreamWriter(con.getOutputStream());
            String xmlInfo = SiteMapHttpUtils.getXmlInfo(articleURL);
            out.write(new String(xmlInfo.getBytes("ISO-8859-1")));
            out.flush();
            out.close();
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }  

/**
* 组装SiteMap需要的XML文件
* @param url
* @return
*/
private static String getXmlInfo(String url){
   StringBuffer xmlData = new StringBuffer("");
   xmlData.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
   xmlData.append("<urlset>");
   xmlData.append("<url>");
   xmlData.append("<loc><![CDATA[");
   xmlData.append(url);
   xmlData.append("]]></loc>");
   xmlData.append("<lastmod>");
   xmlData.append(DateUtils.getNowTime(DateUtils.DATE_SMALL_STR));
   xmlData.append("</lastmod>");
   xmlData.append("<changefreq>daily</changefreq>");
   xmlData.append("<priority>0.8</priority>");
   xmlData.append("</url>");
   xmlData.append("</urlset>");
   return xmlData.toString();
}
}

2、SiteMap方法调用参考如下:

/添加到百度博客Ping中/
String shareURL = "http://www.91zcm.com/" + category.getStr("url") + "/" + record.getInt("aid") + ".html";
PingUtils.pingBaidu(shareURL);
/添加到百度SiteMap中/
SiteMapHttpUtils.postSiteMap(shareURL);

三、JFinal_Blog相关地址:
1、Github下载:
JFinal_Blog地址:https://github.com/keaijohnee/91zcm
JCake 地址:https://github.com/keaijohnee/JCake

2、OSC下载:
JFinal_Blog地址:http://git.oschina.net/jianggege/jfinal_91zcm
JCake 地址:http://git.oschina.net/jianggege/JCake

3、演示站点:
91注册码:http://www.91zcm.com

四、代码更新说明:
原在OSC上的代码和Github上的代码同步更新;

在此,对于给使用和关注JFinal_Blog的朋友表示抱歉,感谢大家一如既往的关注和关心!

时间: 2024-12-31 14:03:11

关于JFinal_Blog 添加百度SiteMap服务Java代码bug修正的相关文章

JFinal_Blog 添加百度Ping和百度SiteMap服务

JFinal_Blog是基于JFinal1.5开源系统搭建的博客系统,以 http://www.91zcm.com 网站作为模板和演示事例,目前已经加入了OSC开源项目和Github开源网站. 一.版本更新:1.添加了百度文章Ping工具:2.添加了百度文章SiteMap工具:3.去掉了项目中多余的PingYinUtil.java类: 二.代码调用方法:/添加到百度博客Ping中/String shareURL = "http://www.91zcm.com/" + category.

IDEA里面添加lombok插件,简略Java代码的编写

      关于lombok的相关信息,lombok       下面开始在IDEA里面为我们的项目配置lombok编写支持咯,      1 . 首先在IDEA里面安装使用lombok编写简略风格代码的插件, 打开IDEA的Settings面板,并选择Plugins选项,然后点击 "Browse repositories.." 在输入框输入"lombok",得到搜索结果,选择第二个,点击安装,然后安装提示重启IDEA,安装成功; 2 . 在自己的项目里添加lomb

用asp与php实现百度ping服务的代码_其它综合

ASP: 复制代码 代码如下: <% Option Explicit Response.Buffer = true Response.ContentType = "text/html" Response.Charset = "gb2312″ Dim Url, Result Url = "http://ping.baidu.com/ping/RPC2" Result = BytesToBstr(SendPing(Url), "gb2312″)

java struts2 远程执行任意java代码bug漏洞修复

漏洞前提 开启动态方法调用, struts.xml配置 <constant name="struts.enable.DynamicMethodInvocation" value="true" /> 沙盒绕过 通过ognl表达式静态调用获取ognl.OgnlContext的DEFAULT_MEMBER_ACCESS属性,并将获取的结果覆盖_memberAccess属性,这样就可以绕过SecurityMemberAccess的限制. 漏洞详情 https:/

诊断Java代码: “杀手组合”― mixin、Jam和单元测试

在 Java 语言中获得单继承编程的安全性需要付出极大的代价:有时必须沿着继承层次结构中的多条路径复制代码.要重新获得单继承 Java 代码中所失去的大多数表示,我们可以将 mixin集成为一个扩展.本月,Eric Allen 解释了 mixin(那些由它们的父类参数化的类)的概念,以及它们如何能协助单元测试.他还描述了基于 mixin 编程的工具,并讨论了将 mixin 添加到您的 Java 代码中的可能方法. 自从面向对象的编程出现以来,OO 语言设计中一直存在着一个困扰人的基本问题.一方面

jQuery实现仿百度首页滑动伸缩展开的添加服务效果代码_javascript技巧

本文实例讲述了jQuery实现仿百度首页滑动伸缩展开的添加服务效果代码.分享给大家供大家参考.具体如下: 这是一款仿百度首页jQuery滑动伸缩展开的添加服务效果,其实是一款伸缩菜单,只不过这个菜单有点特别,只从一头向另一头伸展出去,菜单的伸缩效果平滑,设计精美. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-f-baidu-index-show-serv-style-codes/ 具体代码如下: <!DOCTYPE html PUBLI

Log4j定时打印日志及添加模块名配置的Java代码实例_java

配置间隔时间,定时打印日志 接到个需求,通过log4j定时打印日志,需求描述如下:需要能够定时打印日志,时间间隔可配.说到定时,首先想到了DailyRollingFileAppender类,各种定时,根据datePattern,这个可以参考类SimpleDateFormat类,常见的一些定时设置如下: '.'yyyy-MM: 每月  '.'yyyy-ww: 每周   '.'yyyy-MM-dd: 每天  '.'yyyy-MM-dd-a: 每天两次  '.'yyyy-MM-dd-HH: 每小时 

solr3.5中如何用java代码为PDF,Office等文件添加索引

问题描述 solr3.5中如何用java代码为PDF,Office等文件添加索引 之前在网上看的代码中,是4.7版本的然后用到自己的3.5版本上面的时候发现ContentStreamUpdateRequest的addFile方法不能添加两个参数来着.请问在Solr3.5版本中如何为PDF和OFFICE文件添加索引 解决方案 3.5版本已经很旧了,建议换个版本,如果非要用3.5我这里有视频可以借你参考.. 解决方案二: 7.跟我学solr---对文件数据添加索引

new- 发送验证码到手机的java代码 有谁知道这是用的哪个服务商的服务?

问题描述 发送验证码到手机的java代码 有谁知道这是用的哪个服务商的服务? com.shovesoft.SMS.sendMSM(IConstants.SEND_PHONE_ACCOUNT IConstants.SEND_PHONE_PASSWORD content userPhone);下面的配置参数send_phone_account=J01370send_phone_password=635210/** * 发送验证码到手机 * @param userCode *@param userPh