package com; import com.mysql.jdbc.PreparedStatement; import java.sql.Connection; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; public class DynamicConditionQuertTest { /** * 动态条件查询Users */ public List<Users> queryUser(Users users){ List<Users> list = new ArrayList<>(); Connection connection = null; PreparedStatement ps = null; ResultSet rs = null ; try { //创建链接 connection = jdbcUtill.getConnection(); //拼接查询sql语句 String sql = this.generateSql(users); System.out.println(sql); //创建PreparedStatement对象 ps = (PreparedStatement) connection.prepareStatement(sql); //执行sql rs = ps.executeQuery(); while (rs.next()){ Users users1 = new Users(); users1.setUserid(rs.getInt("userid")); users1.setUserage(rs.getInt("userage")); users1.setUsername(rs.getString("username")); list.add(users1); } }catch (Exception e){ e.printStackTrace(); }finally { jdbcUtill.closeResource(rs,ps,connection); } return list; } /** * 生成动态条件查询sql * @param */ public String generateSql(Users users){ StringBuffer sb = new StringBuffer("select * from users where 1=1"); if (users.getUserid()>0){ sb.append("and userid = ").append(users.getUserid()); } if(users.getUsername()!=null&&users.getUsername().length()>0){ sb.append("and username = '").append(users.getUsername()).append("'"); } if (users.getUserage()>0){ sb.append("and userage =").append(users.getUserage()); } return sb.toString(); } public static void main(String[] args) { DynamicConditionQuertTest dcq = new DynamicConditionQuertTest(); Users users1 = new Users(); users1.setUsername("xiaoming"); users1.setUserage(23); List<Users> list = dcq.queryUser(users1); for (Users users2 :list){ System.out.println(users2.getUserid()+" "+users2.getUsername()+" "+users2.getUserage()); } } }
异常报错
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'username = 'xiaoming'and userage =23' at line 1
我没加限定条件
users1.setUsername("xiaoming"); users1.setUserage(23);
是没报错的,加了反而报错不知道为什么,老师看一下
我用之前的版本的vm也可以不
这个rest的方法可以不放在里面吗,放在外面可以调用吗
这个是为啥
Ajaxdemo.rar
老师我想问下,怎么把代码选中全部注释掉,类似这个样子。
这里不应该是-4px吗,移动本身的一般
老师,为什么我的切换用户后不可以查看文件呢,说是权限不够,可为什么老师的视频上面可以呢
select * from classes where cid = ${cid}
这里为什么要用$
pathspec 'a.txt' did not match any file(s) known to git
为什么报错
老师在视频中把好几行代码选中后注释掉的快捷键是什么
老师,修饰器和语法糖有什么区别,修饰器是不是只能是class类对象才能使用,语法糖就是一个递归函数
老师,我输入docker run -d -p 3306:3306 \ -v /opt/mysql/conf:/etc/mysql/conf.d \ -v /opt/mysql/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=123456 --name my-mysql mysql:5.7后docker ps里面什么都没有
老师这个pidfile 这么写,它自己就会创建这么一个吗?我去到这个目录中看了一下,确实有这个文件。
老师还有一个就是,Redis服务不是在本服务器上吗?为甚么这里使用,命令(./redis-cli )客户端连到redis服务上,显示的ip地址是127.0.0.1,这个ip地址是不是就指的是本机ip地址呢?我网络还没有学完...不太了解...
admin-service启动时报错,yml文件错误。
运行IDEA报错,如图,好像是授权的问题?
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637