Hello,World 百态

最简陋HelloWorld

首先,编写一个页面文件叫:hello.page,输入下面的信息,然后运行之!

?


1

Hello:$!name

浏览器URL:http://localhost:/hello.page

运行结果如下:

浏览器URL:http://localhost:/hello.page?name=abc

运行结果如下:

?


1

Hello:abc

很明显,上面的HelloWorld仅仅是在展现层完成的,不管怎么样,他不是用JS直接在页面输出的。

增加HelloWorld处理类

?


1

2

3

4

5

6

7

8

9

10

11

12

13

@ServiceComponent()

public class HelloWorldService {

    @ServiceMethod(serviceId = "helloWorldService")

    @ServiceResult(name = "sayHelloResult")

    @ServiceViewMapping(type="page",path="/helloworld.page")

    public String helloWorld(String name) {

        if (name == null) {

            return "您好,guest!";

        } else {

            return "您好," + name;

        }

    }

}

编写helloworld.page文件,内容如下:

?


1

$!sayHelloResult

浏览器URL:http://localhost:8080/helloWorldService.servicepage

运行结果如下:

?


1

您好,guest!

浏览器URL:http://localhost:8080/helloWorldService.servicepage?name=abc

运行结果如下:

?


1

您好,abc

好的,现在已经写了Java类,并且写了展现页面,并且已经正确的执行了结果。

换一种访问方式,试试看?

浏览器URL:http://localhost:8080/helloWorldService.servicexml?name=abc

?


1

<string>您好,abc</string>

换一种访问方式,试试看?

浏览器URL:http://localhost:8080/helloWorldService.servicejson?name=abc

?


1

<string>您好,abc</string>

运行结果如下:

?


1

"您好,abc"

限于时间关系,怎么通过webservice访问就不再展示了,实际上,通过WebService访问也是没有问题的。

小结:只要定义一个Service,就可以用N种方式来访问它。

可以渲染为一个html页面,也可以渲染为了个JSon,也可以是一段Xml,还可以是一个Excel表格,等等。

这个时候,我们在4台机器上运行,其中一台配置为AR,两台配置为AS,一台配置为SC。

AR为Web接入服务器,AS为应用服务器,SC为服务中心,这个时候用JMeter来对AR进行并发访问,你会发现两台AS都在提供服务。这证明了你的应用服务已经可以进行水平扩展了,而且是基于SOA模式的。

同样的去访问WebService,你会发现,也会被负载给两台AS。

也就是说,你只写一次,就可以以各种方式向外提供服务。

当然,你看到了,在你的服务处理类上定义了我们的注解,这会对你的代码形成侵入性。

如果一点也不想依赖我们的类和接口,那也没有问题。

类的写法如下:

?


1

2

3

4

5

6

7

8

9

public class HelloWorldService {

    public String helloWorld(String name) {

        if (name == null) {

            return "您好,guest!";

        } else {

            return "您好," + name;

        }

    }

}

另外添加如下配置:

hello.service.xml

?


1

2

3

4

5

6

7

8

9

10

11

12

<service-components>

    <service-component type="org.tinygroup.helloproject.HelloWorldService">

        <service-method service-id="helloWorldService" method-name="helloWorld">

            <service-parameters>

                <service-parameter name="name" type="java.lang.String"

                    required="true" is-array="false" />

            </service-parameters>

            <service-result name="sayHelloResult" required="true"

                is-array="false" type="java.lang.String" />

        </service-method>

    </service-component>

</service-components>

hello.serviceMapping.xml

?


1

2

3

<service-mappings>

    <service-mapping service="helloWorldService" type="page" path="/helloworld/helloworld.page<span></span>"></service-mapping>

</service-mappings>

这种方式与用注解方式达到的结果是完全一样的。

通过Hello的了解,您可能知道了Tiny框架的一些特点,这里小结一下:

  • 可以没有任何侵入性,但是需要写一些xml文件
  • 如果可以接受一些注解,那么开发将更加简单
  • 开发了服务,就代表着可以做许多扩展的功能,而这些扩展的功能,不会要你做额外的工作
  • Tiny框架中的Service与Spring中的Service的函义不同,它等价于WebService中的Service,就是说:你不用管它在哪里,实际上你也不知道它是在哪台物理机器上运行的,总之它被执行了。
  • Tiny框架天生支持前后台服务器的水平扩展,而你不需要做任何针对性的开发-当然需要遵守其规约--所有的要发布成服务的参数及返回值必须是可序列化的,其它没有任何附加条件。

如果这个HelloWorld示例学会了,表示你学会了:

  • Tiny的界面开发
  • Tiny的服务开发

而普通的程序员不需要学习Tiny的其它内容,当然,架构师要学的东西还是要多些的。

时间: 2024-12-22 17:41:31

Hello,World 百态的相关文章

《激浪青春》12月8日公映展示校园青春百态

黄晓明.陈乔恩在温馨小屋内 黄晓明求婚 黄轩性感古铜色肌肉 陈乔恩 新浪娱乐讯 由吴宇森监制,梁柏坚导演,陈乔恩.黄晓明领衔主演的青春喜剧电影<激浪青春>已定于12月8日全国公映.该部影片以新时代大学生活为背景,借助龙舟这种古老却又充满激情的运动来展现新时代年轻人的青春时光,描摹大学校园的青春百态. 据悉,该片是监制吴宇森和其大弟子梁柏坚联手打造的向青春致敬之作,传统的故事被师徒二人赋予了新时代的元素,在影片中塑造了又一代青春影人.青春地带以及青春色彩的崭新启示录. 青春放浪:明星讲述青春往事

