我在搜索中遇到了困难(选择sql语句)。如何将我输入的值放在文本框中并在sql查询中使用它 这样我就可以在部门名称中搜索我插入的值。
我不知道对于这个&#34; SELECT * FROM部门的正确查询,其中department_name =&#39;&#34;%search%&#34;&#39;&#34; < / p>
以下是我的jsp文件:
<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
/head>
<body>
<sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/department"
user="root" password="root"/>
<sql:query dataSource="${snapshot}" var="sql">
SELECT * from department;
<!-- SELECT * FROM department where department_name ='"%search%"'-->
</sql:query>
<FORM NAME="form1" METHOD="POST">
<input type="text" name="search"/>
<INPUT TYPE="BUTTON" VALUE="Button 1">
</FORM><br>
<table border=1>
<thead>
<tr>
<th>department Id</th>
<th>department Name</th>
<th colspan=1>Action</th>
</tr>
</thead>
<tbody>
<c:forEach var="user" items="${sql.rows}">
<tr>
<td><c:out value="${user.department_id}" /></td>
<td><c:out value="${user.department_name}" /></td>
</tr>
</c:forEach>
</tbody>
</table>
</body>
</html>
答案 0 :(得分:-2)
在第一个中,将参数插入SQL查询
<sql:query dataSource="${snapshot}" var="sql">
SELECT * from department WHERE department_name = <%= request.getParameter("query") %>;
</sql:query>
将方法更改为METHOD =“GET”和
<input type="text" name="query"/>
<INPUT TYPE="submit">
当您点击按钮时,网址就像