mapxtreme java 初始化地图

先说下开发的环境,我使用的IDE是eclipse 3.5,mapxtreme java用的是4.7版本的,还需要一个mapxtreme使用的mdf文件

 

那么,让我们开始架设项目吧

一  从新建项目开始,首先我们建立一个项目,然后把mapxtreme java的lib包里面的client,common,server文件夹里面的所有jar文件全部导入到项目里面

二  新建一个index.jsp,然后再建一个名字叫MapServer的servlet,建好后,项目如下图所示

 

 

在index.jsp页面的添加一个img组件,src直接链接到servlet上面去,具体内容如下:

 

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
	<img alt="" src="http://localhost:9090/mymap/MapServer" />
</body>
</html>
  

 

servlet的具体内容如下:

try {
			//得到mapj对象
			MapJ mapj = new MapJ();
			//加载mdf文件
			mapj.loadMapDefinition("c://test.mdf");
			//设置地图的大小为800*600
			mapj.setDeviceBounds(new DoubleRect(0, 0, 800d, 600d));
			//得到项目的相对路径
			String path = request.getContextPath();
			String url = request.getScheme() + "://" + request.getServletPath() + ":" + request.getServerPort() + path + "/mapxtreme";
			//获得和设置地图的图像类型
			ImageRequestComposer composer = ImageRequestComposer.create(mapj, ImageRequestComposer.MAX_COLORS_TRUECOLOR, Color.white, "image/gif");
			//渲染器进行渲染
			MapXtremeImageRenderer imageRenderer = new MapXtremeImageRenderer(url);
			imageRenderer.render(composer);
			response.reset();
			response.setContentType("image/gif");
			//输出文件
			imageRenderer.toStream(response.getOutputStream());
			imageRenderer.dispose();
		} catch (Exception ex) {
			ex.printStackTrace();
		} finally{
			
		}

 

最后,在web.xml文件里面加上这段代码,表示mapxtreme java的工具的配置

 

<!-- 地图配置 -->
	<!--mapxtreme地图服务器的servlet的配置-->
	<servlet>
		<servlet-name>mapxtreme</servlet-name>
		<servlet-class>
			com.mapinfo.mapxtreme.MapXtremeServlet
		</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>

	<!-- internal servlets which are called by MapXtremeServlet -->
	<!-- these servlets should not be called directly!          -->
	<servlet>
		<servlet-name>mxtj_image</servlet-name>
		<servlet-class>
			com.mapinfo.mapxtreme.ImageHandlerServlet
		</servlet-class>
		<load-on-startup>2</load-on-startup>
	</servlet>
	<servlet>
		<servlet-name>mxtj_metadata</servlet-name>
		<servlet-class>
			com.mapinfo.mapxtreme.MetadataHandlerServlet
		</servlet-class>
		<load-on-startup>3</load-on-startup>
	</servlet>
	<servlet>
		<servlet-name>mxtj_vector</servlet-name>
		<servlet-class>
			com.mapinfo.mapxtreme.VectorHandlerServlet
		</servlet-class>
		<load-on-startup>4</load-on-startup>
	</servlet>
	<!-- FineReport -->
	<servlet>
		<servlet-name>ReportServer</servlet-name>
		<servlet-class>com.fr.web.ReportServlet</servlet-class>
		<load-on-startup>0</load-on-startup>
	</servlet>

	<!-- servlet URL mappings -->
	<servlet-mapping>
		<servlet-name>ReportServer</servlet-name>
		<url-pattern>/ReportServer</url-pattern>
	</servlet-mapping>
	<!-- mapxtreme -->
	<servlet-mapping>
		<servlet-name>mapxtreme</servlet-name>
		<url-pattern>/servlet/mapxtreme</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>mapxtreme</servlet-name>
		<url-pattern>/mapxtreme</url-pattern>
	</servlet-mapping>

 

运行项目,就能在index.jsp页面上面看到地图了

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://my.oschina.net/durendong/blog/489878

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值