Buongiorno a tutti, sto implementando un servizio rest per la mia app web, non mi e' chiaro cosa viene gestito dal controller e cosa dal service.. Io solitamente usavo solo i service e facevo tutto li dentro, mi hanno pero' chiesto di implementare controller e service in classi diverse, eventualmente usando anche interfacce.
Se conoscete dei link o riuscite a farmi un esempio di come posso gestire il mio “vecchio” service dividendolo in controller e service mi sareste di grande aiuto!
Allego un esempio di come gestivo i web service nella mia app.
Path("moto")
public class MotoServicesMyBatis {
private static final Logger logger = LoggerFactory.getLogger(MotoServicesMyBatis.class);
// GESTIONE DEL 404, 200
@GET
@Path("/{id}")
@Produces(MediaType.APPLICATION_JSON)
public static Response getById(@PathParam("id") int id) {
SqlSessionFactory sessionFactory = SqlSessionFactoryManager.getSqlSessionFactory();
SqlSession session = sessionFactory.openSession();
try {
MotoMapper motoMapper = session.getMapper(MotoMapper.class);
Moto mb = motoMapper.selectByPrimaryKey(id);
if (mb != null) {
return Response.status(Response.Status.OK).entity(mb).build();
} else {
return Response.status(Response.Status.NOT_FOUND).entity("moto non trovata!").build();
}
} finally {
session.close();
}
}