2017-07-17 72 views
0

我目前正在学习和学习webb应用程序开发,我必须建立一个电子商务网站作为最终的项目。Java Bean简单注册表格

我从注册服务开始,将注册表中的多个数据传递给使用javabean完成用户插入数据库的jsp。这样

<form action="process.jsp"> 
    <input type="text" name="Nome" value="Nome..." onclick="this.value=''"/> 
    <br/> 
    et cetera... 

在process.jsp东西但是我必须初始化我的豆istance与我的Java类的所有制定者

<%@page import="blogics.UserService"%> 
<jsp:useBean id="user" class="bflows.UserManagement"/> 
<jsp:setProperty property="*" name="user"/> 
<% 
    user.setNome(request.getParameter("Nome")); 
    user.setCognome(request.getParameter("Cognome")); 
    et cetera... 

然后,我打电话给我的方法插入用户数据库,甚至如果一切工作正常(我甚至有我的数据库中的条目)我仍然有疑惑,因为我从来没有见过这样的代码,我觉得我失去了一些非常重要的东西,但我不知道什么。

+0

我爱你说的那部分“我从来没有见过这样的代码”。确实,这是一个不推荐的模式,不能用于基于Java的Web应用程序开发。您必须避免使用scriptlet。我建议你通过Kathy Sierra获得第一个servlet和jsp。这将为您在基于Java的Web应用程序开发方面提供良好的基础。 – Perry

+0

好吧,谢谢你,我想我会按照你的建议;与“从未见过这样的代码”我的意思是我寻找不同的例子在网上注册之前发布,仍然没有人像我这样的代码,我想知道为什么,而不是简单的复制/粘贴。 – Cholas

+0

好的。现在我明白了。您在网上看到的大多数代码看起来都不一样,因为大多数开发人员现在都使用Web框架。例如,Anshul下面给出的答案是基于spring框架的。直到你还没有深入掌握jsp和servlet,我不会建议你采用框架的用法。我推荐这本书的原因。 – Perry

回答

0

我建议你应该避免在你的jsp文件中写入java代码。这是我的建议。

第1步:创建一个POJO类

Class User { 

    private String name; 
    //setters and getters for your other form fields 
} 

第2步:制作一个控制器可以发布您的形式

@RequestMapping('/register') 
Class RegistrationController(@ModelAttribute User user) { 
    String name = user.getName(); 
    // In the same way you can get your other form fields 
    // Now you can send these details to the database 
} 

第3步:在JSP文件中保持你的字段相同的名称如果在POJO类中,例如:如果在POJO类中的字段名称是userName,那么在jsp文件中它将是相同的,name =“userName”

<form action="/register" method="POST"> 

    <!-- This name should be same as defined in the POJO class --> 
    <input type="text" name="name" /> 
</form>