我想知道将HTML内容存储在数据库中是否被认为是不好的做法,或者它是否不安全。
我希望在我的系统中实现多个表单,这些表单将具有不同的字段并且可以定期更改。我想知道创建每个表单的独特布局并将它们存储在我的数据库中是不是不好的做法。用户无法修改表单,向表单提交HTML或创建自己的表单而不会破坏我们的数据库。然后,在将数据提交到为每个表单创建的数据库表之前,我将获取用户提交的数据并对其进行特殊字符验证。我的计划是遍历请求参数,拉出键值对,并将验证的列表发送到存储过程或准备好的语句。字段名称与数据库中的列名称具有相同的名称或类似名称。为了确保我有正确的订单,我会将信息存储在MAP中,这样我就不需要希望信息不会以某种方式移动。
HTML页面将与从客户端提交数据所需的SQL一起存储在数据库中的clob中。我可能只存储数据需要提交的表名,并在其周围构建语句。
示例:
String tableName = "Form1"; //pulled from the database
String sqlLayout = "INSERT INTO ? ("+/*dynamically generated ? based on MAP keys*/+ ") VALUES ("+ /*dynamically generated ? based on MAP values*/ +")";
//Then proceed to fill in ? in the standard prepared statement way.
要将clob加载到客户端页面,我将在JSP中的div上使用jQuery的.load()。
我使用的JavaEE应用程序每年只发布一次。
答案 0 :(得分:0)
主要关注的是维护。如果更改数据库列,则必须编辑存储表单和相应SQL代码的数据库记录的内容。
黑客不是问题。如何将表单呈现到页面中并不重要。最后它还是HTML代码。
我会把它存储为doveyg提到的文本文件,html片段或JSON文件。