基于sitemapgen4j 库生成Sitemap文件。
1. 添加依赖
<dependency>
<groupId>com.github.dfabulich</groupId>
<artifactId>sitemapgen4j</artifactId>
<version>1.1.2</version>
</dependency>
2. 生成代码
import com.redfin.sitemapgenerator.ChangeFreq;
import com.redfin.sitemapgenerator.WebSitemapGenerator;
import com.redfin.sitemapgenerator.WebSitemapUrl;
import java.io.File;
import java.net.MalformedURLException;
import java.util.Date;
public class SitemapTest {
public static void main(String[] args) throws MalformedURLException {
// 站点url
String siteUrl = "https://www.example.com";
// 输出目录
String outputDir = "./output";
// 配置生成器
WebSitemapGenerator generator = WebSitemapGenerator.builder(siteUrl,new File(outputDir))
// 启用gzip压缩
.gzip(true)
// 每个文件最大URL数(标准上限50000)
.maxUrls(50000)
.build();
// 简单添加URL条目
generator.addUrl("https://www.example.com/page1");
// 添加URL条目详细信息
WebSitemapUrl url = new WebSitemapUrl.Options("https://www.example.com/page2")
// 上次修改时间 (Date类型)
.lastMod(new Date())
// 变化频率 (DAILY, WEEKLY, MONTHLY, YEARLY, NEVER)
.changeFreq(ChangeFreq.DAILY)
// 权重值
.priority(0.8)
.build();
generator.addUrl(url);
// 生成文件(自动生成 sitemap.xml ,大于5万条URL会生成sitemapN.xml + sitemap-index.xml)
generator.writeSitemapsWithIndex();
}
}