编程开发 购物 网址 游戏 小说 歌词 地图 快照 股票 美女 新闻 笑话 | 汉字 软件 日历 阅读 下载 图书馆 开发 租车 短信 China
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
移动开发 架构设计 编程语言 互联网 开发经验 Web前端 开发总结
开发杂谈 系统运维 研发管理 数据库 云 计 算 Java开发
VC(MFC) Delphi VB C++(C语言) C++ Builder 其它开发语言 云计算 Java开发 .Net开发 IOS开发 Android开发 PHP语言 JavaScript
ASP语言 HTML(CSS) HTML5 Apache MSSQL数据库 Oracle数据库 PowerBuilder Informatica 其它数据库 硬件及嵌入式开发 Linux开发资料
  编程开发知识库 -> 架构设计 -> 通过webservice发布静态页面 -> 正文阅读
 

[架构设计]通过webservice发布静态页面[第1页]

要想通过webservice发布静态化页面也就是freemaker  首先你要有一个模板页面其次你得写一个服务端实现类和接口

public class EbWSItemServiceImpl implements EbWSItemService {

	@Autowired
	private IEbItemDao itemDao;
	public String publishItem(Long itemId, String password) throws Exception {
		if(StringUtils.equals(pass, password)){
			EbItem item = itemDao.findItemDetailById(itemId);
	    	
	    	Map<String, Object> map = new HashMap<String, Object>();
	    	map.put("item", item);
	    	FMutil fMutil = new FMutil();
	    	fMutil.ouputFile("productDetail.ftl", item.getItemId()+".html", map);
			return "success";
		}else{
			return "password error";
		}
	}

}

这是我的服务端实现类其中的FMutil是一个生成静态化页面的类

public class FMutil {
	
	/**
	 * 
	 * @param ftlName:模板名
	 * @param fileName:生成的html名字
	 * @param map 数据库中的数据
	 * @throws Exception
	 */
	public void ouputFile(String ftlName, String fileName,  Map<String, Object> map) throws Exception{
		//创建fm的配置
		Configuration config = new Configuration();
		//指定默认编码格式
		config.setDefaultEncoding("UTF-8");
		//设置模板的包路径
		config.setClassForTemplateLoading(this.getClass(), "/com/cb/ecps/ftl");
		//获得包的模板
		Template template = config.getTemplate(ftlName);
		//指定文件输出的路径
		String path = "D:/JAVA_EE/workspace/ecps-parent/ecps-protal/src/main/webapp/static";
		//定义输出流,注意的必须指定编码
		Writer writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File(path+"/"+fileName)),"UTF-8"));
		//生成模板
		template.process(map, writer);
	}
	
	
}

通过这个类指定生成地址 字符编码 就可以生成相应的代码  但是我们要在项目里使用它远远没有这么简单  
接下来我们需要将它发布到服务器上  要想发布到服务器上需要如下配置
cxf-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jaxws="http://cxf.apache.org/jaxws"
	xmlns:jaxrs="http://cxf.apache.org/jaxrs" xmlns:cxf="http://cxf.apache.org/core"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
          http://www.springframework.org/schema/beans/spring-beans.xsd
            http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd
            http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
            http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd">

	<!-- 引入CXF Bean定义如下,早期的版本中使用 -->
	<import resource="classpath:META-INF/cxf/cxf.xml" />
	<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
	<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
	<!-- 
		address:
		http://localhost:8080/ecps-portal/[url-partten]/address
		
		如果不加/  页面则取不到相应路径
	 -->
	<jaxws:server id="publishItem" address="/publishItem" serviceClass="com.cb.ecps.ws.service.EbWSItemService">
		<jaxws:serviceBean>
			<bean class="com.cb.ecps.ws.service.impl.EbWSItemServiceImpl"></bean>
		</jaxws:serviceBean>
	</jaxws:server>        
</beans>

web.xml

 <!--发布webservice  一旦访问service下的类服务器就将该webservice发布出去-->
	<servlet>
		<servlet-name>cxf</servlet-name>
		<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>cxf</servlet-name>
		<url-pattern>/service/*</url-pattern>
	</servlet-mapping>

在你要生成的目录下打开cmd命令窗口 输入wsdl2java -d. -p 包名 发布的网址(例如http://localhost:8080/项目名/service)
这样就能生成客户端代码
  架构设计 最新文章
实习记录5 再看fs框架
通过webservice发布静态页面
Spring AOP 详解
58到家MQ如何快速实现流量削峰填谷
Android应用开发结构分析
究竟啥才是互联网架构“高可用”
[HID]Spec简读
Atitit 硬件 软件 的开源工作
ofbiz连接mysql并创建独立数据库
【59】Quartz+Spring框架详解
上一篇文章      下一篇文章      查看所有文章
加:2017-10-30 04:00:40  更:2017-10-30 04:01:00 
VC(MFC) Delphi VB C++(C语言) C++ Builder 其它开发语言 云计算 Java开发 .Net开发 IOS开发 Android开发 PHP语言 JavaScript
ASP语言 HTML(CSS) HTML5 Apache MSSQL数据库 Oracle数据库 PowerBuilder Informatica 其它数据库 硬件及嵌入式开发 Linux开发资料
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture 股票 租车
生肖星座 三丰软件 视频 开发 短信 中国文化 网文精选 搜图网 美图 阅读网 多播 租车 短信 看图 日历 万年历 2018年7日历
2018-7-19 4:26:49
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  编程开发知识库