Java 仅使用servlet和JSP将表单参数绑定到bean-可能吗?
我正在使用Servlet和JSP,但没有一个框架来研究我的SCWCD。我有一个简单的表单,希望参数自动绑定到bean。这在不编写绑定代码或使用框架的情况下是可能的吗Java 仅使用servlet和JSP将表单参数绑定到bean-可能吗?,java,jsp,servlets,javabeans,Java,Jsp,Servlets,Javabeans,我正在使用Servlet和JSP,但没有一个框架来研究我的SCWCD。我有一个简单的表单,希望参数自动绑定到bean。这在不编写绑定代码或使用框架的情况下是可能的吗 谢谢不,不是。你应该使用一些框架,我想这可能是一种过分的做法 因此,您可以做的是迭代request.getParameterMap()键,并使用相应的字段名(通过反射)将值设置为object您可以使用执行此操作 将设置名称与请求参数名称匹配的所有bean属性(如果有的话),并且bean将作为servlet中与/servletUr
谢谢不,不是。你应该使用一些框架,我想这可能是一种过分的做法
因此,您可以做的是迭代
request.getParameterMap()
键,并使用相应的字段名(通过反射)将值设置为object您可以使用
执行此操作
将设置名称与请求参数名称匹配的所有bean属性(如果有的话),并且bean将作为servlet中与/servletUrl
的url模式匹配的请求属性可用
然而,您希望使用servlet和/或MVC框架来实现这一点,因为它将所有内容抽象出来,并提供对操作和响应处理的更好控制。这本质上是滥用JSP(作为一种视图技术)作为控制器(应该由Servlet直接完成)。好吧,没有“框架”,你就无法做到这一点。但是您可以使用Jakarta BeanUtils(),更准确地说是servlet中的静态方法BeanUtils.populate
。例:
BeanUtils.populate (myBean, request.getParameterMap());
请记住:输入属性名称必须与bean属性匹配,好吗?谢谢,简单且很好。Fulvius answer提供了一种替代方法,无需直接使用反射。
BeanUtils.populate (myBean, request.getParameterMap());