dao层

public interface DimDao {
//一个条件
public List<User> userdim(User user);

//两个条件且关联表格
public List<Goods> likegood(Goods goods);

//有下拉菜单
public List<Bill> billnolist(Bill bill);

}

public class DimDaoImpl implements DimDao {

private Connection connection = null;
private PreparedStatement p = null;
private ResultSet set = null;

//用户名模糊查询
@Override
public List<User> userdim(User user) {
// TODO Auto-generated method stub
try {
connection = DBUtil.getConnection();
String sql = "select * from T_USER where username like '%"+user.getUsername()+"%' ";
p = connection.prepareStatement(sql);
set = p.executeQuery();
List<User> list = new ArrayList<User>();

while(set.next()){
User user1 = new User();
user1.setId(set.getInt("id"));
user1.setUsername(set.getString("username"));
user1.setPassword(set.getString("password"));
user1.setSex(set.getInt("sex"));
user1.setAge(set.getInt("age"));
user1.setSalary(set.getDouble("salary"));
user1.setAddress(set.getString("address"));
user1.setPhone(set.getString("phone"));
list.add(user1);
}
return list;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}

public List<Goods> likegood(Goods goods) {
// TODO Auto-generated method stub
try {
connection = DBUtil.getConnection();
String sql = "select g.*,b.name brname,s.bid,s.sname,bi.name biname "
+ " from T_GOODS g left join T_brand b on b.id = g.brandid"
+ " inner join T_smallclass s on g.sid = s.sid"
+ " inner join T_bigclass bi on bi.id = s.bid where g.goodsname like '%"+goods.getGoodsname()+"%' ";
p = connection.prepareStatement(sql);
set = p.executeQuery();
List<Goods> list = new ArrayList<>();
while(set.next()){
Goods goods1 = new Goods();
goods1.setId(set.getInt("id"));
goods1.setGoodsname(set.getString("goodsname"));
// goods1.setBrandid(set.getInt("brandid"));
goods1.setColor(set.getString("color"));
goods1.setPrice(set.getDouble("price"));
goods1.setShangtime(set.getDate("shangtime"));
// goods1.setSid(set.getInt("sid"));
goods1.setStock(set.getInt("stock"));
goods1.setWeight(set.getDouble("weight"));
goods1.setBrand(new Brand());
goods1.getBrand().setId(set.getInt("brandid"));
goods1.getBrand().setName(set.getString("brname"));
goods1.setBigclass(new BigClass());
goods1.getBigclass().setBid(set.getInt("bid"));
goods1.getBigclass().setName(set.getString("biname"));
goods1.getBigclass().setSid(set.getInt("sid"));
goods1.getBigclass().setSname(set.getString("sname"));
list.add(goods1);
}
return list;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}

public List<Bill> billnolist(Bill bill) {
// TODO Auto-generated method stub
try {
connection = DBUtil.getConnection();
String sql = "select * from T_BILL where billno like '%"+bill.getBillno()+"%' and ispay like '%"+bill.getIspay()+"%' ";
p = connection.prepareStatement(sql);
r = p.executeQuery();
List<Bill> list = new ArrayList<Bill>();
while(r.next()){
Bill bill2 = new Bill();
bill2.setId(r.getInt("id"));
bill2.setBillno(r.getString("billno"));
bill2.setBilltamount(r.getDouble("billtamount"));
bill2.setIspay(r.getString("ispay"));
bill2.setPaytype(r.getString("paytype"));
bill2.setPdesc(r.getString("pdesc"));
bill2.setTradenum(r.getInt("tradenum"));
list.add(bill2);
}
return list;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}

}

service

public interface DimService {
//用户名模糊查询
public List<User> userdim(User user);

//两个条件
public List<Goods> likegood(Goods goods);

//有下拉菜单
public List<Bill> billnolist(Bill bill);

}

public class DimServiceImpl implements DimService {
private DimDao dimdao = new DimDaoImpl();
public DimDao getDimdao() {
return dimdao;
}

public void setDimdao(DimDao dimdao) {
this.dimdao = dimdao;
}
//用户名模糊查询
@Override
public List<User> userdim(User user) {
// TODO Auto-generated method stub
return dimdao.userdim(user);
}

//商品模糊查询
@Override
public List<Goods> likegood(Goods goods) {
// TODO Auto-generated method stub
return dimdao.likegood(goods);
}

@Override
public List<Bill> billnolist(Bill bill) {
// TODO Auto-generated method stub
return dimdao.billnolist(bill);
}

}

action

//用户名模糊查询
public String likeuser(){
ActionContext ac = ActionContext.getContext();
Map<String, Object> session= ac.getSession();
session.put("userlike", user.getUsername());
userlist = dimservice.userdim(user);
return SUCCESS;
}

//商品模糊查询
public String goodlike(){
ActionContext ac = ActionContext.getContext();
Map<String, Object> session = ac.getSession();
session.put("goodlike", goods.getGoodsname());

goodslist = goodsservice.likegood(goods);
return SUCCESS;
}

//账单模糊查找
public String billlike(){
ActionContext actionContext =ActionContext.getContext();
Map<String, Object> session = actionContext.getSession();
session.put("billno", bill.getBillno());
session.put("ispay", bill.getIspay());
System.out.println(bill);
list = billService.billnolist(bill);
return SUCCESS;
}

struts.xml

<!-- 用户模糊 -->
<action name="likeuser" class="com.oak.action.LikeAction" method="likeuser">
<result name="success">
/userAdmin.jsp
</result>
</action>

<!-- 商品模糊查询 -->
<action name="goodlike" class="com.oak.action.GoodsAction" method="goodlike">
<result name="success">
/goods.jsp
</result>
</action>

<action name="billlike" class="com.oak.action.BillAction" method="billlike">
<result name="success">
/admin_bill_list.jsp
</result>

</action>

前台

下拉菜单选中状态

<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script>

<script type="text/javascript">
$(function(){
$("#haha").val("${ispay}");
});
</script>

struts2模糊查询的更多相关文章

  1. 个人笔记之json实现模糊查询

    1:首先创建一个项目如:(说明:此项目是在eclipse创建的) 2.在创建相对应的包如: 3.创建写好相对应的配置文件如: applicationContext.xml具体内容如下: <?xm ...

  2. Mybatis框架的模糊查询(多种写法)、删除、添加(四)

    学习Mybatis这么多天,那么我给大家分享一下我的学习成果.从最基础的开始配置. 一.创建一个web项目,看一下项目架构 二.说道项目就会想到需要什么jar 三.就是准备大配置链接Orcl数据库 & ...

  3. js—模糊查询

    首先要明白什么是模糊查询(废话又来了),就是根据关键字把列表中符合关键字的一项或某项罗列出来,也就是要检查列表的每一项中是否含有关键字,因此抽象一下就是一个字符串中是否含有某个字符或者字符串. 以下例 ...

  4. mybatis : trim标签, “等于==”经验, CDATA标签 ,模糊查询CONCAT,LIKE

    一.My Batis trim标签有点类似于replace效果. trim 属性, prefix:前缀覆盖并增加其内容 suffix:后缀覆盖并增加其内容 prefixOverrides:前缀判断的条 ...

  5. combobox实现模糊查询自动填充

    利用winform设计软件界面时,经常用到combobox控件,但有时需要绑定数据表中的数据,更进一步,需要实现对数据表中数据的模糊查询功能.本文就讲讲述如何用C#实现combobox下拉列表的模糊查 ...

  6. [转]ORACLE中Like与Instr模糊查询性能大比拼

    instr(title,'手册')>0  相当于  title like '%手册%' instr(title,'手册')=1  相当于  title like '手册%' instr(titl ...

  7. 关系数据库SQL之基本数据查询:子查询、分组查询、模糊查询

    前言 上一篇关系数据库常用SQL语句语法大全主要是关系型数据库大体结构,本文细说一下关系型数据库查询的SQL语法. 语法回顾 SELECT [ALL|DISTINCT] <目标列表达式>[ ...

  8. StackExchange.Redis加载Lua脚本进行模糊查询的批量删除和修改

    前言 使用StackExchange.Redis没有直接相关的方法进行模糊查询的批量删除和修改操作,虽然可以通过Scan相关的方法进行模糊查询,例如:HashScan("hashkey&qu ...

  9. SQL SERVER 的模糊查询 LIKE

    今天写个动态脚本,需要把数据库里面包含“USER_"的表删除掉,突然想不起来如何搜索通配字符了,赶紧查查MSDN,整理了下模糊查询的知识点,留着以后查阅用. LIKE模糊查询的通配符 通配符 ...

随机推荐

  1. [OpenCV] 图像亮度和对比度调整

    对比度调整的原理参考这篇博客 以下是代码实现: #include <iostream> #include "opencv2/core.hpp" #include &qu ...

  2. Windows32位或64位下载安装配置Scala

    [学习笔记] Windows 32位或64位下载安装配置Scala: 1)下载地址:http://www.scala-lang.org/download/,看我的spark那节,要求scala是2.1 ...

  3. 剑指offer47:位运算+递归。求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。

    1 题目描述 求1+2+3+...+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字及条件判断语句(A?B:C). 2 思路和方法 (1)递归,不能使用if等 ...

  4. 手机网站支付如何接入支付宝简易版支付功能PHP版

    接入支付宝准备工作:(关于账号可以是个体商户也可以是企业账号但必须有营业执照) 1.登录蚂蚁金服开放平台  2.创建应用,应用分类网页应用和移动应用.应用提交审核审核通过后得到Appid才能调用相应的 ...

  5. linux下如何查看一个服务所在的安装路径?

    当接手一个不是自己维护的linux服务器,我们常常会想要看看该服务器上是否安装了某个服务,这个服务安装的路径在哪? redis 是开发过程中常常会用到的一个服务,我这里就以这个服务为例,进行说明. 1 ...

  6. 关于python中的包,模块导入的问题详解(一)

    最近由于初学python,对包,模块的导入问题进行了资料的搜集,查阅,在这里做一个总结: 一: import 模块 在import的过程中发生了什么?我们用一个实验来说明: 以上截图表明:在impor ...

  7. python — 池

    1. 池 池分为:进程池.线程池 池:预先的开启固定个数的进程数/线程数,当任务来临的时候,直接提交给已经开好的进程 / 线程,让这个进程 / 线程去执行就可以了. 池节省了进程.线程的开启.关闭.切 ...

  8. 11.vim常用操作

    :set nu在命令模式下显示行号 进入输入模式 新增 (append) a :从光标所在位置後面开始新增资料,光标後的资料随新增资料向後移动. A:从光标所在列最後面的地方开始新增资料.   插入 ...

  9. 针对Web的信息搜集

    信息收集(Information Gathering),信息收集是指通过各种方式获取所需要的信息,在整个渗透测试环节中,信息搜集是整个渗透过程中最为重要的一环,信息搜集可占据整个渗透测试80%左右的工 ...

  10. vsCode设置代码片段

    输入vue.json { "Print to console": { "prefix": "vv", "body": [ ...