@GetMapping("/list") public String listUsers(Model model) { List<User> users = userService.getAllUsers(); model.addAttribute("users", users); return "user-list"; }
@Service @Transactional public class UserServiceImpl implements UserService {
@Override public void deleteUser(Long id) { Session session = sessionFactory.getCurrentSession(); User user = session.get(User.class, id); if (user != null) { session.delete(user); } } } UserService Interface package com.example.service; import com.example.model.User; import java.util.List;
@Configuration @EnableTransactionManagement public class HibernateConfig { spring mvc with hibernate example
<!-- JSTL --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency>
@GetMapping("/showForm") public String showFormForAdd(Model model) { model.addAttribute("user", new User()); return "user-form"; }
@Override @SuppressWarnings("unchecked") public List<User> getAllUsers() { Session session = sessionFactory.getCurrentSession(); Query<User> query = session.createQuery("FROM User ORDER BY id", User.class); return query.getResultList(); } users = userService.getAllUsers()
@Override protected Class<?>[] getServletConfigClasses() { return new Class[]{WebConfig.class}; }
@GetMapping("/delete") public String deleteUser(@RequestParam("userId") Long id) { userService.deleteUser(id); return "redirect:/users/list"; }
@Repository @Transactional public class UserDAOImpl implements UserDAO { User user = session.get(User.class
@Autowired private SessionFactory sessionFactory;
@Override public void deleteUser(Long id) { userDAO.deleteUser(id); } } UserController.java package com.example.controller; import com.example.model.User; import com.example.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.util.List;
// Getters and Setters public Long getId() { return id; } public void setId(Long id) { this.id = id; }