Java MVC-检查密码输入是否正确

Java MVC-检查密码输入是否正确,java,servlets,model-view-controller,Java,Servlets,Model View Controller,我是MVC新手,目前正在使用servlet为Web应用程序创建后端。我听说所有的处理都必须进入模型 因此,在我的模型中,我从数据库获取数据,并将其与从请求对象获取的值进行比较 现在我的一个同伴说,这个逻辑属于身份验证,因此必须进入控制器 我现在很困惑,希望有人能帮我弄清楚该功能到底放在哪里。模型或控制器 提前欢呼。模型是数据本身,在本例中是“用户”或“密码”类 在我看来,正确的位置是控制器:它检查数据是否正确(密码、出生日期等) 通过这种方式,您可以使用不同的逻辑重用您的模型,而无需更改“Use

我是MVC新手,目前正在使用servlet为Web应用程序创建后端。我听说所有的处理都必须进入模型

因此,在我的模型中,我从数据库获取数据,并将其与从请求对象获取的值进行比较

现在我的一个同伴说,这个逻辑属于身份验证,因此必须进入控制器

我现在很困惑,希望有人能帮我弄清楚该功能到底放在哪里。模型或控制器

提前欢呼。

模型是数据本身,在本例中是“用户”或“密码”类

在我看来,正确的位置是控制器:它检查数据是否正确(密码、出生日期等)

通过这种方式,您可以使用不同的逻辑重用您的模型,而无需更改“User”类。例如,您可以添加一个简单的“最大重试次数”系统,并将用户类保留为原始类


但是如果您想阻止ajax调用,那么模型只是一个描述与DB相关的实体的类。您不应该使用此类来实现CRUD操作。您需要使用DAO(仅对特定类执行crud操作的类)和使用此DAO查询db的控制器(您的servlet)

道有如下方法

public void save(entity entity);
public Entity loadById(Long id);
etc etc...
你必须这样想: 当您必须执行与Bean行为密切相关的操作(例如,计算购物车中Bean的总价)时,您可以在模型类(始终由控制器调用)中实现此函数(方法)。 所有其他功能应在管理的控制器中实现 功能逻辑

您必须区分模型类、控制器类、视图类和持久性类(针对CRUD的DAO)

可能的重复请看本文: