java hql多条件查询_使用hql语句怎样实现多条件查询

展开全部

这里只写了DAO和业务62616964757a686964616fe59b9ee7ad9431333264623331逻辑组件、ACTION的具体实现类,PO和和接口自己应该会写吧,HQL采用的是结合SQL的那种写法,增删改查全在里面了,修改下马上就能跑了,不清楚再问,我详细解答,因为这个是我第一给回答问题,分给我吧。呵呵

package dao.impl;

import java.util.List;

import org.hibernate.Query;

import org.hibernate.Session;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import pojo.User;

public class UserDaoImpl extends HibernateDaoSupport implements UserDao{

//根据标识属性加载User实例

public User get(String sysid)

{

return (User)getHibernateTemplate().get(User.class, sysid);

}

//持久化指定的User实例

public String save(User user)

{

return (String)getHibernateTemplate().save(user);

}

public void update(User user)

{

getHibernateTemplate().update(user);

}

public void delete(User user)

{

getHibernateTemplate().delete(user);

}

public void delete (String sysid)

{

getHibernateTemplate().delete(get(sysid));

}

public List findAll(String hsql) {

Session session = getHibernateTemplate().getSessionFactory().openSession();

Query query = session.createQuery(hsql);

query.setFirstResult(0);

query.setMaxResults(10);

List list = (List) query.list();

session.close();

return list;

}

public List findUserByRequest(User user) {

// TODO Auto-generated method stub

return null;

}

}

package service.impl;

import java.util.List;

import pojo.User;

import dao.impl.UserDao;

public class UserServiceImpl implements UserService

{

private UserDao userDao;

public UserDao getUserDao() {

return userDao;

}

public void setUserDao(UserDao userDao) {

this.userDao = userDao;

}

public User save(User user) {

userDao.save(user);

return user;

}

public User delete(String sysid) {

userDao.delete(sysid);

return userDao.get(sysid);

}

public List findAllUser(User user) {

String hsql="from User";

return userDao.findAll(hsql);

}

public User update(User user) {

userDao.update(user);

return user;

}

public List findUserByRequest(User user) {

String hsql="from User ";

String where = " where 1=1";

if (user.getSysid()!=null && !"".equals(user.getSysid())) {

where+=" and sysid='"+user.getSysid()+"'";

}

if(null!=user.getName() && !"".equals(user.getName())){

where+=" and name='"+user.getName()+"'";

}

hsql+=where;

return userDao.findAll(hsql);

}

public User delete(User user) {

userDao.delete(user);

return user;

}

}

//ACTION

package action;

import java.util.List;

import org.apache.struts2.ServletActionContext;

import pojo.User;

import service.impl.UserService;

import com.opensymphony.xwork2.ActionSupport;

public class UserAction extends ActionSupport{

private User user;

private UserService userServer;

public User getUser() {

return user;

}

public void setUser(User user) {

this.user = user;

}

public UserService getUserServer() {

return userServer;

}

public void setUserServer(UserService userServer) {

this.userServer = userServer;

}

@Override

public String execute() throws Exception {

// TODO Auto-generated method stub

return findAll();

}

// public String list(){

public String findAll(){

List list = userServer.findAllUser(user);

ServletActionContext.getRequest().setAttribute("list", list);

return "list";

}

public String findUserByRequest(){

List list = userServer.findUserByRequest(user);

ServletActionContext.getRequest().setAttribute("list", list);

return "list";

}

public String add()

{

return "add";

}

public String addSure()

{

userServer.save(user);

return "list";

}

public String deleteBySysid()

{

userServer.delete(user);

return "list";

}

public String showUpdate() {

List list = userServer.findUserByRequest(user);

user = list.get(0);

ServletActionContext.getRequest().setAttribute("list", list);

return "update";

}

public String updateSure() {

userServer.update(user);

return "list";

}

}

2Q==

已赞过

已踩过<

你对这个回答的评价是?

评论

收起

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/273125.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

闪回数据库

