Если iproute2 будет установлен, и Вы находитесь на 2,6 ядрах, [то 111]
/sbin/ip monitor
произведет изменения в локальном интерфейсном состоянии и адресует к stdout. Ваша программа может считать это.
Вы могли также использовать тот же низкоуровневый механизм, как iproute2 инструмент делает (я думаю, что это - сокет netlink).
It's possible to create a custom UserType
(e.g. this one) and use it from your mappings
<property name="type" not-null="true">
<type name="at.molindo.util.hibernate.EnumUserType">
<param name="enumClass">
com.example.MyEnum
</param>
</type>
</property>
EDIT: Hibernate comes with it's own EnumType (since 3.2 in hibernate-annotations, since 3.6 in hibernate-core - didn't know about it being in hibernate-annotations at the time of writing, but see Diego's answer).
Hibernate предоставляет org.hibernate.type.EnumType
для отображения перечислимых типов. Например,
package com.igalia.enumerates;
public enum Status {
BUSY,
AVAILABLE;
}
package com.igalia.entities;
class MyClass {
private Status status;
}
Затем выполните отображение Hibernate следующим образом:
<class name="MyClass">
<id name="id">
<generator class="native"/>
</id>
<property name="status">
<type name="org.hibernate.type.EnumType">
<param name="enumClass">com.igalia.enumerates.Status</param>
</type>
</property>
</class>
И все. Если вы предпочитаете использовать аннотации JPA вместо hbm.xml, используйте @Enumerated (EnumType.STRING). Проверьте это здесь: