// 4. REST API using Jersey @Path("/api/users") public class UserResource
@GET @Produces(MediaType.APPLICATION_JSON) public List<User> getUsers() return userService.getAllUsers();
public static Connection getConnection() throws SQLException return dataSource.getConnection(); java server programming black book pdf
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException (session != null && session.getAttribute("user") != null)) chain.doFilter(req, res); else response.sendRedirect("login.html");
// 5. Filter for Authentication @WebFilter("/*") public class AuthFilter implements Filter getUsers() return userService.getAllUsers()
HttpSession session = req.getSession(); String username = req.getParameter("username"); String password = req.getParameter("password"); if (authenticate(username, password)) session.setAttribute("user", username); session.setMaxInactiveInterval(1800); // 30 minutes resp.sendRedirect("dashboard.jsp"); else resp.sendRedirect("login.html?error=true");
static HikariConfig config = new HikariConfig(); config.setJdbcUrl("jdbc:mysql://localhost:3306/mydb"); config.setUsername("root"); config.setPassword("password"); config.setMaximumPoolSize(10); dataSource = new HikariDataSource(config); public void doFilter(ServletRequest req
// 3. Database Connection Pool public class DatabasePool private static HikariDataSource dataSource;