错误代码如下,
public RegisterRequest deleteOneById(long id) {
RegisterRequest rr = null;
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = null;
try {
transaction = session.beginTransaction();
String hql = "from RegisterRequest as r" + " where r.id = :id";
Query query = session.createQuery(hql);
query.setLong("id", id);
rr = (RegisterRequest) query.setMaxResults(1).uniqueResult();
session.delete(rr);
transaction.commit();
} catch (Exception e) {
e.printStackTrace();
if (transaction != null) {
transaction.rollback();
}
} finally {
session.close();
}
return rr;
}
public static void main(String[] args) {
IRegisterRequestDAO rr = new RegisterRequestDAO();
// RegisterRequest reg = new RegisterRequest();
//
// reg.setEmail("liyuanyuan0312@126.com");
//
// reg.setPassword("lyy313152");
//
// reg.setMinghao("wow");
//
// reg.setRequestTime(new Date().getTime());
//
// reg.setRequestIp("127.0.0.1");
//
// rr.createOne(reg);
// rr.deleteOneById(5L);
System.out.print(rr.readOneById(1L).getEmail());
}
对照如下正规写法,
public boolean deleteOneById(long id) {
boolean boo = false;
User user = new User();
user = this.readOneById(id);
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = null;
try {
transaction = session.beginTransaction();
session.delete(user);
transaction.commit();
boo = true;
} catch (Exception e) {
e.printStackTrace();
if (transaction != null) {
transaction.rollback();
boo = false;
}
} finally {
session.close();
}
return boo;
}
除了读取一个用户用User类型,其他都用boolean.例如, public User readOneById(long id)。
编译好的完整代码如下,并经过测试通过^^
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.kakatao.www.dao.impl.hibernate;
import com.kakatao.www.dao.IUserDAO;
import com.kakatao.www.model.User;
import java.util.Iterator;
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
/**
*
* @author rebecca
*/
public class UserDAO implements IUserDAO {
public boolean createOne(User user) {
boolean boo = false;
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = null;
try {
transaction = session.beginTransaction();
session.save(user);
transaction.commit();
boo = true;
} catch (Exception e) {
e.printStackTrace();
if (transaction != null) {
transaction.rollback();
boo = false;
}
} finally {
session.close();
}
return boo;
}
public User readOneById(long id) {
User user = null;
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = null;
try {
transaction = session.beginTransaction();
String hql = "from User as r" + " where r.id = :id";
Query query = session.createQuery(hql);
query.setLong("id", id);
user = (User) query.setMaxResults(1).uniqueResult();
transaction.commit();
} catch (Exception e) {
e.printStackTrace();
if (transaction != null) {
transaction.rollback();
}
} finally {
session.close();
}
return user;
}
public boolean deleteOneById(long id) {
boolean boo = false;
User user = new User();
user = this.readOneById(id);
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = null;
try {
transaction = session.beginTransaction();
session.delete(user);
transaction.commit();
boo = true;
} catch (Exception e) {
e.printStackTrace();
if (transaction != null) {
transaction.rollback();
boo = false;
}
} finally {
session.close();
}
return boo;
}
public List searchInListByHql(String hql) {
List list = null;
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = null;
try {
transaction = session.beginTransaction();
Query query = session.createQuery(hql);
list = query.list();
transaction.commit();
} catch (Exception e) {
e.printStackTrace();
if (transaction != null) {
transaction.rollback();
}
} finally {
session.close();
}
return list;
}
public static void main(String[] args) {
IUserDAO userdao = new UserDAO();
User user = new User();
// user.setEmail("liyuanyuan0312@126.com");
//
// user.setPassword("lyy313152");
//
// user.setMinghao("wow");
//
// user.setQmd("心有多大,舞台就有多大");
//
// user.setUsername("卡卡淘");
//
// user.setPhoto("/l0098/photos/1.jpg");
//
// user.setAddress("handan");
//
// user.setBlogAddress("/kakatao/aticles/one01");
//
// user.setAboutMe("自我介绍");
//
// user.setPp("yes");
//
// userdao.createOne(user);
// userdao.deleteOneById(3L);
List list = userdao.searchInListByHql("from User where address = 'handan'");
for(int i = 0; i< list.size(); i ++)
{
System.out.println(((User)list.get(i)).getId());
}
// System.out.print(userdao.readOneById(1L).getEmail());
}
}
分享到:
相关推荐
本文将深入探讨`dSYM`文件、其在错误分析中的作用以及如何使用友盟错误分析工具来优化这一过程。 首先,我们来了解`dSYM`文件的基本结构和功能。当我们在Xcode中编译iOS应用时,编译器会生成两个主要的输出文件:`....
"测试用例方法-因果图 错误分析"是一种科学且系统化的测试方法,它结合了因果图和错误分析,帮助测试团队更高效地设计和执行测试用例。 首先,我们来理解什么是因果图。因果图(Cause-Effect Diagrams,简称CED)是...
《C程序设计与错误分析(修订版)》是一本深入探讨C语言编程技巧与调试方法的书籍。在学习C语言的过程中,理解其基本语法、控制结构、数据类型以及函数运用是至关重要的。这本书旨在帮助读者从实践中提升编程能力,...
19.matlab调试错误分析.zip19.matlab调试错误分析.zip19.matlab调试错误分析.zip19.matlab调试错误分析.zip19.matlab调试错误分析.zip19.matlab调试错误分析.zip19.matlab调试错误分析.zip19.matlab调试错误分析.zip...
在上述内容中提到的一些专业术语和方法,如截断误差、采样密度、步长设置等,对于理解saber仿真软件的工作原理和错误分析至关重要。截断误差决定了仿真计算中的精度,采样密度决定了仿真的时间分辨率,步长设置则...
在分析这些错误时,可以参考提供的四个PDF文档:《汇编语言常见语法错误分析1.pdf》至《汇编语言常见语法错误分析4.pdf》。这些文档可能详细列举了各种实例,并给出了相应的解决策略。通过阅读这些文档,读者能够更...
医学杂志论文中常见的统计学错误分析及对策[宣贯].ppt
FPGA设计中Quartus常见错误分析、警告分析 Quartus是一款功能强大且流行的FPGA设计软件,但是在设计和编译过程中,经常会遇到各种错误和警告,从而导致设计失败或无法实现所需的功能。在本文中,我们将对Quartus...
"MFC运行错误分析" MFC(Microsoft Foundation Classes)是一种基于C++的应用程序框架,用于开发Windows桌面应用程序。然而,在使用MFC时,经常会遇到各种运行错误,例如堆栈溢出、内存泄露等。本文将对MFC运行错误...
"C语言编程易犯错误分析" C语言作为一种高级编程语言,具有简洁、灵活、强大功能的特点,受到广泛青睐。但是,C语言的灵活性也给程序调试带来了许多不便,尤其是对初学者来说,经常会出现一些连自己都不知道错误的...
ChatGPT 技术的调试与错误分析的常用工具介绍 在自然语言处理技术的发展中,ChatGPT 作为开放领域对话生成系统的代表之一,被广泛用于各种任务,例如问答、对话系统等。然而,在实际应用中,ChatGPT 技术仍然存在...
"JavaScript中常见错误分析" JavaScript是一种新型的描述语言,可以被嵌入HTML的文件之中,增加网页的互动性。透过JavaScript能及时响应用户的需求事件,对提交表单做即时的检查,而不用任何的网络来回传输资料。...
本资料"22 matlab调试错误分析.zip"可能包含了一系列关于MATLAB调试错误的案例分析,旨在帮助用户提升调试技能。 MATLAB中的常见错误类型包括语法错误、逻辑错误和运行时错误。以下是一些常见的MATLAB调试知识点: ...
《电能表接线错误分析软件》是一款专为电力行业设计的专业工具,它主要用于帮助电工和能源管理人员检测、诊断及修复电能表的接线错误。这款软件的应用旨在提高电力系统的安全性和效率,减少因接线错误导致的电能损失...
《网络抓包与错误分析工具SockMon5详解》 网络抓包和错误分析是网络调试过程中不可或缺的环节,它们能够帮助我们深入理解网络通信过程,定位并解决各种网络问题。在此,我们将详细介绍一款名为SockMon5的专业工具,...
《C程序设计与错误分析(修订版)》是一本针对C语言编程的深入教程,旨在帮助读者掌握C语言的基础知识并提升对程序错误的理解和处理能力。这本书特别注重实际编程中的错误分析,使得学习者能更好地理解和避免常见的...
西门子STEP7中编程常见错误分析 西门子STEP7中编程常见错误分析是西门子STEP7编程中常见的一些错误类型的总结和分析。本文将从多个方面对这些错误进行分析,并提供解决方案。 一、地址超范围错误 在西门子STEP7中...
本资源“matlab数理统计数据分析:22 matlab调试错误分析(含教学视频).zip”旨在帮助用户深入理解MATLAB在进行数理统计分析时可能遇到的调试问题,并提供解决这些问题的方法。 首先,MATLAB调试是编程过程中不可...
该项目是一款基于Python的电力计量错误分析与优化系统(Electricity Metering Error Analysis and Optimization System,简称EMEAOS)源码,包含50个文件,包括39个Python源代码文件、2个Excel文件、2个图标文件、1...