我在这里最关心的是Managed bean。 他们是M还是C?
人们看起来像这样的人是M:
@ManagedBeanpublic class Bean { private String username; // +getter+setter private String password; // +getter+setter @Resource private DataSource dataSource; public void login() { try ( Connection connection = dataSource.getConnection(); PreparedStatement statement = connection.prepareStatement("SELECt * FROM User WHERe username = ? AND password = MD5(?)"); ) { statement.setString(1, username); statement.setString(2, password); try (ResultSet resultSet = statement.executeQuery()) { if (resultSet.next()) { // Login. } } } } // ...}
但是,当他们看起来像这样时,他们会认为它们是C:
@ManagedBeanpublic class Bean { private User user // +getter @EJB private UserService userService; public void login() { if (userService.find(user) != null) { // Login. } } // ...}
您发现的MVC答案中也提到了这一点:
请注意,一些入门者,甚至某些(非常基础的)教程都将受管Bean中的实体属性混合/复制/展平,这将有效地使控制器成为模型。不用说这是较差的设计(即不是干净的MVC设计)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)