用java创建食品数据库

uqxowvwt  于 2021-07-03  发布在  Java
关注(0)|答案(3)|浏览(222)

**结束。**此问题不符合堆栈溢出准则。它目前不接受答案。
**想改进这个问题吗?**更新问题,使其成为堆栈溢出的主题。

四年前关门了。
改进这个问题
我刚开始学习java,我花了一天的大部分时间看视频教程,但是现在我决定做一些实际的事情,因为我认为我今天不能吸收更多的信息。
我有一个想法,开发一个健身应用程序前一段时间,但击中了如何困难,实际上是没有任何知识,所以我想我将开始创建一个宏计数器。我创建了一个类:

public class Food {

    private String name;
    public int weight;
    private int calories;
    private int protein;
    private int fat;
    private int carbs;

    public int tCals = weight * calories;
    public int tProtein = weight * protein;
    public int tFat = weight * fat;
    public int tCarbs = weight * carbs;

    public void macrocounter(){
        System.out.println("Total calories: " + tCals);
        System.out.println("\nProtein: " + tProtein);
        System.out.println("\nCarbs: " + tCarbs);
        System.out.println("\nFat: " + tFat);
        System.out.println("-------------");

    }

}

现在我遇到的问题是创建一个数据库。首先,我想添加至少10种简单的食物,它们都会将宏设置为石头,用户只需键入食物的名称和他吃了多少克,然后应用程序就会从数据库中识别食物,填写重量,并打印出总宏。
我不是在问如何写具体的代码,只是你能告诉我,我应该读更多的东西才能做到这一点吗?java是一种极其庞大的语言,我很难找到创建数据库所需的实际信息。
谢谢您。

anhgbhbe

anhgbhbe1#

谢谢你的帮助,我得到了很多关于我应该学什么和从哪里学的建议。我不知道如何结束这个问题,但如果你知道,请这样做。

zkure5ic

zkure5ic2#

一些在线教程很好。但我会考虑投资一本好的java书籍。我找到了大 java 岛。霍斯特曼是一个非常有用的信息来源。它为您提供了大量的练习和练习代码的机会,并以非常清晰的方式解释了一些事情。我只会去在线教程,如果我有困难遵循某种方法在一本书。但我不会把它们当作学习资源,因为它们可能不正确。
虽然这是一本昂贵的书,但你可能会得到一本旧版的奇普或二手书。甲骨文的网站也有有用的书面教程供您遵循https://docs.oracle.com/javase/tutorial/ 但我发现这本书更容易看懂。

3hvapo4f

3hvapo4f3#

你只想把数据存储在主存里?或者在真正的数据库到磁盘中?
如果是第一个选项,则可以执行以下操作:

ArrayList<Food> foods =  new ArrayList<Food>();

一旦你有了你的列表,你可以添加如下内容:

Food f = new Food(...data...); //You need a constructor
                               //to pass the data.

foods.add(f);

要查阅它,您可以做很多事情:

Food f0 = foods.get(0);
Food f1 = foods.get(1);

您还可以查询特定对象:

if (foods.contains(f0) {
    // ...
}

谷歌搜索“java类arraylist”,你会看到你能做什么。
相反,如果您想创建一个真正的数据库,则需要阅读有关jdbc驱动程序的内容。首先,我推荐您使用sqlite。

package consultarcalibredb;

import java.sql.*;

public class ConsultarCalibreDB {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        Connection conn = null;

        int id;
        String title, author, path;
        try  {
            DriverManager.registerDriver(new org.sqlite.JDBC());
            conn = DriverManager.getConnection("jdbc:sqlite:/home/user/folder/file.db");
            String sql = "select id, title, author_sort, path from books where author_sort like '%orwell%'";
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery(sql);

            System.out.println("id\ttitulo\tautor\tpath");
            while (rs.next()) {
                id = rs.getInt("id");
                title = rs.getString("title");
                author = rs.getString("author_sort");
                path = rs.getString("path");

                System.out.println(id+"\n"+title+
                "\n"+author+"\n"+path);

                System.out.println();
            }

        } catch (Exception e) {
            System.out.println(e.getMessage());

        }  
    }
}

相关问题