我有一个包含以下列的表格“问题”:
ID (primary key)
question(Question subject/title)
answer(answer to the question)
我会做到这一点,以便用户可以输入他可以提出问题的文本。现在,当他完成并按下按钮时,我想启动一个事件以获取与他的问题相似的问题,以便他可以选择正确的问题。
现在我怎样才能将用户的输入(问题)与问题表中的现有问题相匹配并找出类似的问题?
到目前为止我已经这样做了:我为这个例子做了一个字符串单词变量,那应该是一个完整的句子,比如“多少次”。
Connection conn = null;
PreparedStatement st = null;
ResultSet rs = null;
String word= "'%times%'";
try
{
String url = "jdbc:mysql://localhost:3306/test";
Class.forName ("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection (url,"root","root");
st = conn.prepareStatement("SELECT * FROM qa WHERE question LIKE " + word);
rs = st.executeQuery();
while (rs.next()) {
System.out.print(rs.getInt(1));
System.out.print(": ");
System.out.println(rs.getString(2));
System.out.print(": ");
System.out.println(rs.getString(3));
}
}
我得到输出:
2: how many times should you eat per day
: five times
所以它有效,但正如你所见,但我只能使用一个词搜索类似的模式。当用户应该输入一个完整的句子时,这将很难做到。