0%

iptables是IPv4包过滤和NAT工具,ip6tables是IPv6包过滤工具。IPv6虽然理论上不需要NAT,但目前看来NAT还是必不可少的,特别是IPv4向IPv6过渡的时候。NAT这玩意儿说实话比较讨厌。iproute2中的ip命令则是路由,网络设备,策略路由和隧道等的配置工具,同时支持IPv4和IPv6。iptables/ip6tables与iproute2可以配合来管理网络的方方面面,比如,二者配合可以实现强大的策略路由。

Option 60选项作用于DHCP客户端可选地向DHCP服务器报告客户端厂商类型和配置。而DHCP服务器如果向DHCP客户端返回制造商相关信息必须使用Option 43。

Mybatis Generator配置文件中
generatorConfiguration元素有一个子元素properties,可以用来指定一个java属性文件,从而配置文件内可以通过${property}来引用属性对应的值。可以将一些通用的属性放到共享的属性文件中减少一些冗余。

properties子元素有两个互斥的属性resource和url,resource用来指定类路径下的属性文件,url用来指定文件系统路径指示的属性文件。
二者只能使用一个,resource总是不成功,Mybatis Generator的类路径就没整明白,jdbc驱动类还是用的绝对路径:(

样例属性文件generatorConfig.properties
[xml]
classPath=/path/to/WEB-INF/lib/postgresql-9.3-1100.jdbc41.jar
driverClass=org.postgresql.Driver
dbURL=jdbc:postgresql://localhost/reis
userId=general
passwd=general
project=projectname/src/main
[/xml]

更新(12/30/2013):

将资源文件放入eclipse已经存在的classpath中,或者将资源文件所在的文件夹添加到eclipse类路径里就可以用resource属性来引用资源文件了。
比如资源文件放在WEB-INF/conf文件夹里面,WEB-INF/conf不在eclipse的类路径下,所以需要设置eclipse添加该文件夹,如下:
project -> properties -> java build path -> libraries -> add class folder,选择WEB-INF/conf确定就可以了。
这样工程根目录下的.classpath文件内会添加一行:
[xml]

[/xml]

Mybatis Generator默认设置会生成一大堆罗哩罗嗦的Example类,主要是用各种不同的条件来操作数据库,大部分是用不到的,用到的时候手工修改mapper和接口文件就行了。

[sql]

\[/sql\]

这样生成的mapper和dao接口就清爽多了。

因为要引用schema base中的一张表tb_user,所以在sql文件中使用如下语句授权:
[sql]
\c reis base
GRANT REFERENCES ON tb_user TO general;
\c reis general
[/sql]

但仍然无法引用base.tb_user表,提示:

ERROR: permission denied for schema base

这里虽然对schema base下的对象tb_user有了参考的权限,但对schema本身却没有授予权限,所以出现这个错误提示。

所以先授权角色general有使用schema的权限就可以了。

[sql]
\c reis base
GRANT USAGE ON SCHEMA base TO general;
GRANT REFERENCES ON tb_user TO general;
\c reis general
[/sql]

对于schema对象,有两种权限可以授权其他角色。一个是CREATE,允许被授权的角色在当前schema内创建和修改对象。另一个权限是USAGE,允许被授权角色使用schema内的对象。

参考:
GRANT的详细语法

complete和finish的区别: When you marry the right girl, you are completed. When you marry the wrong girl, you are finished. When the right girl catches you with the wrong girl, you are completely finished. 太经典了!