是否有可能比较java中用户的输入
在excel表中有多个属性值?
我试图读取用户的6个输入(症状)并将其与
进行比较我的疾病症状中的每个属性值都超出表格。
疾病症状是这样的:
------------------------------------------------------------------------
disease_id | disease name | symptoms_1 | symptoms_2 | symptoms_3 |..
1 | flu | fever | dry cough | headache |
2 | diarrhea |abdominal cramps| abdominal pain| fever |
------------------------------------------------------------------------
首先,应用程序会询问:
您是否遇到任何这些症状,然后它会显示所有症状_1
值在下拉列表中供用户从中进行选择。然后它问道 对于下一个症状的方式相同。
例如:如果我从第一个下拉列表中选择发烧(所有值为 症状_1),在java中我想将疾病1和疾病2增加20%和
然后当我在第二个下拉列表中选择干咳(所有值为 症状_2),所以疾病_1将是40%。
我的问题是这种方式在java中使用excel作为数据库是可能的吗?
如果没有,请提出解决此问题的想法。
感谢。
答案 0 :(得分:2)
这是可能的。将Excel文件作为数据库,将表格作为表格,将表格作为表格的列。
1 - 您需要将JDBC ODBC驱动程序添加到项目中。
2 - 下面的代码可以帮助您获取下拉列表的来源(用户选择)。它假定您有一个Excel文件,其中sheet1是您的症状表。 sheet1的列有症状_1,症状_2,......
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Main {
public static Connection getConnection() throws Exception {
String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
String url = "jdbc:odbc:excelDB";
String username = "yourName";
String password = "yourPass";
Class.forName(driver);
return DriverManager.getConnection(url, username, password);
}
public static void main(String args[]) throws Exception {
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
conn = getConnection();
stmt = conn.createStatement();
String excelQuery = "select symptoms_1 from [Sheet1$]";
rs = stmt.executeQuery(excelQuery);
while (rs.next()) {
//Fill the data for your drop-down list
}
rs.close();
stmt.close();
conn.close();
}
}
希望它有所帮助。