首页 > 解决方案 > 使用java将复选框数据从html表单插入到sql

问题描述

我有一个简单的表单,它将StudentId作为文本并使用HTML中的复选框选择最喜欢的汽车。

现在,我想用 Java 创建一个servlet,它从这个表单中获取值并存储在 MySql 数据库中。

<form action="/servlet">
    <label>Student Id : </label><input type="text" name"sid"></br>
    <label>Cars : </label></br>
        <input type="checkbox" name="cars" value="BMW">
        <input type="checkbox" name="cars" value="Mercedes">
        <input type="checkbox" name="cars" value="Hyundai">
        <input type="checkbox" name="cars" value="Toyota">
    <input type="submit" value="Submit">
</form>

我困惑的一点是如何在MySql中插入这个复选框“ Cars ”的数据?

我可以在变量中获取数组

String[] cars = request.getPrameterValues("cars");

但是如何将这个数组存储在 MySql 中名为cars的列中。

这个东西在No-Sql中很容易实现

起初,我想制作一个逗号分隔值的字符串并简单地将其存储在列中,但在检索时,这将是很多代码。所以,我想知道是否有其他更好的方法来实现这一点。

标签: javamysqlformsservlets

解决方案


我觉得你的逻辑不正确,为什么?

通常这些数据应该存储在数据库中,然后为了显示它们,你调用你的表并以 HTML 显示结果。但是在您的情况下,您对 IHM 进行编码并且想要填充数据库,这是不正确的。

所以要解决这个问题,在你的数据库中创建一个名为 car 或 model 的表,用不同的信息填充它,每辆汽车都应该是原始的。并且不要使用数据库中的数组来操作汽车,这不是一个好习惯。


推荐阅读