Ich habe eine Tabelle namens AdminRole@SqlDelete arbeitet nicht für weiche Deletion in Hibernate
ADMIN_ROLE_ID | BESCHREIBUNG | NAME | ARCHIVED
Ich brauche einen Datensatz aus AdminRole
löschen als Admin-Rolle ist sehr wichtig. Ich muss eine weiche Löschung anstelle einer harten Löschung durchführen. Dazu versuche ich @SqlDelete
Hibernate Annotation zu verwenden. Meine Entitätsklasse ist dies:
@Entity
@table(name="ADMINROLE")
@SqlDelte(sql="UPDATE ADMINROLE SET ARCHIVED = 'Y' WHERE ADMIN_ROLE_ID=?")
public class AdminRole{
@column(name="ADMIN_ROLE_ID")
protected Lond id;
@column(name="DESCRIPTION")
protected String description;
@column(name="NAME")
protected String name;
...
...
}
Ich habe den Rekord auf Front-End zu zeigen, wenn ARCHIVED
in N
wenn es Y
Datensatz ist nicht sichtbar vor Ende, als ich Admin-Rolle erstellen ARCHIVED
setzt auf N
erfolgreich und zeigt am vorderen Ende. Aber das Problem ist, wenn ich versuche, die admin role
von Front-End zu löschen die ARCHIVED
ist nicht auf Y
aufgrund dieser Aufzeichnung wird am Front-End angezeigt.
In DAO
public AdminDAO {
protected EntityManager manager;
public void remove(Serializable entity){
manager.remove(entity)
}
}
warum ist @SqlDelete
ist nicht für mich arbeiten kann mir jemand helfen? In der Protokolldatei wurde keine Ausnahme ausgelöst. Wann wird @SqlDelete
ausgeführt?