Advertisement
Guest User

Untitled

a guest
Aug 1st, 2016
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.97 KB | None | 0 0
  1. public void addHandler(ResourceHandlerRegistry reg)
  2.  
  3.  
  4. {
  5.  
  6.  
  7. reg.addResourceHandler("/resources**/").addResourceLocations("/resources/");
  8.  
  9.  
  10. }
  11.  
  12.  
  13. @Bean(name = "viewResolver")
  14.  
  15.  
  16. public InternalResourceViewResolver getViewResolver() {
  17.  
  18.  
  19. InternalResourceViewResolver viewResolver = new
  20.  
  21. viewResolver.setPrefix("/WEB-INF/view/");
  22.  
  23.  
  24. viewResolver.setSuffix(".jsp");
  25.  
  26.  
  27. return viewResolver;
  28.  
  29.  
  30. }
  31.  
  32.  
  33. @Bean(name = "dataSource")
  34.  
  35.  
  36. public DataSource getDataSource() {
  37.  
  38.  
  39. // BasicDataSource dataSource = new BasicDataSource();
  40.  
  41.  
  42. BasicDataSource dataSource = new BasicDataSource();
  43.  
  44.  
  45. dataSource.setDriverClassName("com.mysql.jdbc.Driver");
  46.  
  47.  
  48. dataSource.setUrl("jdbc:mysql://localhost:3306/usersdb");
  49.  
  50.  
  51. dataSource.setUsername("root");
  52.  
  53.  
  54. dataSource.setPassword("secret");
  55.  
  56.  
  57. return dataSource;
  58.  
  59. }
  60.  
  61.  
  62. private Properties getHibernateProperties() {
  63.  
  64.  
  65. Properties properties = new Properties();
  66.  
  67.  
  68. properties.put("hibernate.show_sql", "true");
  69.  
  70.  
  71. properties.put("hibernate.dialect",
  72.  
  73. return properties;
  74.  
  75.  
  76.  
  77. }
  78.  
  79.  
  80. @Autowired
  81.  
  82.  
  83. @Bean(name = "sessionFactory")
  84.  
  85.  
  86. public SessionFactory getSessionFactory(DataSource dataSource) {
  87.  
  88.  
  89.  
  90. // LocalSessionFactoryBuilder sessionBuilder = new
  91.  
  92. LocalSessionFactoryBuilder sessionBuilder = new
  93.  
  94. sessionBuilder.addAnnotatedClasses(User.class);
  95.  
  96.  
  97. return sessionBuilder.buildSessionFactory();
  98.  
  99. }
  100.  
  101.  
  102. @Autowired
  103.  
  104.  
  105. @Bean(name = "transactionManager")
  106.  
  107.  
  108. public HibernateTransactionManager getTransactionManager(
  109.  
  110.  
  111. SessionFactory sessionFactory) {
  112.  
  113.  
  114. HibernateTransactionManager transactionManager = new
  115.  
  116. sessionFactory);
  117.  
  118.  
  119. return transactionManager;
  120.  
  121. }
  122.  
  123.  
  124. @Autowired
  125.  
  126.  
  127. @Bean(name = "userDao")
  128.  
  129.  
  130. public UserDAO getUserDao(SessionFactory sessionFactory) {
  131.  
  132.  
  133. return new UserDAOImpl(sessionFactory);
  134.  
  135.  
  136. }
  137.  
  138. public void onStartup(ServletContext servletContext) throws ServletException
  139.  
  140. // TODO Auto-generated method stub
  141. AnnotationConfigWebApplicationContext appContext = new
  142.  
  143. appContext.register(SpringConfig.class);
  144.  
  145.  
  146. ServletRegistration.Dynamic dispatcher = servletContext.addServlet(
  147.  
  148.  
  149. "SpringDispatcher", new DispatcherServlet(appContext));
  150.  
  151.  
  152. dispatcher.setLoadOnStartup(1);
  153.  
  154.  
  155. dispatcher.addMapping("/");
  156.  
  157.  
  158.  
  159. }
  160.  
  161. @Autowired
  162.  
  163.  
  164. private UserDAO userDao;
  165.  
  166.  
  167. @RequestMapping("/")
  168.  
  169.  
  170. public ModelAndView handleRequest() throws Exception {
  171.  
  172.  
  173. List<User> listUsers = userDao.list();
  174.  
  175.  
  176. ModelAndView model = new ModelAndView("UserList");
  177.  
  178.  
  179. model.addObject("userList", listUsers);
  180.  
  181.  
  182. return model;
  183.  
  184.  
  185. }
  186.  
  187.  
  188. @RequestMapping(value = "/new", method = RequestMethod.GET)
  189.  
  190.  
  191. public ModelAndView newUser() {
  192.  
  193.  
  194. ModelAndView model = new ModelAndView("UserForm");
  195.  
  196.  
  197. model.addObject("user", new User());
  198.  
  199.  
  200. return model;
  201.  
  202.  
  203. }
  204.  
  205.  
  206.  
  207. @RequestMapping(value = "/edit", method = RequestMethod.GET)
  208.  
  209.  
  210. public ModelAndView editUser(HttpServletRequest request) {
  211.  
  212.  
  213. int userId = Integer.parseInt(request.getParameter("id"));
  214.  
  215.  
  216. User user = userDao.get(userId);
  217.  
  218.  
  219. ModelAndView model = new ModelAndView("UserForm");
  220.  
  221.  
  222. model.addObject("user", user);
  223.  
  224.  
  225. return model;
  226.  
  227.  
  228. }
  229.  
  230. @RequestMapping(value = "/delete", method = RequestMethod.GET)
  231.  
  232.  
  233. public ModelAndView deleteUser(HttpServletRequest request) {
  234.  
  235.  
  236. int userId = Integer.parseInt(request.getParameter("id"));
  237.  
  238.  
  239. userDao.delete(userId);
  240.  
  241.  
  242. return new ModelAndView("redirect:/");
  243.  
  244.  
  245. }
  246.  
  247. @RequestMapping(value = "/save", method = RequestMethod.POST)
  248.  
  249.  
  250.  
  251.  
  252. public ModelAndView saveUser(@ModelAttribute User user) {
  253.  
  254.  
  255. userDao.saveOrUpdate(user);
  256.  
  257.  
  258. return new ModelAndView("redirect:/");
  259.  
  260.  
  261. }
  262.  
  263. public List<User> list();
  264.  
  265.  
  266. public User get(int id);
  267.  
  268.  
  269. public void saveOrUpdate(User user);
  270.  
  271.  
  272. public void delete(int id);
  273.  
  274. @Autowired
  275.  
  276.  
  277. private SessionFactory sessionFactory;
  278.  
  279.  
  280. public UserDAOImpl() {
  281.  
  282.  
  283.  
  284. }
  285.  
  286. public UserDAOImpl(SessionFactory sessionFactory) {
  287.  
  288.  
  289. this.sessionFactory = sessionFactory;
  290.  
  291.  
  292. }
  293.  
  294. @Transactional
  295.  
  296.  
  297. public List<User> list() {
  298.  
  299.  
  300. // TODO Auto-generated method stub
  301.  
  302.  
  303. @SuppressWarnings("unchecked")
  304.  
  305.  
  306. List<User> listUser = (List<User>) sessionFactory.getCurrentSession()
  307.  
  308.  
  309. .createCriteria(User.class)
  310.  
  311.  
  312. .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY).list();
  313.  
  314.  
  315. return listUser;
  316.  
  317.  
  318. }
  319.  
  320.  
  321. public User get(int id) {
  322.  
  323.  
  324. // TODO Auto-generated method stub
  325.  
  326.  
  327. String hql = "from User where id=" + id;
  328.  
  329.  
  330. Query query = sessionFactory.getCurrentSession().createQuery(hql);
  331.  
  332.  
  333.  
  334. @SuppressWarnings("unchecked")
  335.  
  336.  
  337. List<User> listUser = (List<User>) query.list();
  338.  
  339.  
  340.  
  341. if (listUser != null && !listUser.isEmpty()) {
  342.  
  343.  
  344. return listUser.get(0);
  345.  
  346.  
  347. }
  348.  
  349.  
  350.  
  351. return null;
  352.  
  353.  
  354. }
  355.  
  356.  
  357. @Transactional
  358.  
  359.  
  360. public void saveOrUpdate(User user) {
  361.  
  362.  
  363. // TODO Auto-generated method stub
  364.  
  365.  
  366. sessionFactory.getCurrentSession().saveOrUpdate(user);
  367.  
  368.  
  369. }
  370.  
  371.  
  372. public void delete(int id) {
  373.  
  374.  
  375. // TODO Auto-generated method stub
  376.  
  377.  
  378. User userToDelete = new User();
  379.  
  380.  
  381. userToDelete.setId(id);
  382.  
  383.  
  384. sessionFactory.getCurrentSession().delete(userToDelete);
  385.  
  386.  
  387. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement