У меня есть пользовательский интерфейс с операциями создания, обновления, удаления и выбора, поэтому для этого я подумал о том, чтобы спроектировать его с помощью шаблона команд
MyServlet
public void doGet(HttpServletRequest req,HttpServletResponse res)
throws ServletException,IOException
{
InsertCommand insertCommnd = new InsertCommand();
DeleteCommand deleteCommnd = new DeleteCommand();
// Создать сотрудника DTO с параметрами запроса и передать его invoker
if(req.getParameter("action").equals("insert"))
Invoker invoker = new Invoker();
invoker.setCommand(insertCommnd );
invoker.pressButton(emp);
}
// * Invoker *
public class Invoker
{
private Command command;
public void setCommand(Command command)
{
this.command = command;
}
public void pressButton(Employee emp)
{
command.execute(emp);
}
}
// Команда .java
public interface Command
{
public void execute();
}
DeleteCommand .java
public DeleteCommand implements Command
{
Employee emp;
public DeleteCommand(Employee emp)
{
this.emp = emp;
}
public void execute()
{
// SQL Query to delete Records
}
}
InsertCommand.java
public InsertCommand implements Command
{
Employee emp ;
public InsertCommand(Employee emp)
{
this.emp = emp;
}
public void execute()
{
// SQL Query to insert Records
}
}
Аналогично, есть команда Обновить записи
У меня вопрос, как я могу справиться с этим в случае операций выбора, когда он возвращает ArrayList из базы данных?
Также, пожалуйста, поделитесь своими идеями по этому дизайну, так как я новичок в разработке программного обеспечения.