Flashbacking a database means going back to a previous database state.闪回数据库到之前数据库的状态The Flashback Database feature provides a way to quickly revert entire Oracle database to the state it was in at a past point in time. 闪回数据库特性提供了一种…

java.net.unknown_android -------- java.net.UnknownServiceException

最近升级了Android的API版本时 &#xff0c;导致我的网络请求失败了&#xff0c;出现了这个错误 java.net.UnknownServiceException&#xff0c;这个错误&#xff0c;我在网上查到这个主要是由于&#xff0c;我们的OkHttp3会默认使用密文传输&#xff0c;而我们的代码中使用Htt…

Visual Studio下Qt调用IDL

一&#xff0e;简单介绍&#xff1a; 1.ActiveQt包含QAxContainer和QAxServer组件。 1) QAxContainer允许使用COM对象&#xff0c;并且可以将ActiveX控件嵌入到Qt程序中去。 QAxContainer是有三个类组成的。分别是&#xff1a; QAxObject封装了COM对象 QAxWidget封装了ActiveX控…

安装java过程_Java的安装过程

记录一下自己在Windowns下安装java的过程打开网址后要先登录&#xff0c;如果没有号就先注册&#xff0c;然后才能下载step1&#xff1a;下载JDK(1)将鼠标指向download&#xff0c;会出现如下界面:(2)点击左上角PopularDownloads下的 Java for Developers进入如下界面&#xff…

dockerfile源码安装mysql_docker容器详解五: dockerfile实现tomcat环境以及源码安装mysql...

tomcat上一节讲到了dockerfile的基础&#xff0c;这一次咱们来作一个小的练习首先要了解tomcat安装的整个过程首先搭建 jdk环境&#xff1a;下载jdk包&#xff0c;解压以后添加环境变量而后搭建tomcat&#xff1a;下载tomcat包&#xff0c;解压&#xff0c;修改配置文件到一个工…

SQL server 2008数据库的备份与还原、分离(转)

一、SQL数据库的备份&#xff1a; 1、依次打开 开始菜单 → 程序 → Microsoft SQL Server 2008 → SQL Server Management Studio → 数据库&#xff1a;Dsideal_school_db既是我们需要备份的学籍数据库 图&#xff08;1&#xff09; 2、选择要备份的数据库“Dsideal_school_d…

Java做一个动画效果音量调节_设计与实现一个 ISoundable 接口,该接口具有发声功能、还能调节音量大小...

