
這是第二話的路程
http://anime-longriders.com/map/route/02.html

大概60公里左右,不過中途有數個上坡
努力踩還是可以一口氣騎上去 XD
首先是前半段出現的「麥當勞」,地點是「駒沢大学店」
因為這地點距離起點太遠了,所以在前一個禮拜的時候就先騎車路過拍照
git clone https://github.com/kilfu0701/go-vendor-example.git
cd go-vendor-example
export GOPATH=`pwd`
export PATH=$GOPATH/bin:$PATH
go get -u github.com/kardianos/govendor
rm -rf src/github.com src/golang.org # after install govender, remove "src/github.com" & "src/golang.org"
cd src/app
govendor sync
cd $GOPATH
go run src/main.go
npm install domain-parser
var dp = require('domain-parser'); var result = dp('www.google.com.tw').domainName; console.log(result); // google.com.tw result = dp('direct.jp-bank.japanpost.jp').domainName; console.log(result); // japanpost.jp
# -*- coding: utf-8 -*-
import hashlib
import sqlalchemy
from sqlalchemy import Column, Integer, String, ForeignKey, DateTime, Table
from sqlalchemy.schema import MetaData
from sqlalchemy.orm import relationship
from sqlalchemy.orm import Bundle
from sqlalchemy.orm import lazyload
from sqlalchemy.orm.session import Session, sessionmaker
from sqlalchemy.ext.declarative import declarative_base
engine = sqlalchemy.create_engine('mysql+mysqldb://user:passwd@host/your_db?charset=utf8')
connection = engine.connect()
session = Session(bind=connection)
my_declarative_base = lambda cls: declarative_base(cls=cls)
@my_declarative_base
class Base(object):
@property
def columns(self):
return [ c.name for c in self.__table__.columns ]
@property
def columnitems(self):
return dict([ (c, getattr(self, c)) for c in self.columns ])
def __repr__(self):
return u'{}({})'.format(self.__class__.__name__, self.columnitems)
def to_json(self):
return self.columnitems
def rec_json(self, key_str):
result = self.columnitems
result[key_str] = getattr(self, key_str).columnitems
return result
class User(Base):
__tablename__ = 'user'
__table_args__ = {
'mysql_engine': 'InnoDB',
'mysql_charset': 'utf8'
}
id = Column(Integer, primary_key=True)
name = Column(String(64))
username = Column(String(64))
password = Column(String(256))
address_id = Column(Integer, ForeignKey('user_address.id'))
address = relationship("Address", lazy="joined")
def __init__(self, name, username, password):
self.name = name
self.username = username
self.password = hashlib.sha1(password).hexdigest()
def __repr__(self):
return u"[User('%s','%s', '%s')]" % \
(self.name, self.username, self.password)
class Address(Base):
__tablename__ = 'user_address'
__table_args__ = {
'mysql_engine': 'InnoDB',
'mysql_charset': 'utf8'
}
id = Column(Integer, primary_key=True)
address = Column(String(256), nullable=False)
def __init__(self, address):
self.address = address
def __repr__(self):
return u"[Address('%s')]" % self.address
# insert test data...
"""
Base.metadata.create_all(engine)
user_1 = User("user1", "username1", "password_1")
user_2 = User("user2", "username2", "password_2")
address_1 = Address(u'臺灣凱達格蘭大道')
user_1.address = address_1
user_2.address = address_1
session.add(user_1)
session.add(user_2)
session.commit()
"""
for r in session.query(User).options(lazyload('address')):
print r.rec_json('address')
"""
Output Result:
{'username': 'username1', 'address_id': 17L, 'name': 'user1', 'address': {'id': 17L, 'address': u'\u81fa\u7063\u51f1\u9054\u683c\u862d\u5927\u9053'},
'password': '3833b3a1c69cf71a31d86cb5bb4d3866789b4d1e', 'id': 33L}
{'username': 'username2', 'address_id': 17L, 'name': 'user2', 'address': {'id': 17L, 'address': u'\u81fa\u7063\u51f1\u9054\u683c\u862d\u5927\u9053'},
'password': '148dfdc3c539d35004cb808ca84e17ff962af744', 'id': 34L}
"""
cd /opt/
wget http://ftp.tc.edu.tw/pub/Apache/lucene/solr/4.6.0/solr-4.6.0.tgz
tar zxvf solr-4.6.0.tgz
tar zxvf jdk-7u45-linux-i586.gz
cp -pr /opt/solr-4.6.0/example/ /opt/solr/
cd /opt/solr/
java -Dsolr.solr.home=multicore -jar start.jar
wget https://gist.github.com/Polzme/7367523/raw/9ccf8b040b70eca214497dc6ee2b23e9abb0b8ef/solr -O /etc/init.d/solr
chmod +x /etc/init.d/solr
# 依個人需求,修改java的路徑
vim /etc/init.d/solr
#DAEMON=/usr/bin/java
DAEMON=/opt/jdk1.7.0_45/bin/java
service solr start
http://localhost:8983/solr/
update-rc.d solr defaults
iptables -A INPUT -p tcp -s localhost --dport 8983 -j ACCEPT
iptables -A INPUT -p tcp --dport 8983 -j DROP