如何在jsp中将复选框内容写入数据库

如何在jsp中将复选框内容写入数据库,第1张

首先明白在这里复选框有两个关键属性,1、name。2、value。

用两个JSP来做

第一个页面多个复选框name值保持一致,这样才构成一组,放在表单里。提交到另外一个JSP页面后用request.getParameterValues()得到这个组value值组成的集合。所以getParameterValues返回的是一个String[]。然后把String[]的值保存到数据库

注:request.getParameterValues()参数是name的值

大概是这样使用的!需要适当的修改!(上次有点问题!被修改了)

StringBuffer

sb=new

StringBuffer()

if

(interest1

!=

null){

sb.append("interest1")

}

if

(interest2

!=

null){

sb.append("interest2")

}

if

(interest3

!=

null){

sb.append("interest3")

}

if

(interest4

!=

null){

sb.append("interest4")

}

if

(interest5

!=

null){

sb.append("interest5")

}

下面用预编译语句

String

sql="insert

into

users(interest)

values(?)"

PreparedStatement

pstmt=conn.prepareStatement(sql)

pstmt.setString(1,sb.toString())

pstmt.execute()

首先在JSP页面的数据库处理部分使用:try {statement(.....)}catch(SQLException e) {1、像上面的语句中,我不知道是复制过来的还是写错了:String sql=insert into tb_member values('+income+')很明显右边少了一个引号:String sql=insert into tb_member values('+income+')2、抛出异常中可能说明是违反主键约束:查看数据库表,将次主键约束暂时删除。3、抛出异常可能说明字符串被截断,说明你定义的char类型太短,一般向这样的字段保持定义在varchar(20)左右。4、本来还有可能是类型不匹配或指定参数太多或不够等,但就你题目中描述,只有一个字段就能出现这样的异常了。出于个人开发经验的一点点建议:以后连接数据库不要这样去连接,尽量使用Bean去完成,不然程序很混乱,以后维护非常困难。对数据库的 *** 作不要显示地去指定参数和表,尤其是参数,可以使用预处理方式,多步骤连贯 *** 作,可以使用事务来达到数据 *** 作的原子性,当然某些也可以通过数据库的事务去完成。多步骤的非连贯信息的 *** 作可以使用JDBC 3.0提供的批处理方式去完成以提高对数据库的批量访问成10倍得提高效率。像在做通用模板的时候,对数据库的表的指定的动态赋予的,当然对其某些字段的 *** 作也是动态的,那么数据库类型和参数的个数也是动态的,如果用上述过程去完成非常困难。尤其还要对一些数据库内部的空值异常进行处理。1、公司数据没有改变,就改变报表的样式。2、公司报表总数没有变,某些报表数据有增加或删除的现象。3、公司的报表有增加。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9986710.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存