OK, mas como eu já iniciei o curso de servlets 2, o código
está de acordo com a primeira aula desse curso.
package br.com.my.gerenciador.modelo;
"importes"
public class DataBase {
private static List<Empresa> lista = new ArrayList<>();
private static Integer key = 1001;
public void adiciona(Empresa e) {
lista.add(e);
e.setId(key++);
}
public List<Empresa> getEmpresas(){
return lista;
}
public void remover(Integer id) {
Iterator<Empresa> it = lista.iterator();
while (it.hasNext()) {
Empresa empresa = it.next();
if(empresa.getId() == id)
it.remove();
}
}
public Empresa catCompany(Integer id) {
for (Empresa empresa : lista) {
if(empresa.getId() == id)
return empresa;
}
return null;
}
}
Nessa classe que o professor chamou de Banco eu decidi
não colocar as empresas estáticas.
package br.com.my.gerenciador.servlet;
"importes"
/**
* Servlet implementation class ServletMaster
*/
@WebServlet("/login")
public class ServletMaster extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String açao = request.getParameter("action");
if(açao.equals("CompanyList")) {
ListarEmpresas listar = new ListarEmpresas();
listar.executarListar(request, response);
}
else if(açao.equals("DeleteCompany")) {
DeletarEmpresas delete = new DeletarEmpresas();
delete.executarDeletar(request, response);
}
else if(açao.equals("ShowCompany")) {
MostrarEmpresas show = new MostrarEmpresas();
show.executarMostrar(request, response);
}
else if(açao.equals("EditCompany")) {
EditarEmpresa edit = new EditarEmpresa();
edit.executarEditar(request, response);
}
else if(açao.equals("CreateCompany")) {
CriarEmpresa create = new CriarEmpresa();
create.executarCriar(request, response);
}
}
}
Esse é o único servlet que o professor ensina no curso de
servlets 2.
A seguir todas as ações que antes eram servlets:
package br.com.my.gerenciador.tarefas;
"importes"
public class CriarEmpresa {
public void executarCriar(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
String Companyname = request.getParameter("nome");
String Companydate = request.getParameter("data");
Date ofCreation = null;
try {
SimpleDateFormat fdate = new SimpleDateFormat("dd/MM/yyyy");
ofCreation = fdate.parse(Companydate);
} catch(ParseException ex) {
throw new ServletException(ex);
}
Empresa e = new Empresa();
e.setNome(Companyname);
e.setData(ofCreation);
DataBase db = new DataBase();
db.adiciona(e);
request.setAttribute("empresa", e.getNome());
response.sendRedirect("login?action=CompanyList");
System.out.println("New company created");
}
}
package br.com.my.gerenciador.tarefas;
"importes"
public class DeletarEmpresas {
public void executarDeletar(HttpServletRequest request, HttpServletResponse response)
throws IOException {
String paramid = request.getParameter("id");
Integer id = Integer.valueOf(paramid);
DataBase base = new DataBase();
base.remover(id);
response.sendRedirect("login?action=CompanyList");
System.out.println("Deleting the company");
}
}
package br.com.my.gerenciador.tarefas;
"importes"
public class EditarEmpresa {
public void executarEditar(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String newCompanyName = request.getParameter("nome");
String newCompanyDate = request.getParameter("data");
String paramid = request.getParameter("id");
Integer id = Integer.valueOf(paramid);
Date ofChange = null;
try {
SimpleDateFormat fdate = new SimpleDateFormat("dd/MM/yyyy");
ofChange = fdate.parse(newCompanyDate);
} catch(ParseException ex) {
throw new ServletException(ex);
}
DataBase base = new DataBase();
Empresa emp = base.catCompany(id);
emp.setNome(newCompanyName);
emp.setData(ofChange);
response.sendRedirect("login?action=CompanyList");
System.out.println("Changing company's datas");
}
}
package br.com.my.gerenciador.tarefas;
"importes"
public class ListarEmpresas {
public void executarListar(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
DataBase db = new DataBase();
List<Empresa> list = db.getEmpresas();
request.setAttribute("empresas", list);
RequestDispatcher resq = request.getRequestDispatcher("/companiesList.jsp");
resq.forward(request, response);
System.out.println("Listing companies");
}
}