setString не рекомендуется в Hibernate. Какая другая альтернатива? - PullRequest
0 голосов
/ 16 сентября 2018

Я использую следующий код для извлечения объектов формы контента, используя hibernate, и я использую setString для назначения значения запроса.

try
        {
            //sql injections prevented using setString(position,value)
             List<Student> studentList=session.createQuery("from Student s where s.lastName=?")
                                              .setString(0,lname).list();
             for(Student studentinfo:studentList)
             {
                 System.out.println(studentinfo);
             }
             model.addAttribute("result",studentList);

        }
        catch (Exception e)
        {
            System.out.println(e);
        }

Все работает хорошо. но IDE показывает, что метод setString устарел. Какова другая альтернатива setString

1 Ответ

0 голосов
/ 16 сентября 2018

Если вы используете Hibernate 5.2+. Официальный документ говорит, что вы должны использовать setParameter (int position, java.lang.Object val) вместо того, чтобы установить параметры запроса.

Чтобы избежать предупреждения, вы можете просто заменить setString на setParamter, как показано ниже.

List<Student> studentList=session.createQuery("from Student s where s.lastName=?")
                                          .setParamter(0,lname).list();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...