- 浏览: 1990194 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (509)
- JavaEE (122)
- Oracle数据库 (29)
- JavaScript (37)
- SAP (5)
- MySql数据库 (7)
- JavaSE (4)
- Ajax (1)
- jQuery (13)
- SSH框架 (36)
- Web Service (10)
- JSF框架 (2)
- JBPM (0)
- ireport报表 (2)
- ibatis (5)
- Hibernate (31)
- JSP (11)
- Tomcat 服务器 (20)
- Other (19)
- JavaWeb (4)
- Maven (11)
- OSWorkFlow (10)
- HTML (13)
- Exception汇总 (7)
- SVN (2)
- 笑话 (1)
- JSTL (1)
- WebSphere Message Broker (13)
- ANT命令 (3)
- Liunx (12)
- Struts2 (26)
- Eclipse (6)
- DOS (3)
- Flex (11)
- WebSphere (1)
- 开发常用工具 (3)
- Junit (2)
- EJB (4)
- Struts1.2 (2)
- Jboss (1)
- Android (2)
- Java框架源码解析 (1)
- Spring (4)
- MyBatis (6)
- SpringMVC (4)
- Jetty (2)
- 数据库表设计 (1)
- SSO (4)
最新评论
-
贝塔ZQ:
也可以试试PageOffice插件,觉得更简单点
Jxl操作Excel设置背景、字体颜色、对齐方式、列的宽度 -
jia1208:
...
Could not publish server configuration for Tomcat v6.0 Server at localhost. -
u011274527:
赞
java.io.EOFException java.io.ObjectInputStream$PeekInputStream.readFully 错误 -
旭旭小牛啦:
怎么没哟了,继续赛
jQuery 选择器 -
wzw3919:
100行会报空指针
Java 解压缩zip文件
Hibernate中提供一种可以把HQL配置在Hibenate.hbm.xml中. 这样的好处,可以统一进行管理. 以及可以在其他Service中都能用到.
比如我们在User.hbm.xml中配置如下HQL语句:
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <!-- Mapping file autogenerated by MyEclipse Persistence Tools --> <hibernate-mapping> <class name="pack.java.model.UserInfo" schema="MBADMIN" table="USER_INFO"> <id name="uiid" type="java.lang.Long"> <column name="UIID" precision="10" scale="0"/> <generator class="sequence"> <param name="sequence">seq_user_info</param> </generator> </id> <property generated="never" lazy="false" name="username" type="java.lang.String"> <column length="20" name="USERNAME" not-null="true"/> </property> <property generated="never" lazy="false" name="password" type="java.lang.String"> <column length="15" name="PASSWORD"/> </property> <property generated="never" lazy="false" name="groups" type="java.lang.String"> <column length="20" name="GROUPS"/> </property> <property generated="never" lazy="false" name="email" type="java.lang.String"> <column length="48" name="EMAIL"/> </property> <property generated="never" lazy="false" name="status" type="java.lang.String"> <column length="1" name="STATUS"/> </property> <property generated="never" lazy="false" name="lastlogintime" type="java.lang.String"> <column length="23" name="LASTLOGINTIME"/> </property> <property generated="never" lazy="false" name="failcount" type="java.math.BigDecimal"> <column name="FAILCOUNT" precision="22" scale="0"/> </property> <property generated="never" lazy="false" name="locktime" type="java.lang.String"> <column length="23" name="LOCKTIME"/> </property> </class> <query name="query_user_by_username">from UserInfo U where U.username = ?</query> </hibernate-mapping>
然后,在Service中通过定义一个变量引用query中的name即可.
private static final String QUERY_USER_BYNAME = "query_user_by_username"; public List<UserInfo> queryUserByName(String name) { // TODO Auto-generated method stub List<UserInfo> list = new ArrayList<UserInfo>(); try { list = userDao.queryUserByName(QUERY_USER_BYNAME, name); } catch (DatabaseException e) { // TODO Auto-generated catch block e.printStackTrace(); System.out.println("查询出现异常!"); } return list; }
UserDao中的方法如下:
public List<UserInfo> queryUserByName(String queryName,Objcect...objects) throws DatabaseException { Query query = getSession().getNamedQuery(queryName); if(objects!=null && objects.length > 0 ){ for(int i = 0 ;i<objects.length;i++){ query.setParameter(i, objects[i]); } } return query.list(); }
发表评论
-
大型互联网服务集成平台:springmvc+mybatis+restful+webservice+quartz+bootstrap html5
2015-04-13 21:49 81SpringMVC + Mybatis + SpringSe ... -
大型互联网服务集成平台:springmvc+mybatis+restfull+JMS+webservice+bootstrap
2015-04-12 23:36 22SpringMVC + Mybatis + SpringS ... -
大型互联网服务集成平台:springmvc+mybatis+restfull+JMS+webservice+bootstrap
2015-04-12 23:33 83SpringMVC + Mybatis + SpringS ... -
Maven构建大型互联网架构springmvc+mybatis+Restfull+Webservice+Bootstrap
2015-04-12 23:28 71SpringMVC + Mybatis + SpringS ... -
手机App后台架构:Springmvc+SpringSecurity+mybatis+Rest+Quartz+Bootstrap Html5( Maven构建)
2015-04-09 01:39 76APP后台架构Maven构建,模拟大型互联网架构,支持高并发 ... -
maven构建springmvc+mybatis+rest+webservice+bootstrap html5(cms开源项目)
2015-04-09 01:21 85SpringMVC + Mybatis + SpringS ... -
通过 ServletContextEvent 获取spring的applicationContext文件所在的路径
2012-01-09 13:33 13785public class UserStatusLi ... -
通过WebApplicationContextUtils工具类获取ApplicationContext对象.
2011-12-18 21:03 10234通过WebApplicationContextUtils工具类 ... -
Spring中二级缓存的配置
2011-12-18 20:40 22331.首先,在spring的hibernate配置里(app ... -
springframework java.lang.ClassNotFoundException
2011-12-11 23:49 2570springframework java.lang. ... -
java.lang.ClassNotFoundException: org.apache.commons.collections.map.LinkedMap
2011-12-11 23:23 3277下面这个错误是少了commons-collections.ja ... -
net.fckeditor.connector.ConnectorServlet java.lang.ClassNotFoundException: net.
2011-11-17 14:56 2523今天在整合struts2+ibatis2.16+spring2 ... -
log4j文件日志配置
2011-11-16 19:03 2869下面是一段最常见的日志配置模板: #输出到控制条to co ... -
Line: 209 - com/opensymphony/xwork2/spring/SpringObjectFactory.java:209:-1
2011-11-14 21:27 1572问题链接: http://www.iteye.com/pro ... -
Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStore
2011-11-14 14:34 14803Exception in thread "main& ... -
获取容器中WEB-INF或者classes目录下的配置文件
2011-11-04 17:07 5834获取Tomcat容器中WEB-INF路径下的文件. 在Ser ... -
解决spring配置文件没有提示的问题。
2011-11-03 00:16 2761我们使用eclipse编辑spring ... -
The reference to entity "characterEncoding" must end with the ';' delimiter
2011-10-06 12:44 2180在配置Spring 的数据源的时候,想把url配置下面加一个 ... -
Caused by: org.xml.sax.SAXParseException: Content is not allowed in prolog.
2011-10-06 12:31 6103在配置Spring文件的时候..从别的文件中复制过来的头文件。 ... -
java.lang.NoClassDefFoundError: org/aopalliance/aop/Advice
2011-10-05 22:59 12866本人在整合Struts2+Hibernate3.32+Spri ...
相关推荐
- `findByNamedQuery(queryName, params)`: 使用预定义的命名查询,这些查询可以在`hbm.xml`映射文件中定义,或通过`@NamedQuery`注解在实体类上声明。 - `countByExample(entity)`: 计算满足特定条件的记录数,...
- `List findByNamedQuery(String queryName)`:根据命名查询返回实体集合。 - `Object get(Class entityClass, Serializable id)`:根据主键加载特定持久化类的实例。 3. **插入与更新操作** - `void save...
- 命名查询(Named Query)是预定义的 HQL 查询,可以在 XML 映射文件中定义,然后通过 `session.getNameQuery("queryName")` 调用。 7. **查询结果处理**: - `uniqueResult()` 返回查询结果的唯一对象,如果...
List findByNamedQuery(String queryName):根据命名查询返回实例集合 Object get(Class entityClass, Serializable id):根据主键加载特定持久化类的实例 24.3 Spring对Hibernate的简化 24.3.3 HibernateTemplate的...
`findByExample`方法将根据这些属性值查找数据库中相匹配的记录。需要注意的是,如果示例实体中的某些属性为空,则不会将这些属性纳入查询条件。 #### 五、findByExample(Object exampleEntity, int firstResult, ...
6. **查询支持**:除了基本的CRUD操作,还可以添加支持HQL(Hibernate查询语言)和SQL查询的方法,如`findByNamedQuery(String queryName, Object... params)`和`executeSQLQuery(String sql, RowMapper rowMapper, ...
在Spring框架与Hibernate技术结合使用时,HQL(Hibernate Query Language)作为对象查询语言被广泛应用于数据查询操作之中。本文将详细解析Spring框架中常用的HQL查询方法及其应用场景。 #### 一、find(String ...
- `List find(String queryString)`:根据HQL(Hibernate Query Language)查询语句返回对象集合。 - `List findByNamedQuery(String queryName)`:通过预先定义的命名查询返回对象集合。 3. **获取与加载** - `...
- `List findByNamedQuery(String queryName)`:根据预先定义的命名查询返回实例集合。 - `Object get(Class entityClass, Serializable id)`:通过主键加载特定持久化类的实例。 - `void save(Object entity)`:...
例如,本例中查询名字为“test”的所有用户。 3. **find(String queryString, Object[] values)**:此方法接受一个HQL字符串及多个值作为参数,返回符合条件的结果列表。 - 示例代码: ```java String hql = ...
- **功能**:执行命名查询,即在 Hibernate 配置文件中定义的查询。 - **示例代码**: ```java List<User> users = template.findByNamedQuery("findUsersByAge"); ``` 6. **get(Class entityClass, ...
Spring框架进一步封装了Hibernate,提供了`getHibernateTemplate()`方法,使得在Spring环境中使用Hibernate变得更加便捷。本文将详细介绍`getHibernateTemplate()`的使用方法,并通过具体的代码示例帮助读者更好地...
4. `findByNamedQuery(String queryName)`: 根据预先定义的命名查询返回实例集合。 5. `get(Class entityClass, Serializable id)`: 根据主键加载特定持久化类的实例。 6. `save(Object entity)`: 保存新的实例到...
- `findByNamedQuery(String queryName)`: 根据命名查询返回实例集合。 - `get(Class entityClass, Serializable id)`: 根据主键加载特定持久化类的实例。 - `save(Object entity)`: 保存新的实例。 - `...
- **List findByNamedQuery(String queryName)**:根据命名查询返回实例集合。 - **T get(Class<T> entityClass, Serializable id)**:根据主键加载特定持久化类的实例。 - **void save(Object entity)**:保存新的...
- `List findByNamedQuery(String queryName)`:根据命名查询返回结果集。 - `Object get(Class entityClass, Serializable id)`:根据主键加载特定持久化类的实例。 这些方法简化了数据访问层的实现,使开发者...
4. `List findByNamedQuery(String queryName)`: 使用预先定义好的命名查询来获取结果集。 5. `Object get(Class entityClass, Serializable id)`: 根据指定的类和主键值加载对象。 6. `void save(Object entity)`...
- `List findByNamedQuery(String queryName)`:根据预先定义的命名查询返回实例集合。 3. **加载与保存操作**: - `Object get(Class entityClass, Serializable id)`:通过主键加载特定持久化类的实例。 - `...
4. **`List findByNamedQuery(String queryName)`**:根据命名查询执行HQL查询并返回结果列表。命名查询是在映射文件中定义的,使用此方法可以提高代码的可读性和维护性。 5. **`Object get(Class entityClass, ...