葡京在线开户宝岛游记—打造12龙圆自由行

介绍

台湾,一个值得细细品味的地方,也许这里的山峦风物不比较大陆壮丽,但这时也处处洋溢着浓厚人情味,比打及根同脉的我们,台湾口保留了再度多之中原传统美德,值得我们每个人失去细细的品味、学习。

一度发起了距职流程,工作对接的闲暇时间,来将点工作吧。博主的品位属于菜逼型,html,js,java勉强会写一点点,websocket也只有知道是个长连,如果您连这还不明了。建议优先活动补习一下。
接下来说话我们要开什么事物吧,就是一个五指棋游戏,然后有只厅堂,可以去开房,然后就是得跟棋友啪啪啪下棋了。看起好像挺简短,但咱要于更简便易行的始吧。

预先上路线图:

正文
先是冀的对象我们是长建筑一个webSocket的服务器,然后做一个粗略的五指棋,然后连上去的鲜个人就得起下棋啦。也不考虑各种bug啦。

证书办理及路计划

后端代码
率先是搭建筑一个webSocket的服务器,网上广大还是spring+WebSocket的,不过不用spring框架为是ok的。
这边提供一个粗略的demo吧。(请等自己及污染,哈哈哈)。点注解进去好发现部分不过挑选的参数,反正我们本啊非用。

因为凡自由行,出行前提前做好行程计划是必须的,关于路及景色的切实设计,推荐一款款在线的路途定制工具,来自于清游网的:http://plan.qyer.com/
。里面有详细的景色推荐介绍与路线辅助设计,能帮忙你节省成千上万岁月。

我们的路程一起是12上11继,顺时针环岛:台北-九份-花莲-垦丁-高雄-台南-台北。入台证在贤停留时间最长是16天15继,建议时充裕的爱侣,可以把这极端丰富期限全之所以掉,用重新多的时来感触台湾。

于操办证件方面,“两证一签”缺一不可,大陆出入境管理处签发之通畅证+个人出境游签证(G签)和台湾出入境主管部门签发的入台证。办理顺序和排顺序,通行证及G签办理非常容易,大概15龙时间就是得用到手,入台证则限定由国内指定旅行社作为中介代为办,推荐以淘宝中青旅代办,大约两百大抵首届,所欲资料比多,大概只要花一个差不多月日。

@ServerEndpoint("/websocket")
public class WebSocketTest {

    @OnMessage
    public void onMessage(String message, Session session) 
        throws IOException, InterruptedException {
        //收到客户端消息
        session.getBasicRemote().sendText("hello");
    }

    @OnOpen
    public void onOpen () {
        //有一个客户端链接
        System.out.println("Client connected");
    }

    @OnClose
    public void onClose () {
        //有一个客户端断开
        System.out.println("Connection closed");
    }
}

寄宿及机票

住宿和机票方面的订货也是发出门槛的,一般提前半个月预定基本上会得到无限优惠的价位。

机票我们大概是提前一个半月份在南部航订的,从深圳宝安机场往来价桃园机场价格在1400/人左右。

寄宿点,台湾整体的价钱会比大陆高起部分,但一般青少年我们好选青旅和民宿,除了价格实惠外尚能够结交到来自世界各地的伴儿。

订房网站推荐Airbnb、Agoda、Booking和台湾故里的发疯台湾:http://www.fun-taiwan.com、四方通行:http://www.easytravel.com.tw
、HOT垦丁:http://www.hotkt.com

下一场用Tomcat启动。
这么一个webSocket的服务器即添建筑了了,然后我们就来促成五指棋的逻辑咯。后端的逻辑分为两有些,第一凡待连接(没少独人口下啊棋呢),第二步是客户端起来下棋,进行播放。

大概说生12上的路程

第一天:深圳(宝安飞机场)→桃园机场→台北车站→台北101楼宇→师大夜市→meeting
place(住所)

中午时到台北桃园机场,在这边可以一直换台币(汇率大约是1人民币=5台币),取台币之后买电话卡,中華电信与台湾手机是本土最为要命之有限只运营商(我买的凡台湾手机15日最好流量套餐,700台币,3G之网,平均网速1.5M/s),办理好之后再添就国光客运到台北车站,车费125台币。

于台北车站外大约逛了下后,到地下捷运站购买了悠游卡,(记住问明了,因为有些地方买的悠游卡是不行退钱的)在台湾因而此卡坏有益,火车、公车、捷运、轮渡、公共自行车等刷卡使用,在7-11以及Family
Mart便利店也可就此这个卡。接着在游历服务主导处了青壮卡,仅供15~30春的观光客免费做,在食宿上产生得的折扣。

