小编我今天写程序时遇到了个问题,在SSH框架中做查询操作时 hql语句输出来了,但是却没有查到结果,将hql语句放到Oracle数据库中却可以查到数据 废话不多说 下面贴代码
BaseDAO中的方法
protected List<T> findall(final String hql){
return this.getHibernateTemplate().executeFind(new HibernateCallback(){
@Override
public Object doInHibernate(Session session) throws HibernateException,
SQLException {
try {
//执行查询操作
Query query=session.createQuery(hql);
return query.list();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
return null;
}
}
});
}
}
子DAO的接口实现 中的方法
@Override
public List<User_hobbys> findall() {
// TODO Auto-generated method stub
System.out.println("User_hobbysDAOImp--------------findall");
String hql="select * from User_hobbys";
List<User_hobbys> list=super.findall(hql);
return list;
}
Server 实现代码
@Override
public List<User_hobbys> findall() {
// TODO Auto-generated method stub
List<User_hobbys> us = new ArrayList<>();
us=dao.findall();
System.out.println(us.get(0).getHobbys_name()+"===="+us.get(0).getHobbys_name());
return us;
}
下面是配置文件
<bean id="wdaouhimp" class="com.ydsn.tms.dao.impl.User_hobbysDAOImp" parent="baseDAO">
</bean>
<bean id="wusvimp" class="com.ydsn.tms.service.imp.User_hobbysServerImp" scope="prototype">
<property name="dao" ref="wdaouhimp"></property>
</bean>
<bean id="Usebbyfindall" class="com.ydsn.tms.action.User_hobbys_QueryAction" scope="prototype">
<property name="us_hobby" ref="wusvimp"></property>
</bean>
<package name="User_hobbys" namespace="/jcxx" extends="json-default">
<action name="userhobbyfindall" class="Usebbyfindall" method="findhobbys">
<result>/jcxx/userinfomanageui.jsp</result>
</action>
</package>
就是以上这些 搞了半天 就是没有数据出来 小编我时个新手 上网百度 好多人说了 以下几点
1 hql="select * from User_hobbys"; 语句中写的要是类名 不是表名
2 在配置 映射时注意 name="hobbys_id" 要和类名一致
3 数据库中的数据在添加时 需要commit
以上几点 我们都仔细的看了看没有问题 ,
找了半天 最终在hql 语句中发现问题。
String hql="select * from User_hobbys";
把上面这句改成了 这样 就可以了
String hql="from User_hobbys";
就可以了 虽然改好了小编我也是刚刚入门,也就是学了个皮毛
对于为啥 用上面那句就不行。用下面的就可以 表示疑惑 二者有啥区别 ???
有浏览的大神 可以说说嘛!!! 也可以对我的代码做评价,像编码风格,命名规范上 都 可以 给我指正。希望有回复。谢谢大家了
分享到:
相关推荐
在"ssh框架的模糊查询"这个主题中,我们将深入探讨如何在SSH框架下实现对数据的增删改查(CRUD)操作,以及模糊查询和分页显示功能。 首先,让我们来理解增删改查的基础。在SSH框架中,Struts2作为前端控制器处理...
在这个"SSH集成_查询EMP雇员_src"项目中,我们将深入探讨如何利用SSH框架来实现对ORACLE数据库中EMP表的查询操作。 **1. Struts框架** Struts是MVC(Model-View-Controller)设计模式的一个实现,主要负责处理HTTP...
这个实例可能是一个简单的SSH2项目,用于演示如何在Java应用中集成这三个框架进行数据库查询操作。以下是对SSH2框架及它们在数据库查询中的应用进行的详细解释: **Struts2** 是一个基于MVC(Model-View-Controller...
SSH集成开发是Java Web开发中的一个经典组合,它由Spring、Struts2和Hibernate三个开源框架组成,分别负责控制层、表现层和持久层的管理。这个集成项目旨在提供一个全面的解决方案,使得开发者能够更高效地构建企业...
Hibernate支持HQL(Hibernate查询语言)和Criteria API,可以方便地进行数据查询。通过实体类和映射文件,Hibernate能够自动处理对象和表之间的转换,包括对象的持久化、加载、更新和删除等操作。 **SSH集成** 的...
在这个"SSH 简单查询 添加 删除项目案例"中,我们将会探讨如何利用SSH框架实现数据的查询、添加和删除操作。 首先,让我们了解SSH框架的核心组件: 1. **Struts2**:是MVC(模型-视图-控制器)架构模式的一种实现,...
在多表查询的场景下,Struts2可以设计相应的Action,负责接收用户请求并调用服务层的方法,进行数据查询。 Spring作为核心的依赖注入(DI)和面向切面编程(AOP)框架,它管理着整个应用的组件,包括Struts2的...
在SSH框架中集成JPA,我们可以利用Spring的数据访问抽象层,通过配置来启用JPA支持。 注解在JPA中的使用极大地简化了数据库模型的定义。例如,我们可以使用@Entity注解标记一个类作为实体,@Table注解指定对应的...
SSH框架,全称为Struts2、Spring和Hibernate的组合,是Java Web开发中常见的三大开源框架集成。这个框架集合提供了模型-视图-控制器(MVC)架构模式,以及依赖注入(DI)和面向切面编程(AOP)等特性,极大地提高了...
对于用户信息查询,我们需要创建一个User实体类,对应数据库中的用户表,然后定义一个UserDao接口和实现类,使用Hibernate的Session API进行数据查询。例如,我们可以编写一个`findUsers()`方法,通过HQL(Hibernate...
在实际开发中,SSH集成开发涉及的知识点包括但不限于:Struts的配置文件设置、Action和ActionForm的设计、控制器的实现;Spring的IoC容器配置、AOP的使用、事务管理;Hibernate的对象关系映射配置、实体类设计、DAO...
查询列表的学习例子中,会涉及到Hibernate的Criteria API或HQL(Hibernate Query Language)来编写查询语句,获取数据库中的列表数据。这些数据会被传递到Service层进行业务处理,然后由Struts2的Action转发到JSP...
SSH一对多(两表双向关联查询)是一种在Java Web开发中常见的数据操作方式,主要涉及到Spring、Struts和Hibernate这三大框架的集成使用。在这个场景下,我们将关注于如何通过Hibernate来实现数据库中的两个表——...
在"ssh增删改查"这个主题中,我们将深入探讨SSH框架如何帮助开发者实现基本的数据操作:增加(Add)、删除(Delete)、修改(Update)和查询(Query)。 **Struts2** 是一个基于MVC(Model-View-Controller)设计...
在SSH集成中,Hibernate负责持久化业务对象到数据库,通过SessionFactory和Session接口实现数据的CRUD操作。它还支持HQL(Hibernate Query Language),一种面向对象的查询语言。 在集成SSH框架时,通常需要完成...
SSH2 是一个在Java开发中常用的Web应用框架组合,它由Spring、Struts和Hibernate三个开源框架集成。这个“ssh2-列车查询系统”项目显然使用了这些技术来构建一个铁路查询系统的实例,让我们深入了解一下这三个框架...
- **Read**(读取):查询数据通常通过查询方法实现,可以根据ID、条件等进行单个或多个对象的获取。Spring的JdbcTemplate或Hibernate的Criteria、HQL可以实现复杂的查询。 - **Update**(更新):更新操作涉及到...
在本教程中,我们将深入探讨SSH框架如何实现数据的增删改查(CRUD)操作。 1. **Struts2**:作为 MVC 框架的一部分,Struts2 负责处理HTTP请求并将其映射到相应的Action类。在进行CRUD操作时,Struts2的配置文件...
在"压缩包子文件的文件名称列表"中,尽管没有具体列出文件,但可以假设包含有如spring-context、struts2-core、hibernate-entitymanager等核心库的jar包。 接下来,是Spring的配置。Spring的核心是IoC(Inversion ...
SSH集成在JavaWeb项目中的应用,是开发人员常用的一种技术栈组合,主要涉及Spring、Struts2和Hibernate这三个开源框架。这些框架的结合为开发者提供了强大的后端支持,包括依赖注入、模型-视图-控制器架构以及对象...