在整合框架里,想用接口实现类实现模糊查询!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在整合框架里,想用接口实现类实现模糊查询!相关的知识,希望对你有一定的参考价值。

我想接口实现类里实现一个模糊查询。我知道应该用like来实现,但是我不知道具体该怎么写,那位大虾能教我写写。
我想实现的是memberInfo表里的memberID,loginID两个字段查询的。就是根据会员ID或者登陆账号,来查询会员记录,该怎样写呢??

我这有个分页模糊查询的例子,给你看看
按‘spmch’(商品名称)模糊查询并分页,PageBean类是一个分页的javabean:
你重点需要看的就是:" FROM spkfk where spmch like '%"this.spmch"%' Order by spid)a order by spid desc) b order by spid"
这一段!

public List<GoodsBean> getInfo(PageBean page, String spmch)
throws ClassNotFoundException, SQLException
int onepagesize;
int max;
Connection conn = null;
PreparedStatement ps = null;
String url = "jdbc:sqlserver://localhost:1433;databaseName=st_ccerp";
String username = "sa";
String password = "";
String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver"; List<GoodsBean> list = new ArrayList<GoodsBean>();
onepagesize = page.getONEPAGESIZE();
int offset = page.getOffset();
max = offset + onepagesize;
ResultSet rs = null;

try
Class.forName(driver);
conn = DriverManager.getConnection(url, username, password);
String sql = " spid,spmch,shpchd,shpgg,shiyzh,chuffl,leibie ";
String sql2 = null;
this.spmch = spmch;
if (spmch != null && spmch.length() != 0)
sql2 = (new StringBuilder("SELECT "))
.append(sql)
.append(" FROM ( SELECT Top ")
.append(onepagesize)
.append(sql)
.append(" FROM (SELECT Top ")
.append(max)
.append(sql)
.append(" FROM spkfk where spmch like '%")
.append(this.spmch)
.append(
"%' Order by spid)a order by spid desc) b order by spid")
.toString();
else
sql2 = (new StringBuilder("SELECT "))
.append(sql)
.append(" FROM ( SELECT Top ")
.append(onepagesize)
.append(sql)
.append(" FROM (SELECT Top ")
.append(max)
.append(sql)
.append(" FROM spkfk ")
.append(
" Order by spid)a order by spid desc) b order by spid")
.toString();
ps = conn.prepareStatement(sql2);
rs = ps.executeQuery();
while (rs.next())
list.add(new GoodsBean(rs.getString(1), rs.getString(2), rs
.getString(3), rs.getString(4), rs.getString(5), rs
.getString(6), rs.getString(7)));


finally
if (ps != null)
ps.close();
if (conn != null)
conn.close();

return list;
参考技术A 就以Struts+Hibernate+Spring整合来说吧!
第一步你得获得页面输入的memberID,loginID两个字段,这很简单,renquest就OK了,获得以后你可以把这俩字段放到Hibernate实体类中(最好是自己建个查询的DTO)传到Service中,在Service中在把这俩取出来,拼个SQl就行了
例如:select * from table where memberID like ‘%memberID%’
参考技术B select * from memberInfo where memberID like '%你的输入值%' or loginID like '%你的输入值%'
还应该做一些必要的转码工作 如果只是单纯的用上面的SQL 会有出现很大的问题 例如 在页面上指输入一个 ‘ 号 那么程序就会出现异常。
参考技术C select * from memberInfo where memberID like '%你的输入值%' or loginID like '%你的输入值%'

spring-boot整合SSM框架

1.整合spring-MVC拦截器

  1.编写拦截器(实现HandlerInterceptor接口)

  2.编写配置类实现WebMvcConfigurer,在该类中添加各种组件。

    a.注册拦截器

    b.添加拦截器到spring mvc 拦截器里


2.整合事物和连接池

  1.事物配置

    a.添加事物相关的启动器依赖,mysql相关依赖

    b.编写业务类Service使用事物注解@Transactional

  2.数据库连接池hlkari配置

    只需要在application配置文件中指定数据库相关参数

 

3.整合Mybatis

  1.添加启动器依赖

  2.配置Mybatis:实体类别名包,日志,映射文件等

  3.配置MapperScan

 

4整合通用Mapper

  为什么要整合通用mapper?

  可以实现自动拼接sql语句;所有的mapper接口都不需要编写任何方法也就是不用编写sql语句。可以提高开发效率

  1.添加启动器依赖

  2.改造Mapper继承通用Mapper接口

  3.修改启动引导类Application中的Mapper扫描注解 

  4.修改实体类添加jpa注解

  5.改造service层实现业务

 

整合Junit

  1.添加启动器依赖

  2.编写测试类

 

整合redis

  1.添加启动器依赖

  2.配置applacation.yml中修改redis 的连接参数(redis需要启动)

 

 

 

 

 

 

 

    

    

  

以上是关于在整合框架里,想用接口实现类实现模糊查询!的主要内容,如果未能解决你的问题,请参考以下文章

使用reusltMap实现高级映射,工具类,别名,多条件查询以及模糊查询

SpringBoot整合ElasticSearch实现模糊查询,批量CRUD,排序,分页,高亮

jqgrid表格里面的下拉框能不能实现模糊查询

mybitis实现增,删,改,查,模糊查询的两种方式:

java如何实现异步模糊查询

thinkphp 5 及一下或php项目里实现模糊查询