[java]代码库package experiment6;public interface ISoundable {public void increaseVolume();public void decreaseVolume();public void stopSound();public void playSound();}package experiment6;public class Radio implements ISoundable {public void increaseVolume…

人人都有极客精神

http://www.jisuanke.com/minicourse/59/438 人人公司是一家极为鼓励极客精神的公司&#xff0c;当有重要的项目需要上线但又时间太紧&#xff0c;甚至需要当天上线的时候&#xff0c;往往会挂起海盗旗开启电子日期显示&#xff0c;让大家可以在对时间有更明确的感知的情况下&a…

WPF入门教程系列十三——依赖属性(三)

四、 只读依赖属性 在以前在对于非WPF的功能来说&#xff0c;对于类的属性的封装中&#xff0c;经常会对那些希望暴露给外界只读操作的字段封装成只读属性&#xff0c;同样在WPF中也提供了只读属性的概念&#xff0c;如一些 WPF控件的依赖属性是只读的&#xff0c;它们经常用于…

企业服务总线全双工异步通信机

为了实现系统的高可靠性、高可用性和并行处理能力&#xff0c;我们经常使用一些负载均衡设备&#xff08;例如F5&#xff09;等集群解决方案。但&#xff0c;会有一些特殊的情况下&#xff0c;。例如&#xff0c;长连接、特殊的技术协议。不可用F5和其他设备来解决&#xff0c;…

java druid jdbc例子_JDBC【使用Druid连接数据库,DBUtils工具类的使用】

Druid连接数据库&#xff0c;DBUtils工具类的使用1.在maven中添加Druid依赖com.alibabadruid1.2.02.封装Druid连接方法import com.alibaba.druid.pool.DruidDataSource;import com.alibaba.druid.pool.DruidDataSourceFactory;import java.io.IOException;import java.io.Input…

java前后端接口文档_前后端交互接口设计规范

在开发web应用的时候&#xff0c;往往会涉及到一个问题&#xff0c;前端后接口定义的问题。接口定义设计的好坏很大程度上能影响一个项目的进度和可扩展性。但是前辈们在这个问题上留下了非常宝贵的一些常规的设计思路&#xff0c;值得我们参考。1、后端设计统一的返回模型在与…

2015 多校第三场

1002 求max&#xff08;f(a),f(b)&#xff09;, f为不重复的素因子个数&#xff0c; 在数据要求以内 &#xff0c; 每个数最多有7个&#xff0c;可以打表。 1 /*Author :usedrose */2 /*Created Time :2015/7/29 11:32:09*/3 /*File Name :2.cpp*/4 #include <cstdio>5 …

微信支付现金红包接口(转)

微信支付现金红包接口正式开放&#xff0c;只需开通微信支付&#xff0c;即可接入现金红包。通过现金红包接口&#xff0c;公众号开发者可以策划相关运营活动&#xff0c;向用户发放微信支付现金红包&#xff0c;更好的达到品牌推广及回馈用户的效果。具体能力如下&#xff1a;…

The return types for the following stored procedures could not be detected

1、使用dbml映射数据库&#xff0c;添加存储过程到dbml文件时报错。 2、原因&#xff1a;存储过程中使用了临时表 3、解决方案 3.1 通过自定义表值变量实现 Ex: DECLARE TempTable TABLE ( AttributeID INT, Value NVARCHAR(200) ) INSERT INTO TempTable Select * from Attrib…

webstock php,workerman_connection

workerman_connection 测试WebStock 功能Description整理PHP 实现webstock 功能的相关流程。感谢workerman 开发作者提供开源组件。安装 composer# curl -sS https://getcomposer.org/installer | php如果安装 composer 提示PHP 版本不够按照如下处理&#xff0c;否则跳过。提示…

java android 界面设计,Android精美登录界面设计

在网上在到一个登录界面感觉挺不错的&#xff0c;给大家分享一下~先看效果图&#xff1a;这个Demo除了按钮、小猫和Logo是图片素材之外&#xff0c;其余的UI都是通过代码实现的。一、背景背景蓝色渐变&#xff0c;是通过一个xml文件来设置的。代码如下&#xff1a;background_l…

jmeter java接口,jmeter并发测试java接口 | 学步园

Sample这里我用到主要JMeter的线程和报表&#xff0c;扩展了他的“Java请求”这个应用类别。要扩展此应用&#xff0c;要用到lib/ext/ApacheJMeter_java.jar,他封装此应用。首先&#xff0c;需要继承ApacheJMeter_java.jar中的抽象类AbstractJavaSamplerClient&#xff0c;它提…

Web项目练习总结(错误校正篇)

老师布置任务&#xff0c;从SVN上弄个项目来练练手&#xff0c;熟悉下过程。 myeclipse安装SVN 然后把MobileManageSys下下来 然后漫长的等待。。。 然后配置数据库&#xff0c;导入&#xff0c;这里用的是SQLyog&#xff0c;其他的也可以 之后这里会产生一大堆的错误&#xff…

nginx php7提速,nginx+php7-fpm 性能提升几倍跟踪实践结果并优化

nginxphp7-fpm 性能提升几倍跟踪实践结果并优化nginxphp7-fpm 性能提升几倍&#xff0c;跟踪实践结果并优化历史ubuntu服务器使用的apachephp5&#xff0c;现在使用nginuxphp7-fpm方式&#xff0c;看效果图&#xff0c;啥也不说了。强烈推荐升级到php7&#xff0c;当然升级中基…