第一种方式:QBC查询
String name = "", info = "";
if (sub != null && sub.getSubname() != null) {
name = sub.getSubname();
}
if (sub != null && sub.getSubinfo() != null) {
info = sub.getSubinfo();
}
Criteria cr = session.createCriteria(Subject.class);
cr.add(Expression.like("subname","%"+name+"%"));
cr.add(Expression.like("subinfo","%"+info+"%"));
第二种方式:HQL查询语句
String hql = "from Subject as s where s.subname like :name and s.subinfo like :info";
// 调用session的获得数据列表方法,传递HQL查询语句
String subnamevalue="要查询的中文值";
String sql="";
sql = "from Pfapp where name like :subname ";
Query query = session.createQuery(sql);
query.setString("subname","%"+subnamevalue+"%");
System.out.println("*********"+sql);
注:Subject为数据库表subject映射的类;它有相应的属性subname、subinfo及相应的get和set方法;sub为Subject的一个实例化对象。
另外说明的是:如果你不写对象名称,直接写字段,那么hibernate就按照数据库字段进行查找
如果你写 (对象名.对象属性),那么hibernate就按照ormapping中的映射字段进行查找
这是hibernate的灵活之处!!
分享到:
相关推荐
不久前Hibernate推出了Hibernate Search 3.0 GA,由它的名字大家也可以大概猜到它的作用是对数据库中的数据进行检索的。它是hibernate对著名的全文检索系统Lucene的一个集成方案,作用在于对数据表中某些内容庞大的...
- **模糊查询**:使用 `LIKE` 关键字进行模糊匹配。 ```java String hql = "FROM Person WHERE name LIKE ?"; Query query = session.createQuery(hql); query.setParameter(0, "%John%"); List<Person> ...
本示例涉及的技术栈包括Struts1、Spring2.0和Hibernate3.0,这三者构成了经典的MVC(Model-View-Controller)架构。 1. **Struts1**:这是一个基于MVC设计模式的Java Web框架,负责处理用户请求,并将这些请求映射...
该系统采用了J2EE的SSH框架(Struts2 + Hibernate3.0 + Spring2.1),提供了内容管理、互动管理、用户管理、清洁生产专家库、技术服务单位管理、系统数据管理等多功能。特别地,系统支持清洁生产审核流程,包括汇报...
- **平台构建:** 配置Tomcat6.0为MyEclipse开发环境下的可用应用服务器,并导入Struts1.2、Spring2.0、Hibernate3.0等框架插件。 - **数据库设计:** 根据需求进行表设计,建立表与表之间的关系图,编写数据字典...
4. 连表查询和模糊查询 技术方案: 1. 使用JSP设计用户交互界面。 2. 利用MySQL进行数据库设计。 3. 通过Struts2处理HTTP请求,与JSP交互。 4. Hibernate实现对象关系映射,简化数据库操作。 5. 引入Spring进行依赖...