Строка запроса принимает дополнительный символ при передаче его в href на странице jsp - PullRequest
0 голосов
/ 08 февраля 2019

Я передаю параметр в строке запроса в href в JSP.поэтому после того, как я нажимаю на ссылку, она дает дополнительный символ вместе со значением параметра.

String s="approved";
String activationcode=request.getParameter("activationcode");
if(activationcode!=null)
{
try
{
    Class.forName("oracle.jdbc.driver.OracleDriver");  
    Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","system","up78cp5317");  
    Statement stmt=con.createStatement();   
    stmt.execute("update (select Approval.status as st from Approval join Activity on Activity.userid=Approval.id where Activity.activationcode='"+activationcode+"') up set up.st='"+s+"'");
    //stmt.executeUpdate("UPDATE ( SELECT Approval.STATUS AS st FROM Approval JOIN Activity ON Activity.userid = Approval.id WHERE Activity.activationcode = '"+activationcode+"') up SET up.st = '"+s+"'");
    //stmt.executeUpdate("update (select Approval.status as st from Approval join Activity on Activity.userid=Approval.id where Activity.activationcode='"+activationcode+"') up set up.st='"+s+"'");      
    //stmt.executeUpdate("delete from activity where activationcode='"+activationcode+"'");
    stmt.close();
    con.close();
}

после нажатия на ссылку, которую я получил, это: http://localhost:8090/TL/OnlineApprovalButton.jsp?activationcode=%2780f91f53-918f-45c4-9ee6-9eda9c40f72d%27

здесь% 27добавляет в голову и след значения параметра

Ответы [ 2 ]

0 голосов
/ 08 февраля 2019

Я просто заменяю строку и после этого обрезаю строку.

String activationcode=request.getParameter("activationcode").repalceAll("'"," ").trim();
0 голосов
/ 08 февраля 2019

Значение кода активации может начинаться с апострофа ('), и при выполнении URL-кодирования апострофа это приводит к% 27.Вы можете найти URL-кодировку различных символов здесь.https://www.w3schools.com/tags/ref_urlencode.asp

...