淘宝发布城市百态图

看着满大街来来去去的姑娘们,你能说出她们是来自哪个地方的吗?从她们的外表上,能看出她们是 什么样的人吗?近日,淘宝网发布城市百态图,以http://www.aliyun.com/zixun/aggregation/7653.html">淘宝数据为基础,通过分析 各地女性的衣着特征,揭开每个城市女孩的生活状态和内心的秘密. 最御姐--上海女人 人均832元置装全国最多 放眼全国,最御姐的地区,非小资腔调十足的上海莫属了.上海女人是天生的时尚动物,无论家境及处境如何,都无一列外的对流行与时髦了

剑网3江湖百态开启艺人身份任务流程攻略

给各位剑网3游戏里的玩家们来详细的解析分享一下江湖百态开启艺人身份任务流程的攻略. 攻略分享:   江湖百态的开启按钮和隐元秘鉴在一起,快捷键是crtl+K   点击艺人之后,进入对艺人的介绍,同时出现任务线索:听说马嵬驿的薛伶官正在为某件事烦恼不已. 这样,咱们就去马嵬驿一趟,在马嵬驿马嵬村可以找到他,然后发现他让我们去枫华谷(真能跑--),注意这个实际上是战乱枫华谷地图,而不是老枫华谷.   薛伶官在唐军大营,虽然任务没有指引,但是很好找   顺着任务一路对话过去,npc都在旁边,击杀任务地

楼市限购令下百态:北京中介从挑活干变抢活干

叶小钟 张烁 车辉 吴铎思 编者:9月29日,财政部.国家税务总局.住房和城乡建设部联合发布通知,要求"全面暂停三套房以上的商业贷款,购买首套商品房按揭首付比例提高到30%--"楼市风云再起.随之,以各地方细则为主的楼市调控政策再掀波澜.继5月份的北京"限购令"之后,上海.广州等大城市也先后出台了"加强版"的"限购令".这里选取了几个城市,如实记录了楼市调控政策下的种种变化. 广州:转战二三线城市去看楼 记者在广州调查走访后发

iPhone 6明天凌晨发布 看“果粉”疯狂百态

据苹果官方确认,iPhone&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;6将于太平洋时间9月9日上午10时(即北京时间明天凌晨1时)在美国库伯提诺市弗林特剧院正式发布.果粉们又该躁动了,苹果零售店前又将排起长长的队伍.  对于铁杆"果粉"来说,不排队的人生几乎是不完整的人生.腾讯科技今日整理,那些年"果粉"的疯狂举动.

状态模式之看尽人生百态

        有人说"人的起点起初都是一样的,在后来的加加减减中,慢慢出现了差距--"人生是什么?人生如你脚下的路,如但丁在<神曲>里的一句话"在人生旅程的中途--"不论曾经做对了什么,做错了什么,用一颗心.一生情去坚定走你没走完的路.人生是什么?是一幅优美的画卷,是一段离奇的爱情故事,还是一曲悠悠的伤感乐曲--我无法形容人生是什么,为什么会有各式各样的人生经历,有人哭有人笑,有人淡然,有人超然,细看人间故事,品酸甜苦辣.         每个人的人生

林唯舟酷爱熊猫,其日用品上画了熊猫百态

爱熊猫,也懂熊猫.为了熊猫学摄像,陪熊猫一起成长.我不是"熊猫奶奶",我是林唯舟. 当了10年熊猫仆人 白天带带孙子,晚上到广场上跳跳舞.健健身,偶尔出去旅游一番,恐怕这就是很多人退休后的生活. 然而,林唯舟退休后,却毅然离开繁华的上海,一头扎进成都郊区的一个"小山林",与熊猫朝夕相伴,这一坚持就是10年.如今,很多人叫她"熊猫奶奶",但她却摆摆手说,"我只是熊猫的仆人. " 2个月采风变成2年长住 与熊猫结缘,是她退休后的事

营销才是王道,Gartner象限中的CRM百态

一个成功的IT领导者应该优先考虑营销,他们会像销售人员一样思考,甚至会和首席营销官成为朋友.重视销售的企业往往会提升整体业务的IT架构,而IT技术的引入也会为企业带来新的利润增长点. CIO和IT领导者在营销方面发挥的关键作用之一是评估.部署.维护和支持工具,例如CRM应用程序.企业可以利用这些工具从多种渠道获取数据,然后对潜在客户进行评估.扩充和设置优先级. 根据Gartner最新的Magic Quadrant report for CRM Lead Management报告显示:众多IT领导

微博时代,草根称雄,尽显微博百态

一位名叫"琢磨先生"的博主凭借着<三国微博>.<水浒微博>.<西游微博>三个假想时代微博作品迅速闻达微博.成名网络,作品内容全是古代人物微博组成,但说的却是微博里的"现代语",其中不但隐喻一些热门事件,还穿插众多"微博小广告". 这个系列的作品其实就是由一条条微博组成,包括部分评论.转发情况等等,图文并茂,形式跟现在的微博没有区别,但博主都是那个时代的人和机构,而内容也与名著情节息息相关. 以三国微博为例,涵盖