成功解决html中input文本栏长度不等和JavaBean封装失败的问题

问题一演示

在这里插入图片描述
细心的朋友会发现密码那一栏的长度比其他文本栏的长度要短一些,这是因为其他地方的type都是text,那么如何解决呢,很简单,在input内容中添加style="width:160px"就可以完美解决

我的代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Register</title>
</head>
<body>
	<form name = "reg" action="/JavaBean_re/BeanUtilsServlet" method="post">
	<table>
		<tr>
			<td>用户名:</td>
			<td><input name="name" type="text" style="width:160px"/></td>
		</tr>
		<tr>
			<td>年龄:</td>
			<td><input name="age" type="text" style="width:160px"/></td>
		</tr>
		<tr>
			<td>密码:</td>
			<td><input name="password" type="password" style="width:160px"></td>
		</tr>
		<tr>
			<td>验证码:</td>
			<td><input type="text" name="formCode" style="width:160px"></td>
		</tr>
		<tr>
			<td colspan="2" align="center">
			<input type="submit" name="submit" value="提交" id="bt" style="width:160px"/>
			</td>
			</tr>
	</table>
	
	</form>
</body>
</html>

结果美丽:
在这里插入图片描述

问题二演示

在这里插入图片描述
问题有很多种,这里我挑个特例讲讲。

第一类:比方说表单的属性和实际类中定义的属性不能完全一一匹配,如图

  • BeanUtilsServlet.java
    在这里插入图片描述

  • Person.java
    在这里插入图片描述

  • login.html
    在这里插入图片描述
    input里还包含了密码、验证码这两个Person里不包含的属性,因此用populate()进入网页提交后会报错

第二类:提交选项里有name属性

在这里插入图片描述
把这个name属性删掉即可,然后重新加载服务器,再登录试试
在这里插入图片描述
OK,完美解决!
在这里插入图片描述
总结一下,要想把提交的表单数据封装到JavaBean对象里面,就要求表单name属性的值必须和JavaBean属性名称一一对应!

之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值