{"id":3690,"date":"2021-07-25T12:39:20","date_gmt":"2021-07-25T12:39:20","guid":{"rendered":"https:\/\/infyblog.zluck.in\/?p=3690"},"modified":"2024-08-12T06:56:26","modified_gmt":"2024-08-12T06:56:26","slug":"room-database-in-android-java","status":"publish","type":"post","link":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/","title":{"rendered":"Room Database in android java"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"3690\" class=\"elementor elementor-3690\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-5e0c760 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"5e0c760\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8ab0f4f\" data-id=\"8ab0f4f\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\n\t\t<div class=\"elementor-element elementor-element-70c5c61 elementor-widget elementor-widget-text-editor\" data-id=\"70c5c61\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<p>Hi everyone, in this post, we will discuss Room Database in android java.<\/p><h2>Below are all steps covered in this blog<\/h2><ul><li>How to use the Room database<\/li><li>How to add Room Database in android studio<\/li><li>Insert,Update,Delete record<\/li><li>How to pass query in Database<\/li><\/ul><h2>What is a Room?<\/h2><ul><li>The Room strong library provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite.<\/li><li>Normally Room databases are fast created and have good performance like reading, updating and deleting records. Room Database makes everything easy and fast<\/li><li>Room Database more detail open this link:<a href=\"https:\/\/developer.android.com\/training\/data-storage\/room\" target=\"_blank\" rel=\"noopener\"> https:\/\/developer.android.com\/training\/data-storage\/room\/<\/a><\/li><\/ul><h2>Components of Room Here room have main 3 components<\/h2><h2>Entity:<\/h2><ul><li>Instead of creating the SQLite table, we will create the Entity. An entity is nothing but a model class annotated with @Entity. The variables of this class are our columns, and the class is our table.<\/li><\/ul><h2>Database:<\/h2><ul><li>It is an abstract class where we define all our entities.<\/li><\/ul><h2>DAO:<\/h2><ul><li>Stands for Data Access Objects. It is an interface that defines all the operations that we need to perform in our database.<\/li><\/ul><h2>Demo App Create<\/h2><ul><li>First, we create a new project in android studio.<\/li><li>Name of my project &#8220;Room DataBase&#8221;<\/li><\/ul><h2>Adding Dependencies<\/h2><ul><li>Add needed dependencies for the room database.<\/li><li>Android studio in this file add dependencies &#8220;build.gradle&#8221;.<\/li><li>See the below image and add the latest version room database replace here &#8220;$room_version&#8221; add original version<\/li><\/ul><h3>First, we will create DAO class:<\/h3><ul><li>This DAO class-main work intermediary between the user and database. All performed operations are defined here.<\/li><li>Below create StudentDao class<\/li><\/ul>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-67e53bc elementor-widget elementor-widget-code-highlight\" data-id=\"67e53bc\" data-element_type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript \">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp>@Dao\r\npublic interface StudentDao {\r\n\r\n@Query(\"SELECT * FROM Student\")\r\nList<Student> getAll();\r\n\r\n@Insert\r\nvoid insert(Student student);\r\n\r\n@Update\r\nvoid updateTask(Student student);\r\n\r\n@Delete\r\nvoid deleteTask(Student student);\r\n}<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b893f62 elementor-widget elementor-widget-text-editor\" data-id=\"b893f62\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<h2>Nowhere explain all components of StudentDao Class<\/h2><ul><li>Compulsory add class upper &#8220;@Dao&#8221; keyword<\/li><li>Three methods create insert, update, delete<\/li><li>Most important thing here is &#8220;@Query&#8221;<\/li><\/ul><h2>What is a Query?<\/h2><ul><li>Using query to get database existing record.<\/li><li>@Query(&#8220;SELECT * FROM Student&#8221;) this query gets all student records.<\/li><li>But the user wants to get only the standard &#8220;5&#8221; student record and only get how to pass a query?<\/li><\/ul>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-14b3514 elementor-widget elementor-widget-code-highlight\" data-id=\"14b3514\" data-element_type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript \">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp>  @Query(\"SELECT * FROM STUDENT where std = :std\")\r\n\r\n    List<Student> dataCheck(String std);<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-888e1a2 elementor-widget elementor-widget-text-editor\" data-id=\"888e1a2\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul><li>Here &#8220;std&#8221; id table field name<\/li><li>Call this method &#8220;data check(String std)&#8221; pass a string in &#8220;5&#8221; and database in getting only 5 stander student record<\/li><li>So this concept use the query parameter<\/li><\/ul><h2>Second steps create student model class<\/h2>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4061d1e elementor-widget elementor-widget-code-highlight\" data-id=\"4061d1e\" data-element_type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript \">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp>@Entity(tableName = \"student\")\r\npublic class Student implements Serializable {\r\n\r\n@PrimaryKey(autoGenerate  = true)\r\nprivate int id;\r\n\r\n@ColumnInfo(name = \"std\")\r\nprivate int std;\r\n\r\n@ColumnInfo(name = \"name\")\r\nprivate String name;\r\n\r\npublic int getId() {\r\n    return id;\r\n  }\r\n\r\npublic void setId(int id) {\r\n    this.id = id;\r\n  }\r\n\r\npublic int getStd() {\r\n    return std;\r\n  }\r\n\r\npublic void setStd(int std) {\r\n    this.std = std;\r\n  }\r\n\r\npublic String getName() {\r\n    return name;\r\n  }\r\n\r\npublic void setName(String name) {\r\n    this.name = name;\r\n  }\r\n}<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-69b196c elementor-widget elementor-widget-text-editor\" data-id=\"69b196c\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul><li>PrimaryKey: auto increment values<\/li><li>tableName : user wants to set the table name<\/li><li>ColumnInfo: give the table in columns name<\/li><\/ul><h2>Third steps Create Database class:<\/h2>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-168709d elementor-widget elementor-widget-code-highlight\" data-id=\"168709d\" data-element_type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript \">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp>@Database(entities = {Student.class}, version = 1)\r\npublic abstract class AppDatabase extends     RoomDatabase {\r\npublic abstract Student studentDao();\r\n}<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-eae21af elementor-widget elementor-widget-text-editor\" data-id=\"eae21af\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul><li>User wants to add multiple tables how can add like that:<\/li><\/ul><p>@Database(entities = {Student.class,Abc.class,Xyz.class}, version = 1) public abstract class AppDatabase extends RoomDatabase { public abstract Student studentDao(); }<\/p><ul><li>To create a new model class like Abc.class and Xyz.class etc same method.<\/li><\/ul><h2>Fourth step inserts, update and delete records create separate method:<\/h2><ul><li>But implements upper all method in understanding asynctask<\/li><li>You, not knowing whats is asynctask first open this link and check it:<a href=\"https:\/\/developer.android.com\/reference\/android\/os\/AsyncTask\" target=\"_blank\" rel=\"noopener\"> https:\/\/developer.android.com\/reference\/android\/os\/AsyncTask<\/a><\/li><li>how we will create a common class method insert,update, delete<\/li><\/ul>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12256f9 elementor-widget elementor-widget-code-highlight\" data-id=\"12256f9\" data-element_type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript \">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp>public class InsertUpdateDeletRecord {\r\n\r\n    private String DB_NAME = \"db_task\";\r\n\r\n    private Student Student;\r\n    public studentRepository(Context context) {\r\n        Student = Room.databaseBuilder(context, Student.class, DB_NAME).build();\r\n    }\r\n\r\n    public void insertTask(String std,String name) {\r\n\r\n        insertTask(std, name);\r\n    }\r\n\r\n    public void insertTask(String std,String name) {\r\n        Student student = new Student();\r\n        student.setstd(std);\r\n        student.setname(name);\r\n\r\n        insertTask(student);\r\n    }\r\n\r\n    public void insertTask(final Student student) {\r\n        new AsyncTask<Void, Void, Void>() {\r\n            @Override\r\n            protected Void doInBackground(Void... voids) {\r\n                Student.daoAccess().insertTask(student);\r\n                return null;\r\n            }\r\n        }.execute();\r\n    }\r\n\r\n    public void updateTask(final Student student) {\r\n        student.setModifiedAt(AppUtils.getCurrentDateTime());\r\n\r\n        new AsyncTask<Void, Void, Void>() {\r\n            @Override\r\n            protected Void doInBackground(Void... voids) {\r\n                Student.daoAccess().updateTask(student);\r\n                return null;\r\n            }\r\n        }.execute();\r\n    }\r\n\r\n    public void deleteTask(final int id) {\r\n        final LiveData<student> task = getTask(id);\r\n        if(task != null) {\r\n            new AsyncTask<Void, Void, Void>() {\r\n                @Override\r\n                protected Void doInBackground(Void... voids) {\r\n                    Student.daoAccess().deleteTask(task.getValue());\r\n                    return null;\r\n                }\r\n            }.execute();\r\n        }\r\n    }\r\n\r\n    public void deleteTask(final student student) {\r\n        new AsyncTask<Void, Void, Void>() {\r\n            @Override\r\n            protected Void doInBackground(Void... voids) {\r\n                Student.daoAccess().deleteTask(student);\r\n                return null;\r\n            }\r\n        }.execute();\r\n    }\r\n\r\n }<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e44b8ad elementor-widget elementor-widget-text-editor\" data-id=\"e44b8ad\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<h2>Sample Implementation of basic CRUD operations using ROOM<\/h2><h2>Insert:<\/h2>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0fbf730 elementor-widget elementor-widget-code-highlight\" data-id=\"0fbf730\" data-element_type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript \">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp> InsertUpdateDeletRecord \r\n insertUpdateDeletRecord = new \r\n InsertUpdateDeletRecord(getApplicationContext( ));\r\n String std = \"5\";\r\n String name = Android\";\r\n insertUpdateDeletRecord.insertTask(title, \r\n description);<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d318858 elementor-widget elementor-widget-text-editor\" data-id=\"d318858\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<h2>Update:<\/h2>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c894729 elementor-widget elementor-widget-code-highlight\" data-id=\"c894729\" data-element_type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript \">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp> InsertUpdateDeletRecord \r\n insertUpdateDeletRecord = new \r\n InsertUpdateDeletRecord(getApplicationContext( ));\r\n Student student = \r\n insertUpdateDeletRecord.getTask(2);\r\n student.setName(\"Java\");\r\n student.setStd(\"6\");\r\n insertUpdateDeletRecord.updateTask(student);<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dc7ecca elementor-widget elementor-widget-text-editor\" data-id=\"dc7ecca\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<h2>Update:<\/h2>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8e6aef7 elementor-widget elementor-widget-code-highlight\" data-id=\"8e6aef7\" data-element_type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript \">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp> InsertUpdateDeletRecord \r\n insertUpdateDeletRecord = new \r\n InsertUpdateDeletRecord(getApplicationContext());\r\n insertUpdateDeletRecord.deleteTask(3);<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t\n    <div class=\"xs_social_share_widget xs_share_url after_content \t\tmain_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content\">\n\n\t\t\n        <ul>\n\t\t\t        <\/ul>\n    <\/div> \n","protected":false},"excerpt":{"rendered":"<p>Room databases use users to store data offline. This database is very helpful and fast gives user&#8230;<\/p>\n","protected":false},"author":2,"featured_media":3692,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"postBodyCss":"","postBodyMargin":[],"postBodyPadding":[],"postBodyBackground":{"backgroundType":"classic","gradient":""},"two_page_speed":[],"footnotes":""},"categories":[11],"tags":[120,119],"class_list":["post-3690","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-android-development","tag-android-java","tag-room-database"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Room Database in android java<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Room Database in android java\" \/>\n<meta property=\"og:description\" content=\"Room databases use users to store data offline. This database is very helpful and fast gives user...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog | InfyOm Technologies\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/infyom\" \/>\n<meta property=\"article:published_time\" content=\"2021-07-25T12:39:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-08-12T06:56:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/07\/room-database-in-android-java.png\" \/>\n\t<meta property=\"og:image:width\" content=\"772\" \/>\n\t<meta property=\"og:image:height\" content=\"484\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"InfyOm\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@InfyOm\" \/>\n<meta name=\"twitter:site\" content=\"@InfyOm\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"InfyOm\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/\"},\"author\":{\"name\":\"InfyOm\",\"@id\":\"https:\/\/infyom.com\/blog\/#\/schema\/person\/659bfc844c333d041221e83c5f5ec754\"},\"headline\":\"Room Database in android java\",\"datePublished\":\"2021-07-25T12:39:20+00:00\",\"dateModified\":\"2024-08-12T06:56:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/\"},\"wordCount\":508,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/infyom.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/07\/room-database-in-android-java.png\",\"keywords\":[\"Android Java\",\"Room Database\"],\"articleSection\":[\"Android Development\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/\",\"url\":\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/\",\"name\":\"Room Database in android java\",\"isPartOf\":{\"@id\":\"https:\/\/infyom.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/07\/room-database-in-android-java.png\",\"datePublished\":\"2021-07-25T12:39:20+00:00\",\"dateModified\":\"2024-08-12T06:56:26+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#primaryimage\",\"url\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/07\/room-database-in-android-java.png\",\"contentUrl\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/07\/room-database-in-android-java.png\",\"width\":772,\"height\":484,\"caption\":\"Room Database in android java\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/infyom.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Room Database in android java\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/infyom.com\/blog\/#website\",\"url\":\"https:\/\/infyom.com\/blog\/\",\"name\":\"Blog | InfyOm Technologies\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/infyom.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/infyom.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/infyom.com\/blog\/#organization\",\"name\":\"InfyOm Technologies\",\"url\":\"https:\/\/infyom.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/infyom.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/06\/InfyOm-Logo.png\",\"contentUrl\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/06\/InfyOm-Logo.png\",\"width\":88,\"height\":41,\"caption\":\"InfyOm Technologies\"},\"image\":{\"@id\":\"https:\/\/infyom.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/infyom\",\"https:\/\/x.com\/InfyOm\",\"https:\/\/www.instagram.com\/infyomtechnologies\/\",\"https:\/\/in.linkedin.com\/company\/infyom-technologies\",\"https:\/\/github.com\/infyomlabs\",\"https:\/\/x.com\/infyom\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/infyom.com\/blog\/#\/schema\/person\/659bfc844c333d041221e83c5f5ec754\",\"name\":\"InfyOm\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/infyom.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1ad162864d8d33c04ea9e6d0333cc483?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1ad162864d8d33c04ea9e6d0333cc483?s=96&d=mm&r=g\",\"caption\":\"InfyOm\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Room Database in android java","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/","og_locale":"en_US","og_type":"article","og_title":"Room Database in android java","og_description":"Room databases use users to store data offline. This database is very helpful and fast gives user...","og_url":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/","og_site_name":"Blog | InfyOm Technologies","article_publisher":"https:\/\/www.facebook.com\/infyom","article_published_time":"2021-07-25T12:39:20+00:00","article_modified_time":"2024-08-12T06:56:26+00:00","og_image":[{"width":772,"height":484,"url":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/07\/room-database-in-android-java.png","type":"image\/png"}],"author":"InfyOm","twitter_card":"summary_large_image","twitter_creator":"@InfyOm","twitter_site":"@InfyOm","twitter_misc":{"Written by":"InfyOm","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#article","isPartOf":{"@id":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/"},"author":{"name":"InfyOm","@id":"https:\/\/infyom.com\/blog\/#\/schema\/person\/659bfc844c333d041221e83c5f5ec754"},"headline":"Room Database in android java","datePublished":"2021-07-25T12:39:20+00:00","dateModified":"2024-08-12T06:56:26+00:00","mainEntityOfPage":{"@id":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/"},"wordCount":508,"commentCount":0,"publisher":{"@id":"https:\/\/infyom.com\/blog\/#organization"},"image":{"@id":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#primaryimage"},"thumbnailUrl":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/07\/room-database-in-android-java.png","keywords":["Android Java","Room Database"],"articleSection":["Android Development"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/infyom.com\/blog\/room-database-in-android-java\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/","url":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/","name":"Room Database in android java","isPartOf":{"@id":"https:\/\/infyom.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#primaryimage"},"image":{"@id":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#primaryimage"},"thumbnailUrl":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/07\/room-database-in-android-java.png","datePublished":"2021-07-25T12:39:20+00:00","dateModified":"2024-08-12T06:56:26+00:00","breadcrumb":{"@id":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/infyom.com\/blog\/room-database-in-android-java\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#primaryimage","url":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/07\/room-database-in-android-java.png","contentUrl":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/07\/room-database-in-android-java.png","width":772,"height":484,"caption":"Room Database in android java"},{"@type":"BreadcrumbList","@id":"https:\/\/infyom.com\/blog\/room-database-in-android-java\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/infyom.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Room Database in android java"}]},{"@type":"WebSite","@id":"https:\/\/infyom.com\/blog\/#website","url":"https:\/\/infyom.com\/blog\/","name":"Blog | InfyOm Technologies","description":"","publisher":{"@id":"https:\/\/infyom.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/infyom.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/infyom.com\/blog\/#organization","name":"InfyOm Technologies","url":"https:\/\/infyom.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/infyom.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/06\/InfyOm-Logo.png","contentUrl":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/06\/InfyOm-Logo.png","width":88,"height":41,"caption":"InfyOm Technologies"},"image":{"@id":"https:\/\/infyom.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/infyom","https:\/\/x.com\/InfyOm","https:\/\/www.instagram.com\/infyomtechnologies\/","https:\/\/in.linkedin.com\/company\/infyom-technologies","https:\/\/github.com\/infyomlabs","https:\/\/x.com\/infyom"]},{"@type":"Person","@id":"https:\/\/infyom.com\/blog\/#\/schema\/person\/659bfc844c333d041221e83c5f5ec754","name":"InfyOm","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/infyom.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/1ad162864d8d33c04ea9e6d0333cc483?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1ad162864d8d33c04ea9e6d0333cc483?s=96&d=mm&r=g","caption":"InfyOm"}}]}},"_links":{"self":[{"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/posts\/3690","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/comments?post=3690"}],"version-history":[{"count":22,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/posts\/3690\/revisions"}],"predecessor-version":[{"id":5819,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/posts\/3690\/revisions\/5819"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/media\/3692"}],"wp:attachment":[{"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/media?parent=3690"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/categories?post=3690"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/tags?post=3690"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}