已宿订在了meeting
place,81RMB/人每晚,缺点是距站比较多。不过好之凡外国气氛非常浓厚,里面遇到的几都是洋人,老板是爱尔兰人,两个舍友来自澳大利亚的,刚好被了自身一个操演口语的时。卸下行李后晚逛了台北101暨学大夜市,师大夜市并没想像中的那么好,所以要各位想去胡吃海喝的言辞,推荐本地人口太轻去之宁夏夜市。

第二天:南门市场(早餐)→中正纪念堂→淡水老街→红毛城→淡水渔人码头→情人桥

一大早起来后搭就出租车到南门市面,这边很多本土的早餐店,点了平碗鼎边锉。之后步行至相邻的方正纪念堂,

耿纪念堂即蒋介石纪念堂,外表以蓝、白2色为主,中正纪念堂有海陆空三军仪队轮流驻,每个整点的交接仪式吸引大批旅行者看来。

然后步行到捷运中正好纪念堂站,乘捷运到淡水,逛淡水老街,吃淡水有名的阿给、阿婆铁蛋、百叶温州大馄饨(周杰伦套餐)等,之后依次参观小白宫、真理大学、红毛城。

因为公车赶在日落之前抵达渔人码头,赏夕阳、情人桥。晚上以情侣桥下的食堂赏在暮色,听在驻唱歌手弹唱,很是如意。

第三天:瑞芳站→九份→黄金博物馆园区→升平戏院→阿妹茶楼→戏梦人生(晚饭)→金瓜石宽宿背包客栈(住宿)

直接去瑞芳车站,搭就自强号及九份。在公安部附近由出租车直接上顶金瓜石的民宿。卸下行李后发现店有合作的浮潜项目,毅然报名与。

浮潜完之后民宿老板送我们来
金瓜石黄金博物馆,这里原址是从前亚洲极其充分的富源产区,现保存有日据时期的过剩修筑,免费参观。晚饭在戏梦人生吃的,用餐完毕后服务员很热情地吧我们开拓了天台的门户,在此可以一览九份的暮色,捕捉到《千与千寻》的雏形。

第四天:瑞芳车站→欣欣面馆→花莲文化创意产业园

每当民宿用完老板贴心准备的早餐后即便踹上了产一致立。从瑞芳站盖到花莲,到达花莲已经中午了,小伙伴们都比较疲惫。呆在旅店休息,晚上当欣欣面馆吃饭,这里的烩饭超赞,我接触了牛肉面,可惜太晚去牛肉卖了了。之后游览了知识创意园……

第五天:清水断崖→太鲁阁国家公园→燕子口→瑞穗牧场→七星潭→鹅肉先生(晚饭)

气候比较暖,第二天我们就算包车出行,恰好遇见两号拼车之驴友。所以平摊下来人均700台币/天。司机颇有意思,一路齐带来在咱飙歌,先后游历了清水断崖、太鲁阁、燕子口、瑞穗牧场、七星潭,还有司机和好挖的“秘密景点”,晚饭在鹅肉先生吃,司机是先这里的掌厨,所以我们吃得超过丰富超赞!

第六天:天道二手书店→垦丁彩虹波浪冲浪背包旅店(住宿)

一大早起来,骑在借来的火车头兜到朋友推荐的时候二手书店,郁闷的凡要是13:00才开门。只好以花莲周边将另外的局部山水随便逛了游,中午所以完午饭后包车前往垦丁,一路走走停停玩玩,傍晚到达民宿。

第七天:砂岛→龙磐公园→白沙湾→鹅銮鼻灯塔→台湾最好南点→南湾

垦丁可以租机车飞一整天,价格约700台币/人,这里的状况呢深美,不过夏天来若留意防晒。(这里的太阳不是一般人能够领之)

第八天:强雄捷运美丽岛站→打狗英国领事馆→西子湾风景区→旗津→高雄港→台湾中山大学→梦时代(高雄的眼)

高雄应该算是台湾之亚大都会了吧,捷运美丽岛站的统筹于您来惊艳的感到,下午出游了西子湾、中山大学当景区,晚上刊上了高雄之眼(摩天轮),俯瞰整个高雄的痛感挺壮观。

第九天:安平老街→林百货→神农街→次归(住宿)

抵台南,下午祥和于安平老街瞎逛,这里的大多是台湾最为乡土的居住者,讲话十单字有7单字是闽南语,能感受及无限漂亮的台湾。晚上民宿老板开车带我们国旅了林百货、神农街,还求我们吃了本土的米糕、排骨酥,超赞的。

