Я пытаюсь создать систему токенов для моего веб-сервиса REST API, используя Maven / Jersey.
Это код, который я написал до сих пор:
public class Servlet extends HttpServlet{
private Connection con;
private Statement stmt;
private String sql;
Profiles pProfile;
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{
try {
resp.setContentType("application/json");
String mandant = req.getParameter("mandant");
String werk = req.getParameter("werk");
int personalnummer = Integer.parseInt(req.getParameter("personalnummer"));
getProfileFromDatabase(personalnummer);
if (pProfile.getMandant() == mandant && pProfile.getWerk() == werk && pProfile.getPersonalnummer() == personalnummer) {
HttpSession session = req.getSession();
session.setAttribute("mandant", mandant);
session.setAttribute("werk", werk);
session.setAttribute("personalnummer", personalnummer);
}
} catch(Exception exp) {
exp.printStackTrace();
}
}
public Profiles getProfileFromDatabase(long personalnummer) {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/userdatenbank?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT", "root", "adminadmin123");
stmt = con.createStatement();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
pProfile = new Profiles();
try {
sql = "select * from profiles where personalnummer=" + personalnummer;
ResultSet res = stmt.executeQuery(sql);
if (res.next()) {
pProfile.setPersonalnummer(res.getInt(1));
pProfile.setWerk(res.getString(5));
pProfile.setMandant(res.getString(6));
}
stmt.close();
res.close();
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
return pProfile;
}
Но я не знаю, что мне с ним делать сейчас ... У меня есть класс Resource, который обрабатывает все Http-запросы вроде @GET @POST @PUT ... но я не знаю, как реализовать это сейчас, чтобы пользователь получал идентификатор сеанса при входе в мое приложение.
Может быть, кто-нибудь может мне помочь!