spring mvc 中需要什么服务层?推荐什么样的逻辑?

1 java spring-mvc

(但据我所知,它是中介黑白控制器和 DAO 层。)或者我们可以直接在控制器中获取 dao 依赖项吗?这是一个很好的做法吗???? 正如我下面所示

@Controller
public class HomeController {   

    // @Autowired
    // private UserServiceImpl userService;
    @Autowired
     private UserDAOImpl userDAOService;

   @RequestMapping(value = "login", method = RequestMethod.GET)
public String login(..){
   // String res = userService.someOperation();
      String res = userDAOService.someOperation(); 
      ............
         }
   }
Run Code Online (Sandbox Code Playgroud)

小智 6

我们需要服务层的一个很好的原因是为了松散耦合:

假设您的控制器类中有 100 个 api,并且有 20 个为它们提供服务的 dao 方法。

现在,如果您直接在控制器中调用 dao 方法,并且稍后您希望有不同的 dao 方法为这些控制器提供服务。

您必须更换所有 100 个控制器,对吗?

因此,如果有 20 个服务方法调用这 20 个 dao 方法。

现在,如果您想更改为这 100 个控制器提供服务的 dao 方法,您只需更改服务方法(即 20 个方法)以指向新的 doa 方法,而不是更改您的 100 个控制器类。

这就是实现松散耦合的方法,也是一种更好的编程方式。希望这对您有帮助:)