geoserver中的gwc瓦片如何起作用

geoserver中的gwc瓦片如何起作用  

在GeoServer的GeoWebCache中想结合切片进行加速。但是为了在速度和空间进行权衡,希望只对3-14层进行切片缓存,之上的实时渲染。听说GWC可以直接实现;而且缺省生成了正确的图片。但是最后预览时,却发现总是实时生成。这与所宣传的明显不符。

@RequestMapping(value = "/gwcrb", method = RequestMethod.GET) protected String getImgPngUrl(HttpSession session, @RequestParam(value = "x", required = true) long x, @RequestParam(value = "y", required = true) long y, @RequestParam(value = "z", required = true) long z, @RequestParam(value = "layer", required = true) String layer, @RequestParam(value = "s", required = false) String srs, @RequestParam(value = "wks", required = false) String wks, @RequestParam(value = "tile", required = false) String tile ) { if(null==wks||wks.isEmpty()) wks = "roadpub"; boolean bTile = false; if(null!=tile && tile.equals("1")) bTile = true; if(null==srs||srs.isEmpty()) srs = bTile?"900913":"4326"; double[] bound = getBound(x,y,z,bTile); String template0 = "redirect:http://localhost/geoserver/%s/wms?service=WMS&version=1.1.0&request=GetMap&layers=%s&styles=&bbox=%f,%f,%f,%f&width=256&height=256&srs=EPSG:%s&format=image/png&TRANSPARENT=TRUE"; String template1 = "redirect:http://localhost/geoserver/gwc/service/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=%s:%s&STYLES=&BBOX=%f,%f,%f,%f&WIDTH=256&HEIGHT=256&SRS=EPSG:%s&FORMAT=image/png&TRANSPARENT=TRUE"; String url = String.format(bTile?template1:template0, wks, layer, bound[0], bound[1], bound[2], bound[3], srs); return url; }

最终的结论其实是一句话:居然对应不同的URL而已。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值