0% found this document useful (0 votes)
48 views13 pages

AND 9 To 11

The document describes a practical application that demonstrates database operations like insert, delete, update, and retrieve. It includes XML and Java code for a user interface with text fields for name and surname, and buttons to perform the database operations on a table. The XML layout defines the user interface elements and their positioning. The Java code implements the button click listeners and database logic to perform the CRUD operations on a table in an SQLite database.

Uploaded by

Sanchit Thakur
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views13 pages

AND 9 To 11

The document describes a practical application that demonstrates database operations like insert, delete, update, and retrieve. It includes XML and Java code for a user interface with text fields for name and surname, and buttons to perform the database operations on a table. The XML layout defines the user interface elements and their positioning. The Java code implements the button click listeners and database logic to perform the CRUD operations on a table in an SQLite database.

Uploaded by

Sanchit Thakur
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

Roll No.

1320084 BCA-507
Practical No.: 9
Aim: Develop an application demonstrating Internal Storage to store private data on the device memory.
Solution:
.xml file:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"
android:gravity="center"
android:orientation="vertical"
tools:context=".MainActivity">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Practical on Read and Write data on internal Storage device"
android:textColor="@color/black"
android:textSize="20sp"
android:textAlignment="center"/>

<EditText
android:id="@+id/userInput"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="50dp"
android:inputType="textPersonName"
android:hint="Enter data here"
app:layout_constraintTop_toTopOf="parent" />

<Button
android:id="@+id/write_button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:text="Write" />

<Button
android:id="@+id/read_button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="Read" />

<TextView
Roll No. 1320084 BCA-507
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text=" File Content "
android:textAlignment="center"
android:layout_marginTop="20sp"
android:textColor="#000"
android:textSize="25sp"
android:textStyle="bold"/>

<TextView
android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text=""
android:textAlignment="center"
android:layout_gravity="center"
android:layout_marginTop="30dp"
android:textSize="20sp"
android:textColor="#000"/>

</LinearLayout>
.java file:
package com.example.practicals_exmp;
import androidx.appcompat.app.AppCompatActivity;

import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

Button read, write;


EditText userInput;
TextView fileContent;

private String filename = "rohit.txt";

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Roll No. 1320084 BCA-507
read = findViewById(R.id.read_button);
write = findViewById(R.id.write_button);
userInput = findViewById(R.id.userInput);
fileContent = findViewById(R.id.content);

read.setOnClickListener(this);
write.setOnClickListener(this);

}
public void printMessage(String m) {
Toast.makeText(this, m, Toast.LENGTH_LONG).show();
}
@Override
public void onClick(View view) {
Button b = (Button) view;

// get the button text : in out case either read or


// write depending on the button pressed.
String b_text = b.getText().toString();

switch (b_text.toLowerCase()) {
case "write": {
writeData();
break;
}
case "read": {
readData();
break;
}
}
}

private void writeData() {

try {
FileOutputStream fos = openFileOutput(filename, Context.MODE_PRIVATE);
String data = userInput.getText().toString();
fos.write(data.getBytes());
fos.flush();
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
userInput.setText("");
printMessage("writing to file " + filename + "completed...");
}

private void readData() {


try {
FileInputStream fin = openFileInput(filename);
Roll No. 1320084 BCA-507
int a;
StringBuilder temp = new StringBuilder();
while ((a = fin.read()) != -1) {
temp.append((char) a);
}

// setting text from the file.


fileContent.setText(temp.toString());
fin.close();
} catch (IOException e) {
e.printStackTrace();
}
printMessage("reading to file " + filename + " completed..");
}

Output:
Roll No. 1320084 BCA-507
Practical No.: 10
Aim: Create an application to make insert, delete, and update and retrieve operation on database.
Solution:
.Xml file:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"
android:orientation="vertical"
tools:context=".MainActivity">

<TextView
android:id="@+id/txt_1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Database operations"
android:textSize="30sp"
android:textColor="@color/black"
android:textAlignment="center"
android:layout_marginTop="30sp"
android:textStyle="bold"/>

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Name"
android:layout_marginTop="100dp"
android:id="@+id/textView"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Surname"
android:id="@+id/textView2"
android:layout_below="@+id/editText_name"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />

<TextView
Roll No. 1320084 BCA-507
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Marks"
android:id="@+id/textView3"
android:layout_below="@+id/editText_surname"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/editText_name"
android:layout_marginLeft="35dp"
android:layout_alignTop="@+id/textView"
android:layout_toRightOf="@+id/textView"
android:layout_toEndOf="@+id/textView" />

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/editText_surname"
android:layout_marginLeft="5dp"
android:layout_alignTop="@+id/textView2"
android:layout_toRightOf="@+id/textView2"
android:layout_toEndOf="@+id/textView2" />

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/editText_Marks"
android:layout_below="@+id/editText_surname"
android:layout_toRightOf="@+id/textView3"
android:layout_marginLeft="32dp"
android:layout_toEndOf="@+id/textView3" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="id"
android:id="@+id/textView_id"
android:layout_below="@+id/editText_Marks"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/editText_id"
android:layout_alignTop="@+id/textView_id"
Roll No. 1320084 BCA-507
android:layout_toRightOf="@+id/textView3"
android:layout_marginLeft="32dp"
android:layout_toEndOf="@+id/textView3"/>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="330dp"
android:orientation="vertical">

<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Add Data"
android:id="@+id/button_add"/>

<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="View All"
android:id="@+id/button_viewAll" />

<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Update"
android:id="@+id/button_update" />

<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Delete"
android:id="@+id/button_delete" />
</LinearLayout>

</RelativeLayout>

.DatabaseHelper class:
package com.example.practicals_exmp;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

public class DatabaseHelper extends SQLiteOpenHelper {


public static final String DATABASE_NAME = "Student.db";
Roll No. 1320084 BCA-507
public static final String TABLE_NAME = "student_table";
public static final String COL_1 = "ID";
public static final String COL_2 = "NAME";
public static final String COL_3 = "SURNAME";
public static final String COL_4 = "MARKS";

public DatabaseHelper(Context context) {


super(context, DATABASE_NAME, null, 1);
}

@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table " + TABLE_NAME +" (ID INTEGER PRIMARY KEY
AUTOINCREMENT,NAME TEXT,SURNAME TEXT,MARKS INTEGER)");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS "+TABLE_NAME);
onCreate(db);
}

