cpf2016的专栏

我不放弃爱的勇气,我不怀疑会有真心,我要握住一个最美的梦给未来的自己...

HSF入门例子

1.搭建HSF环境

        实际上就是下载hsf.sar,然后放置到tomcat的应用目录下即可


2.服务端

        (1)创建web项目

        (2)添加编译和打包的插件

<properties>
      <java.version>1.6</java.version>
</properties>
<build>
      <finalName>HSFSampleLanshan</finalName>
      <plugins>
           <plugin>
               <artifactId>maven-compiler-plugin</artifactId>
               <configuration>
                   <source>${java.version}</source>
                   <target>${java.version}</target>
               </configuration>
          </plugin>
     </plugins>
</build>
        (3)添加spring和servlet依赖

	<dependency>
		<groupId>org.apache.geronimo.specs</groupId>
		<artifactId>geronimo-servlet_3.0_spec</artifactId>
		<version>1.0</version>
		<type>jar</type>
		<scope>compile</scope>
	</dependency>
	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring</artifactId>
		<version>2.5.6</version>
		<type>jar</type>
		<scope>compile</scope>
	</dependency>

        (4)创建一个HelloWorld服务,作为服务端,需要提供接口和实现

                  接口:

package com.hsf;

public interface HelloWorldService 
{
	public String sayHello(String name);
}
                 实现:

package com.hsf.impl;

import com.hsf.HelloWorldService;

public class HelloWorldServiceImpl implements HelloWorldService
{
	public String sayHello(String name) {
		return "hello "+name;
	}

}

        (5)为HelloWorld服务编写spring配置文件

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


    <bean id="HelloWorldServiceImpl" class="com.hsf.impl.HelloWorldServiceImpl" />
	<bean id="HelloWorldService" class="com.taobao.hsf.app.spring.util.HSFSpringProviderBean"
		init-method="init">
		<property name="serviceInterface">
			<value>com.hsf.HelloWorldService</value>
		</property>
		<property name="target">
			<ref bean="HelloWorldServiceImpl" />
		</property>
		<property name="serviceVersion">
			<value>1.0.0.cpf</value>
		</property>
		<property name="serviceGroup">
			<value>HSF</value><!-- 组别一致的服务才可以互相调用 -->
		</property>
		<property name="serviceName"><!--仅仅便于管理 -->
			<value>HelloWorld</value>
		</property>
	</bean>
</beans>

        (6)在web.xml中添加一个spring监听器,让容器启动的时候spring完成服务初始化
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>
                这里不配置applicationContext.xml的路径,默认位于WEB-INF下


         完成之后,打成war包并放在tomcat下,启动tomcat,即可完成服务的发布


3.客户端

        (1)创建web项目

                  这里,将server和client放在同一个项目中

        (2)创建服务的接口

                  以为本例使用的是同一个项目,所以就不编写了


        (3)编写一个类用于访问提供的服务(这里用servlet)

package com.controller;

import com.hsf.HelloWorldService;

public class HelloWorldServlet extends HttpServlet 
{
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		WebApplicationContext context = WebApplicationContextUtils
				.getWebApplicationContext(getServletContext());
		HelloWorldService helloWorldService = (HelloWorldService) context
				.getBean("HelloWorldConsumer");
		PrintWriter out = resp.getWriter();
		out.println(helloWorldService.sayHello("lanshan"));
		return;
	}
}

        (4)编写客户端的spring配置文件

                  这里使用的是同一个项目,所以直接添加就好

   <bean id="HelloWorldConsumer" class="com.taobao.hsf.app.spring.util.HSFSpringConsumerBean"
	   init-method="init">
	<property name="interfaceName">
		<value>com.hsf.HelloWorldService</value>
	</property>
	<property name="version">
		<value>1.0.0.cpf</value>
	</property>
    </bean>


        (5)web.xml中添加servlet的映射

	<servlet>
		<servlet-name>HelloWorldServlet</servlet-name>
		<servlet-class>com.controller.HelloWorldServlet</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>HelloWorldServlet</servlet-name>
		<url-pattern>/HelloWorld</url-pattern>
	</servlet-mapping>

4.运行

        打包运行即可


阅读更多
个人分类: 中间件
想对作者说点什么? 我来说一句

HSF框架DEMO

2016年03月22日 70KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