我想从/ Spring应用程序中查询PostgreSQL数据库中的PostgreSQL jsonb列。
尽管所有文档都具有相同的结构,但事先并不知道jsonb文档的结构。jsonb列中的文档结构在数据库表中描述。
应用程序从数据库中获取jsonb文档结构描述。下一步是对jsonb数据运行分析查询。
由于在开发时不知道jsonb数据的结构,所以必须动态地组装分析查询。如何在不手动连接字符串的情况下在Java代码中创建查询?
我担心手工组装查询将是复杂的、不可读的,并且可能会创建SQLi漏洞。
发布于 2017-05-01 01:25:59
如果需要从存储在其他表中的元数据动态构建SQL查询,则必须使用字符串连接来构建SQL。
我赞赏您注意到并关注SQL注入漏洞,但这只是在使用用户提供的值时才关心的问题。
如果元数据被保证是安全的,那么您可以安全地使用该元数据来动态构建SQL语句。如果元数据是由用户输入的,即它是用户提供的,那么您有三个选择:
?参数标记和赋予PreparedStatement对象的实际值插入到SQL中。https://stackoverflow.com/questions/43713032
复制相似问题