第十天:安平古堡→安平树屋→度小月担仔面(午餐)→台南孔庙→国立台湾文学馆→府中路麻雀巷→窄门→草祭二手书店→克林台包→莉莉水果店→中西区保安路→梅鑫海产店(晚餐)

当台南之次天,早上优先逛了了安平古堡和安平树屋。然后下午咱们来中西区,相比于前天底安平区,这里更的热闹。我们先装作特别文艺地逛了了孔庙及文学馆,接着便从头了美食探索的一起了,窄门咖啡馆的大门只能容一人口投身进入,很有风味;克林包子的八宝肉包大过硬;还有莉莉水果店,水果非常奇异很甜美也非值钱,保安路一修街还是各种特色小吃,味道我便不再称了,你们好来尝试了就知晓,晚餐在梅鑫海产店吃了海鲜。

晚饭之后老板开始在自己之小艇带我们于海上兜风,回到宾馆后尚亲自下厨为我们做的宵夜。

第十一龙:信星青年旅舍→三大多屋→诚品书店(信义店)→微热山丘(采购手信)→西门町

末段一天回台北,开始了疯狂之扫货的同。在诚品书店里请了书(台版的魔法森林,给民众号里的伴们举行有益,结果在另一样篇推文中),然后在糖村买进了牛轧糖,在微热山畈买了凤梨酥。经过试吃证明的确就有限只品牌之寓意最好。晚上还至台北极其繁盛的西门町商圈购买有狼藉的…

第十二上:返程

正午底返程航班,早上于青年并舍用完早饭就是开开和投明信片。因一切行程下来有些累,之后就整行李一直为机场了。本次行程台北留下的时日最好少,没能够到象山观夜景,但刚使我眼前所说的,台北是一个可慢慢倒之城市。所以,留下一点遗憾被下次底路上来弥补了。

修了一个台湾自由行的微信群,可以扫描二维码进入,我会将台湾车手大哥和有民宿老板加进去。欢迎大家问,还有好多细节无写,这篇东西,就到底一个概述吧。

第一片段

代码比较简单的,(因为并没有开展详细的规划,所以前后相互的数额格式为是比扯淡的,后面会召开的比好,暂时就这么吧,以json的格式).数据封装成一个Action,然后传被前端。

    Set<Session> session_list =null;
    session_list =session.getOpenSessions();
    if (session_list.size() == 2){
       System.out.println("Ready Start Game");
        //first
        Session session1 = (Session)session_list.toArray()[0];
        StartAction startAction1 = new StartAction();
        startAction1.setDetail("Black");
        session1.getBasicRemote().sendText(new Gson().toJson(startAction1));

        //second
        Session session2 = (Session)session_list.toArray()[1];
        StartAction startAction2 = new StartAction();
        startAction2.setDetail("White");
        session2.getBasicRemote().sendText(new Gson().toJson(startAction2));
    }

仲有的:第二有的逻辑比较简单,接收至某个同着下棋的命,进行下棋,然后广播拥有的链接,跟他们说,这个人下了只棋啦。

  ChessAction chessAction = new Gson().fromJson(content, ChessAction.class);
  chessAction.setCode("Chess");
  for (Session each : session_list){
          each.getBasicRemote().sendText(new Gson().toJson(chessAction));
  }

此间要小心的凡,最老之版我们是勿以服务端保存棋盘的。所以是存一定问题之,后面又为一闹了。

前者代码
前端代码是网上扒一个单机的本子进行改建的,重点出口几有吧。创建一个webSocket的链接

    host = document.location.host;
    host = "ws://" + host + "/chess";
    var webSocket = new WebSocket(host);

收取服务端消息

   webSocket.onmessage = function(event) {
          onMessage(event)
      };

   function onMessage(event){
       var action = JSON.parse(event.data);
       if (action.code == "Start"){
           startGame(action);
       }else if (action.code == "Chess"){
           recieveChessMsg(action);
       }
   }

出殡信息

   function sendChessMsg(color, x, y){
          var chessAction = new Object();
          chessAction.color = color;
          chessAction.x = x;
          chessAction.y = y;
          var chessInfoStr = JSON.stringify(chessAction);
          webSocket.send("chess" + chessInfoStr);
   }

其它的画布呀,画一个五指棋出来呀的,大家网上扒一煮就实行,或者直接生充斥源码就ok了。

总结
第一希望我们虽概括地长建筑了一个简练的在线五指棋。当然这中有相当多的题目,例如:没有房间呀,链接数超过3单人口来题目呀,下至一半刷新的题目呀,服务器无校验操作,数据交互等之类。。。
没事,后面我们再累。
第一巴的代码等下上次,里面有部分代码因为是自别的地方扒的,没什么卵用,但为从来不去除,将就吧。