java - 如何在 Java 中将字符串值转换为自定义模型对象?

标签 java android string sqlite java-opts

我有一个模型对象。其中,我有多个值。我想将此值存储在 SQLite 中。但是数据很大,所以我想存储直接模型对象 在数据库中。所以我将模型对象转换为字符串并将其存储到数据库中。

现在,问题是如何将此字符串值转换为模型对象。 如果您有任何想法,请与我分享。

例如,

Person p = new Person();
p.setname("xyz");
p.setage("18");`

String person=p.toString();

现在如何将这个“person”字符串返回给 Person "p"模型对象。

这是我的代码。

ContentValues values = new ContentValues();
    String favorite_id = UUID.randomUUID().toString();
    values.put(EMuseumLocalData.KEY_FAVORITE_EXHIBITS_ID, favorite_id);
    values.put(EMuseumLocalData.KEY_EXHIBIT_SUBCATEGORY_ITEM_ID, Integer.parseInt(categoryByCustomerList.get(position).getSubCategoryItemID()));
    try {
        Gson gson = new Gson();
        String personString = gson.toJson(getAllCategory.get(position).toString());
        values.put(EMuseumLocalData.KEY_EXHIBIT_SUBCATEGORY_ITEM_DATA, personString);

        Gson gson1 = new Gson();
        CategoryByCustomer categoryByCustomer = gson1.fromJson(personString, categoryByCustomer.getName());
    } catch (JSONException e) {
        e.printStackTrace();
    }

最佳答案

您应该为此使用 GSON 或类似的库。


存储到数据库

例如如果你使用GSON

Person p = new Person();
p.setname("xyz");
p.setage("18");
Gson gson = new Gson();
String personString = gson.toJson(p);

现在将这个 personString 存储到 DB。


从数据库读取

从数据库中取回这个对象,从数据库中读取字符串并将其转换为如下对象

String personStringFromDB = READ_LOGIC_OF_DB;
Gson gson = new Gson();
Person p = gson.fromJson(personStringFromDB, Person.class);

有关详细信息,请阅读 GSON - Gson Example

关于java - 如何在 Java 中将字符串值转换为自定义模型对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38238712/

相关文章:

java - 部署和运行 war 文件

java - 没有 includeantruntime 的 ant LinkageError

适合所有设备的 Android 启动画面图像大小

android - 专门使用 GraphQl 解析 JSON 数据

iphone - 哪个移动系统适合程序员?

java - 组 SWT 与复合 SWT?

java - 线程安全问题

python - 将带有变量名称的字符串转换为字典

C - 带有 char * 且长度大于源字符串长度的 memcpy

c# - 检测字符串是否全部大写