Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package br.com.projetotcc.controller; import br.com.projetotcc.dao.ProjetoDao; import br.com.projetotcc.dao.TipoprojetoDao; import br.com.projetotcc.model.Projeto; import br.com.projetotcc.model.TipoProjeto; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import java.util.Locale; import javax.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; /** * * @author leoja */ @Controller @Transactional public class ProjetoController { @Autowired private ProjetoDao projetoDao; @Autowired private TipoprojetoDao tipoDao; Locale locale = Locale.getDefault(); SimpleDateFormat formato_data = new SimpleDateFormat("dd/MM/yyyy", locale); public Date formatarData(String data) { try { return (Date) formato_data.parse(data); } catch (Exception e) { e.printStackTrace(); return null; } } @RequestMapping("/") public ModelAndView index() { ModelAndView modelAndView = new ModelAndView("index"); modelAndView.addObject("projetos", projetoDao.list()); return modelAndView; } @RequestMapping("/projeto") public ModelAndView projeto() { ModelAndView model = new ModelAndView("projeto"); model.addObject("tipos", tipoDao.list()); return model; } @RequestMapping("/novoprojeto") public ModelAndView saveProjeto(HttpServletRequest request) { Projeto projeto = new Projeto(); projeto.setNome(request.getParameter("nome")); projeto.setDescricao(request.getParameter("descricao")); projeto.setData_inicio(formatarData(request.getParameter("data_inicio"))); projeto.setData_fim(formatarData(request.getParameter("data_fim"))); projeto.setTipo(tipoDao.getTipoProjeto(Integer.parseInt(request.getParameter("tipo")))); projetoDao.save(projeto); return new ModelAndView("redirect:"); } @RequestMapping("/detalhesprojeto") public ModelAndView getProjeto(HttpServletRequest request) { ModelAndView model = new ModelAndView("detalhesprojeto"); int id = Integer.parseInt(request.getParameter("id")); model.addObject("projeto", projetoDao.getProjeto(id)); return model; } @RequestMapping("/editarprojeto") public ModelAndView editarProjeto(HttpServletRequest request) { ModelAndView model = new ModelAndView("editarprojeto"); int id = Integer.parseInt(request.getParameter("id")); Projeto projeto = projetoDao.getProjeto(id); List<TipoProjeto> tipos = tipoDao.list(); tipos.remove(projeto.getTipo()); tipos.add(0, projeto.getTipo()); model.addObject("projeto", projeto); model.addObject("tipos", tipos); return model; } @RequestMapping("/updateprojeto") public ModelAndView updateProjeto(HttpServletRequest request) { Projeto projeto = new Projeto(); projeto.setId(Integer.parseInt(request.getParameter("id"))); projeto.setNome(request.getParameter("nome")); projeto.setDescricao(request.getParameter("descricao")); projeto.setData_inicio(formatarData(request.getParameter("data_inicio"))); projeto.setData_fim(formatarData(request.getParameter("data_fim"))); projeto.setTipo(tipoDao.getTipoProjeto(Integer.parseInt(request.getParameter("tipo")))); projetoDao.updateProjeto(projeto); return new ModelAndView("redirect:"); } @RequestMapping("/deleteprojeto") public ModelAndView deleteProjeto(HttpServletRequest request) { int id = Integer.parseInt(request.getParameter("id")); Projeto p = projetoDao.getProjeto(id); projetoDao.deleteProjeto(p); return new ModelAndView("redirect:"); } }