这段代码有什么问题? SQL命令没有完成,使用show_sql,我能够看到发出的第一个sql命令,然后它无限期地挂在那里 - 程序没有继续。
public class PersonDao {
private Configuration configuration;
private SessionFactory sessionFactory;
private Session session;
public PersonDao () {
configuration = new Configuration().configure();
sessionFactory = configuration.buildSessionFactory();
}
public Person addPerson(Person p)
{
Transaction transaction = null;
try
{
session = sessionFactory.openSession();
transaction = session.beginTransaction();
System.out.println("Before person add");
session.save(p);
System.out.println("Person added");
transaction.commit();
} catch (Exception e) {
e.printStackTrace();
} finally {
session.flush();
session.close();
}
return p;
}
@SuppressWarnings("finally")
public boolean deletePerson(long personId)
{
boolean issuccessful = false;
Transaction tx = null;
try {
session = sessionFactory.openSession();
tx = session.beginTransaction();
Object persistentInstance = session.load(Person.class, personId);
if (persistentInstance != null) {
((Person)persistentInstance).getResponses().clear();
((Person)persistentInstance).getOwnedEvents().clear();
session.delete(persistentInstance);
}
session.getTransaction().commit();
} catch (Exception e) {
tx.rollback();
issuccessful = false;
e.printStackTrace();
} finally {
session.flush();
session.close();
return issuccessful;
}
}
答案 0 :(得分:0)
您需要配置hibernate.cfg.xml文件
DigitsAuthButton digitsButton;
AuthCallback authcallback;
digitsButton = (DigitsAuthButton) view.findViewById(R.id.auth_button);
digitsButton.setAuthTheme(R.style.CustomDigitsTheme);
authcallback = new AuthCallback() {
@Override
public void success(DigitsSession session, String phoneNumber) {
edtMobNumber.setText(phoneNumber);
}
@Override
public void failure(DigitsException exception) {
exception.printStackTrace();
}
};
digitsButton.setCallback(authcallback);
//launching digits activity on click of edit text
edtMobNumber.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Digits.clearActiveSession();
digitsButton.performClick();
}
});