我是Java新手。
我如何从数据库检索数据并将其放在某个变量上。我考虑过数组,但是数据是各种类型的。数据的检索也使用了另一个类的方法。
我有使用ArrayList的提示,但是我不知道要使用它。对我有什么线索或建议吗?
这是主要方法:
class JavaAppsTes {
public static void main(String[] args) {
Database app = new Database();
/* I don't know what to do here */
}
这是数据库类:
public void getMenu() {
String SQL = "SELECT * FROM menu ORDER by id_kategori";
String nama, gambar;
int id_menu, id_kategori, harga, persediaan;
int count = 0;
try (Connection conn = connect(); Statement stmt = conn.createStatement(); ResultSet cartRslt = stmt.executeQuery(SQL)) {
while(cartRslt.next()) {
id_menu = cartRslt.getInt("id_menu");
id_kategori = cartRslt.getInt("id_kategori");
harga = cartRslt.getInt("harga");
persediaan = cartRslt.getInt("persediaan");
nama = cartRslt.getString("nama");
gambar = cartRslt.getString("gambar");
}
} catch (SQLException ex) {
System.out.println(ex.getMessage());
}
}
我如何将这些数据放入某物,以便前端可以使用检索到的数据?
顺便说一句,由于我有了有关ArrayList的线索,所以我创建了这样的菜单类:
public class Menu {
private int id_menu;
private int id_kategori;
private String nama;
private int harga;
private int persediaan;
private String gambar;
public Menu(int id_menu, int id_kategori, String nama, int harga, int persediaan, String gambar) {
this.id_menu = id_menu;
this.id_kategori = id_kategori;
this.nama = nama;
this.harga = harga;
this.persediaan = persediaan;
this.gambar = gambar;
}
public int getid_menu(){
return id_kategori;
}
public void setid_menu(int id_menu){
this.id_menu = id_menu;
}
public int getid_kategori(){
return id_kategori;
}
public void setid_kategori(int id_kategori){
this.id_kategori = id_kategori;
}
public String getnama(){
return nama;
}
public void setnama(String nama){
this.nama = nama;
}
public int getharga(){
return harga;
}
public void setharga(int harga){
this.harga = harga;
}
public int getpersediaan(){
return persediaan;
}
public void setpersediaan(int persediaan){
this.persediaan = persediaan;
}
public String getgambar(){
return gambar;
}
public void setgambar(String gambar){
this.gambar = gambar;
}
}
最佳答案
如果需要ArrayList在循环之前定义它,请添加每个菜单并在之后返回它。
public ArrayList<Menu> getMenu() {
String SQL = "SELECT * FROM menu ORDER by id_kategori";
String nama, gambar;
int id_menu, id_kategori, harga, persediaan;
int count = 0;
ArrayList<Menu> arr = new ArrayList<>();
try (Connection conn = connect();
Statement stmt = conn.createStatement();
ResultSet cartRslt = stmt.executeQuery(SQL)) {
while(cartRslt.next()) {
id_menu = cartRslt.getInt("id_menu");
id_kategori = cartRslt.getInt("id_kategori");
harga = cartRslt.getInt("harga");
persediaan = cartRslt.getInt("persediaan");
nama = cartRslt.getString("nama");
gambar = cartRslt.getString("gambar");
arr.add(new Menu(id_menu, id_kategori, nama, harga, persediaan, gambar));
}
}
return arr;
}