Cascade no hibernate - ajuda!

ola galera!!!
como faço o “on cascade updade”, “on cascade set null” e “on cascade delete” no hibernate (se possivel) e quais os significados dessas cascades

@OneToOne(cascade = { CascadeType.ALL })”,

@OneToOne(cascade = { CascadeType.MERGE })”,

@OneToOne(cascade = { CascadeType.PERSIST })”,

@OneToOne(cascade = { CascadeType.REFRESH })” e

@OneToOne(cascade = { CascadeType.REMOVE })”

estou usando o FireBird…
muito obrigado…

Tanto faz para Interbase , Mysql e etc !
No seu mapento na sua coleção vc define a tag cascade= “ação”

<!-- Colecao de Telefones e Pessoas --> 		
	<set name="telefone" inverse="false" lazy="false" [b]cascade="all"[/b]>
		  	<key column="pes_id"/>
		  	<one-to-many class="entity.Telefone"/>
	</set>

Cascade: indica com que ação em cascata o relacionamento será
tratado.
:arrow: none: associação é ignorada;
:arrow: save-update:os objetos associados vão ser inseridos ou
atualizados automaticamente quando o objeto “pai” for
inserido ou atualizado;
:arrow: delete: os objetos associados ao objeto “pai” vão ser
deletados;
:arrow: all: junção de delete e save-update;
:arrow: all-delete-orphan: o mesmo que all, mas o Hibernate
deleta qualquer objeto que tiver sido retirado da associação;
:arrow: delete-orphan: se o objeto não fizer mais parte da
associação, ele removido.

eu queria q fosse no hibernate annotations…
mesmo assim valeus…