我如何使用 URL 中的所有参数在 Spring MVC 中进行一个动态查询? 例如:/example?parameter1=test¶meter2=apple;fruit¶meter3=Park
对于该链接,我希望有这样的查询:SELECT * FROM news WHERE parameter1 = test AND parameter2 = apple AND fruits AND parameter3 = Park
同时如果我有这样的 URL /example?parameter1=test¶meter2=apple
我不想在诸如 SELECT * FROM news WHERE parameter1 = test AND parameter2 = apple;
更确切地说,我如何创建一个动态查询如何自动更改来自 URL 的参数的功能?
请您参考如下方法:
将动态数据传递给查询不是一个好主意,这肯定会引起 SQL 注入(inject)攻击。
您可以在 Spring JDBC 中使用 BeanPropRowMapper ( http://www.mkyong.com/spring/spring-jdbctemplate-querying-examples/ ) 和准备语句类型的方法(命名参数 http://www.studytrails.com/frameworks/spring/spring-jdbc-template-named-params.jsp )来实现类似但类型化的查询。 (你的 Java Bean getter 和 setter 被自动调用,查询从中更新)
不要写动态查询(保持严格类型化)