gpt4 book ai didi

java - 设计带有/不带有特定类实现的接口(interface)

转载 作者:行者123 更新时间:2023-12-02 00:26:06 25 4
gpt4 key购买 nike

好的,我正在设计一个网络应用程序。所以我要创建 Controller ,首先我使用此方法签名创建接口(interface)。

public String user(String code);

在实现中我使用的是spring,因此为了返回值,需要传递第二个参数来存储值,如下所示。

public String user(Model model, String code){
String name = userservice.findUserName(code);

model.addAttribute(name);
return "userView";
}

好的,正如您所看到的,存在一个问题,因为我的实现类没有重写接口(interface)中的方法,但我不想向接口(interface)项目添加参数和依赖项,因为我想要接口(interface)(设计)保持技术中立。

希望有人能给我一些建议。谢谢。

最佳答案

我建议你看一些example Spring MVC apps了解编码约定等。

Controller 不倾向于写入接口(interface) - 无论如何我从未见过这样做。你希望你的服务和 DAO 类是这样的。

因此,用户方法的代码看起来像经典的服务层,尽管命名约定通常更像 getUsergetUserForId。因此,如果您从 Controller 调用此函数,则不必担心 Model 参数,如下所示:

model.addAttribute("user", userService.getUserForId(code));

其中 userService 定义为:

@Inject
UserService userService;

UserService是接口(interface),userService由Spring/IoC容器自动注入(inject)实现。

关于java - 设计带有/不带有特定类实现的接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10018988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com