现在全文检索常用的是ElasticSearch,也有用lucene库自研。当然mysql、mongodb等数据库也都支持了全文检索. 我这里尝试一下sqlite的全文索引功能. 示例代码 Class.forName("org.sqlite.JDBC"); String dbPath1 = "C:sqlitetestqry.db"; new File(dbPath1).delete(); Connection conn = DriverManager.getConnection("jdbc:sqlite:" + dbPath1); Statement stat = conn.createStatement(); stat.executeUpdate("CREATE VIRTUAL TABLE my_log USING fts5(cid,name, content);"); stat.executeUpdate("insert into my_log values("D33","hello world","see you later");"); stat.executeUpdate("insert into my_log values("E33","how are you","i am ok");"); ResultSet rs = stat.executeQuery("select * from my_log where my_log MATCH "name:hello content:later";"); while (rs.next()) { ResultSetMetaData resultMetaData = rs.getMetaData(); int cols = resultMetaData.getColumnCount(); for (int i = 1; i <= cols; i++) { System.out.print(resultMetaData.getColumnName(i) + ";"); } System.out.println(); System.out.println( "cid = " + rs.getString("cid") + " name:" + rs.getString("name") + " content:" + rs.getString("content")); } rs.close(); stat.close(); conn.close(); 输出 cid;name;content; cid = D33 name:hello world content:see you later