public boolean insertData(String name,String surname,String marks) {


SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(COL_2,name);
contentValues.put(COL_3,surname);
contentValues.put(COL_4,marks);
long result = db.insert(TABLE_NAME,null ,contentValues);
if(result == -1)
return false;
else
return true;
}

public Cursor getAllData() {


SQLiteDatabase db = this.getWritableDatabase();
Cursor res = db.rawQuery("select * from "+TABLE_NAME,null);
return res;
}

public boolean updateData(String id,String name,String surname,String marks) {


SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(COL_1,id);
contentValues.put(COL_2,name);
contentValues.put(COL_3,surname);
contentValues.put(COL_4,marks);
db.update(TABLE_NAME, contentValues, "ID = ?",new String[] { id });
return true;
Roll No. 1320084 BCA-507
}

public Integer deleteData (String id) {


SQLiteDatabase db = this.getWritableDatabase();
return db.delete(TABLE_NAME, "ID = ?",new String[] {id});
}
}
.java file:
package com.example.practicals_exmp;

import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;

import android.database.Cursor;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

DatabaseHelper myDb;
EditText editName,editSurname,editMarks ,editTextId;
Button btnAddData;
Button btnviewAll;
Button btnDelete;
Button btnviewUpdate;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

myDb = new DatabaseHelper(this);

editName = (EditText)findViewById(R.id.editText_name);
editSurname = (EditText)findViewById(R.id.editText_surname);
editMarks = (EditText)findViewById(R.id.editText_Marks);
editTextId = (EditText)findViewById(R.id.editText_id);
btnAddData = (Button)findViewById(R.id.button_add);
btnviewAll = (Button)findViewById(R.id.button_viewAll);
btnviewUpdate= (Button)findViewById(R.id.button_update);
btnDelete= (Button)findViewById(R.id.button_delete);
AddData();
viewAll();
Roll No. 1320084 BCA-507
UpdateData();
DeleteData();

public void DeleteData() {


btnDelete.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
Integer deletedRows = myDb.deleteData(editTextId.getText().toString());
if(deletedRows > 0)
Toast.makeText(MainActivity.this,"Data
Deleted",Toast.LENGTH_LONG).show();
else
Toast.makeText(MainActivity.this,"Data not
Deleted",Toast.LENGTH_LONG).show();
}
}
);
}
public void UpdateData() {
btnviewUpdate.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
boolean isUpdate = myDb.updateData(editTextId.getText().toString(),
editName.getText().toString(),
editSurname.getText().toString(),editMarks.getText().toString());
if(isUpdate == true)
Toast.makeText(MainActivity.this,"Data
Update",Toast.LENGTH_LONG).show();
else
Toast.makeText(MainActivity.this,"Data not
Updated",Toast.LENGTH_LONG).show();
}
}
);
}
public void AddData() {
btnAddData.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
boolean isInserted = myDb.insertData(editName.getText().toString(),
editSurname.getText().toString(),
editMarks.getText().toString() );
if(isInserted == true)
Toast.makeText(MainActivity.this,"Data
Inserted",Toast.LENGTH_LONG).show();
Roll No. 1320084 BCA-507
else
Toast.makeText(MainActivity.this,"Data not
Inserted",Toast.LENGTH_LONG).show();
}
}
);
}

public void viewAll() {


btnviewAll.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
Cursor res = myDb.getAllData();
if(res.getCount() == 0) {
// show message
showMessage("Error","Nothing found");
return;
}

StringBuffer buffer = new StringBuffer();


while (((Cursor) res).moveToNext()) {
buffer.append("Id :"+ res.getString(0)+"\n");
buffer.append("Name :"+ res.getString(1)+"\n");
buffer.append("Surname :"+ res.getString(2)+"\n");
buffer.append("Marks :"+ res.getString(3)+"\n\n");
}
// Show all data
showMessage("Data",buffer.toString());
}
}
);
}
public void showMessage(String title,String Message){
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setCancelable(true);
builder.setTitle(title);
builder.setMessage(Message);
builder.show();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
}

Output:
Roll No. 1320084 BCA-507

Output:
Roll No. 1320084 BCA-507
Practical No.: 11
Aim: Develop an application that demonstrates the working of a Automation testing using JUnit.
Solution:
junitTesting.java
package tests;
public class UnitTesting {
public int square(int n) {
return n*n;
}
public int sum(int a,int b) {
return a+b;
}}
SumUnit.java
package tests;
public class UnitTesting {
public int square(int n) {
return n*n;
}
public int sum(int a,int b) {
return a+b;
}}
Output:

You might also like