Прежде всего, надеюсь, вы имеете в виду, что service
- это переменная, которая поступает из формы вашего JSP, что эта переменная попадает в ваш контроллер и что ваш контроллер делегирует доступ к слою базы данных другому классу.
Есть несколько проблем с вашим запросом:
- Вы можете использовать кавычки внутри вашего запроса, вы не должны.
- Что такое
Activity
? вероятно, вы пропустили пробельный символ между вашим выбором и значением `Activity '
Целью'PreparedStatement` является избежание SQL-инъекций. Вы ДОЛЖНЫ использовать код, показанный ниже, вместо вашего параметра, непосредственно введенного в ваш встроенный оператор SQL.
Рассмотрите возможность использования StringBuilder
, если у вас есть несколько конкатенации строковых
"
String sqlstring = "select activity from backgroundcost where onpremprice = ?";
PreparedStatement ps = con.prepareStatement(sqlstring);
ps.setString(1, service);
ResultSet rs = ps.executeQuery();
Какая ошибка вы получаете? – Flown
MysqlsyntaxerrorException –
Обновите свой вопрос и добавьте StackTrace. – Flown