Android版之数据库增删改查图书信息

Android版之数据库增删改查图书信息,第1张

概述终于做出来了,之前的图书管理系统都是用io流实现的,信息存储到txt文件中,之前因为选修课接触过数据库,一直就希望能安卓与数据库结合一起来巩固一下知识,话不多说,直接看代码:连接数据库的方法:https://www.cnblogs.com/panqiaoyan/p/12869971.html一、设置各种界面xml文件1、activity_

终于做出来了,之前的图书管理系统都是用io流实现的,信息存储到txt文件中,之前因为选修课接触过数据库,一直就希望能安卓与数据库结合一起来巩固一下知识,话不多说,直接看代码:

连接数据库的方法:https://www.cnblogs.com/panqiaoyan/p/12869971.HTML

一、设置各种界面xml文件

1、activity_main.xml

代码:

<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"    androID:layout_wIDth="match_parent"    androID:layout_height="match_parent"    androID:orIEntation="vertical"    androID:background="#FFFFFF">        <TextVIEw            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:layout_margintop="50dp"            androID:layout_gravity="center"            androID:paddingleft="16dp"            androID:paddingRight="16dp"            androID:text="图书管理系统"            androID:textSize="30dp" />    <ImageVIEw        androID:layout_wIDth="wrap_content"        androID:layout_height="wrap_content"        androID:layout_gravity="center"        androID:layout_margintop="20dp"        androID:src="@drawable/pic_logo1"/><!-- 用户名子布局,水平布局,包含一个TextVIEw控件与EditVIEw控件   -->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="5dp">        <TextVIEw            androID:padding="8dp"            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:layout_margintop="30dp"            androID:layout_marginleft="70dp"            androID:text="用户名:"            androID:gravity="center"            androID:textSize="20dp"/>        <EditText            androID:ID="@+ID/username_text"            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_marginleft="0dp"            androID:layout_margintop="30dp"            androID:layout_marginRight="90dp"            androID:layout_weight="2"            androID:background="@drawable/eIDttext_background"            androID:hint="请输入用户名"            androID:maxlines="1"            androID:padding="8dp" />    </linearLayout><!--    密码子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal">        <TextVIEw            androID:padding="8dp"            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:layout_margintop="30dp"            androID:layout_marginleft="70dp"            androID:text="密码:"            androID:gravity="center"            androID:textSize="20dp"/>        <EditText            androID:padding="8dp"            androID:layout_wIDth="0dp"            androID:layout_weight="2"            androID:layout_height="wrap_content"            androID:ID="@+ID/password_text"            androID:layout_margintop="30dp"            androID:layout_marginleft="0dp"            androID:layout_marginRight="90dp"            androID:maxlines="1"            androID:hint="请输入密码"            androID:background="@drawable/eIDttext_background"            androID:inputType="textPassword"/><!--inputType是设置密码输入框的文本是密码的形式,这步很关键-->    </linearLayout><!--    记住密码子布局-->    <linearLayout        androID:layout_wIDth="wrap_content"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal">        <CheckBox            androID:layout_margintop="20dp"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:ID="@+ID/checkBox_text"            androID:layout_marginleft="90dp"            androID:checked="false"            androID:text="记住密码"            androID:textSize="12dp"/>        <CheckBox            androID:layout_margintop="20dp"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:ID="@+ID/password_checkbook"            androID:layout_marginleft="70dp"            androID:checked="false"            androID:text="显示密码"            androID:textSize="12dp"            />    </linearLayout><!--    注册登录按钮子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="30dp"        androID:layout_marginleft="40dp"><!--        注册按钮-->        <button            androID:ID="@+ID/register_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:layout_marginleft="60dp"            androID:backgroundTint="#000000"            androID:paddingRight="20dp"            androID:paddingleft="20dp"            androID:textSize="20dp"            androID:textcolor="#FFFFFF"            androID:text="注册"/><!--登录按钮-->        <button            androID:ID="@+ID/login_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:layout_marginleft="50dp"            androID:backgroundTint="#000000"            androID:paddingRight="20dp"            androID:paddingleft="20dp"            androID:textSize="20dp"            androID:textcolor="#FFFFFF"            androID:text="登录"/>    </linearLayout></linearLayout>
VIEw Code

 

 

 2.注册界面,activity_register.xml

 

 

 代码:

<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"    androID:layout_wIDth="match_parent"    androID:layout_height="match_parent"    androID:orIEntation="vertical">    <TextVIEw        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:gravity="center"        androID:layout_margintop="70dp"        androID:text="用户注册"        androID:textSize="35dp"        />    <!-- 用户名子布局,水平布局,包含一个TextVIEw控件与EditVIEw控件   -->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp">        <TextVIEw            androID:padding="8dp"            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:layout_margintop="30dp"            androID:layout_marginleft="70dp"            androID:text="用户名:"            androID:gravity="right"            androID:textSize="20dp"/>        <EditText            androID:ID="@+ID/newusername_text"            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_marginleft="0dp"            androID:layout_margintop="30dp"            androID:layout_marginRight="90dp"            androID:layout_weight="2"            androID:background="@drawable/eIDttext_background"            androID:hint="请输入用户名"            androID:maxlines="1"            androID:padding="8dp" />    </linearLayout>    <!--    密码子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp">        <TextVIEw            androID:padding="8dp"            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:layout_margintop="30dp"            androID:layout_marginleft="70dp"            androID:text="密码:"            androID:gravity="right"            androID:textSize="20dp"/>        <EditText            androID:padding="8dp"            androID:layout_wIDth="0dp"            androID:layout_weight="2"            androID:layout_height="wrap_content"            androID:ID="@+ID/newpassword_text"            androID:layout_margintop="30dp"            androID:layout_marginleft="0dp"            androID:layout_marginRight="90dp"            androID:maxlines="1"            androID:hint="请输入密码"            androID:background="@drawable/eIDttext_background"            androID:inputType="textPassword"/>        <!--inputType是设置密码输入框的文本是密码的形式,这步很关键-->    </linearLayout><!--    再次确认密码-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp">        <TextVIEw            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_marginleft="0dp"            androID:layout_marginRight="0dp"            androID:layout_margintop="30dp"            androID:layout_weight="1"            androID:gravity="right"            androID:padding="0dp"            androID:paddingleft="0dp"            androID:paddingRight="0dp"            androID:text="确认密码:"            androID:textSize="20dp" />        <EditText            androID:padding="8dp"            androID:layout_wIDth="0dp"            androID:layout_weight="1"            androID:layout_height="wrap_content"            androID:ID="@+ID/new_again_password_text"            androID:layout_margintop="30dp"            androID:layout_marginleft="0dp"            androID:layout_marginRight="90dp"            androID:maxlines="1"            androID:hint="请再次输入密码"            androID:background="@drawable/eIDttext_background"            androID:inputType="textPassword"/>        <!--inputType是设置密码输入框的文本是密码的形式,这步很关键-->    </linearLayout>    <CheckBox        androID:layout_margintop="20dp"        androID:layout_wIDth="wrap_content"        androID:layout_height="wrap_content"        androID:ID="@+ID/new_password_checkbook"        androID:layout_marginleft="220dp"        androID:checked="false"        androID:text="显示密码"        androID:textSize="12dp"        /><!--    注册以及返回按钮子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="30dp"        androID:layout_marginleft="40dp">        <!--        注册按钮-->        <button            androID:ID="@+ID/yes_register_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:layout_marginleft="60dp"            androID:backgroundTint="#000000"            androID:paddingRight="20dp"            androID:paddingleft="20dp"            androID:textSize="20dp"            androID:textcolor="#FFFFFF"            androID:text="注册"/>        <!--返回按钮-->        <button            androID:ID="@+ID/back_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:layout_marginleft="50dp"            androID:backgroundTint="#000000"            androID:paddingRight="20dp"            androID:paddingleft="20dp"            androID:textSize="20dp"            androID:textcolor="#FFFFFF"            androID:text="返回"/>    </linearLayout>    <ImageVIEw        androID:layout_wIDth="68dp"        androID:layout_height="57dp"        androID:layout_gravity="center"        androID:layout_margintop="90dp"        androID:src="@drawable/pic_logo1" /></linearLayout>
VIEw Code

 

3.功能界面,activity_library_function.xml

 

 

代码:

<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"    androID:layout_wIDth="match_parent"    androID:layout_height="match_parent"    androID:orIEntation="vertical">    <button        androID:ID="@+ID/find_button"        androID:layout_wIDth="wrap_content"        androID:layout_height="wrap_content"        androID:text="查询书籍"        androID:textSize="25dp"        androID:textcolor="#FFFFFF"        androID:background="@drawable/eIDttext_background"        androID:backgroundTint="#000000"        androID:layout_margintop="70dp"        androID:layout_gravity="center"        androID:paddingleft="50dp"        androID:paddingRight="50dp"        androID:paddingtop="10dp"        androID:paddingBottom="10dp"/>    <button        androID:ID="@+ID/add_button"        androID:layout_wIDth="wrap_content"        androID:layout_height="wrap_content"        androID:text="增添书籍"        androID:textSize="25dp"        androID:textcolor="#FFFFFF"        androID:background="@drawable/eIDttext_background"        androID:backgroundTint="#000000"        androID:layout_margintop="70dp"        androID:layout_gravity="center"        androID:paddingleft="50dp"        androID:paddingRight="50dp"        androID:paddingtop="10dp"        androID:paddingBottom="10dp"/>    <button        androID:ID="@+ID/alter_button"        androID:layout_wIDth="wrap_content"        androID:layout_height="wrap_content"        androID:text="修改书籍"        androID:textSize="25dp"        androID:textcolor="#FFFFFF"        androID:background="@drawable/eIDttext_background"        androID:backgroundTint="#000000"        androID:layout_margintop="70dp"        androID:layout_gravity="center"        androID:paddingleft="50dp"        androID:paddingRight="50dp"        androID:paddingtop="10dp"        androID:paddingBottom="10dp"/>    <button        androID:ID="@+ID/cancel_button"        androID:layout_wIDth="wrap_content"        androID:layout_height="wrap_content"        androID:text="删除书籍"        androID:textSize="25dp"        androID:textcolor="#FFFFFF"        androID:background="@drawable/eIDttext_background"        androID:backgroundTint="#000000"        androID:layout_margintop="70dp"        androID:layout_gravity="center"        androID:paddingleft="50dp"        androID:paddingRight="50dp"        androID:paddingtop="10dp"        androID:paddingBottom="10dp"/></linearLayout>
VIEw Code

 

4.查询书籍页面,find.xml

 代码:

<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"    androID:orIEntation="vertical"    androID:layout_wIDth="300dp"    androID:layout_height="match_parent"    androID:background="@drawable/eIDttext_background"    androID:backgroundTint="#FFFFFF">    <!--    书籍名称子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp">        <TextVIEw            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:gravity="right"            androID:text="书籍名称:"            androID:textSize="20dp"            androID:textcolor="#000000"            />        <EditText            androID:ID="@+ID/find_bookname_text"            androID:layout_wIDth="0dp"            androID:layout_height="35dp"            androID:layout_weight="1"            androID:layout_marginRight="20dp"            androID:background="@drawable/eIDttext_background"            androID:layout_gravity="center"            androID:textcolor="#000000"            />    </linearLayout>    <!--     *** 作结果文本框-->    <EditText        androID:ID="@+ID/find_result_text"        androID:layout_wIDth="250dp"        androID:layout_height="90dp"        androID:layout_margintop="15dp"        androID:layout_gravity="center"        androID:textcolor="#000000"        androID:background="@drawable/eIDttext_background"/>    <!--    确定以及取消按钮-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="20dp"        androID:gravity="center"        >        <!--        确定按钮-->        <button            androID:ID="@+ID/find_yes_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:backgroundTint="#000000"            androID:paddingRight="10dp"            androID:paddingleft="10dp"            androID:textSize="15dp"            androID:textcolor="#FFFFFF"            androID:text="确定"/>        <!--登录按钮-->        <button            androID:ID="@+ID/find_no_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:backgroundTint="#000000"            androID:paddingRight="10dp"            androID:paddingleft="10dp"            androID:textSize="15dp"            androID:textcolor="#FFFFFF"            androID:text="取消"/>    </linearLayout></linearLayout>
VIEw Code

 

 

5.增添书籍页面,activity_dialog.xml

 

 

 代码:

<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"    androID:orIEntation="vertical"    androID:layout_wIDth="300dp"    androID:layout_height="match_parent"    androID:background="@drawable/eIDttext_background"    androID:backgroundTint="#FFFFFF"><!--    书籍名称子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp">        <TextVIEw            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:gravity="right"            androID:text="书籍名称:"            androID:textSize="20dp"            androID:textcolor="#000000"            />        <EditText            androID:ID="@+ID/add_bookname_text"            androID:layout_wIDth="0dp"            androID:layout_height="35dp"            androID:layout_weight="1"            androID:layout_marginRight="20dp"            androID:background="@drawable/eIDttext_background"            androID:layout_gravity="center"            androID:textcolor="#000000"            />    </linearLayout><!--    书籍编号子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp">        <TextVIEw            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:gravity="right"            androID:text="书籍编号:"            androID:textSize="20dp"            androID:textcolor="#000000"            />        <EditText            androID:ID="@+ID/add_bookID_text"            androID:layout_wIDth="0dp"            androID:layout_height="35dp"            androID:layout_weight="1"            androID:layout_marginRight="20dp"            androID:background="@drawable/eIDttext_background"            androID:layout_gravity="center"            androID:textcolor="#000000"            androID:maxlines="5"            />    </linearLayout><!--    书籍价格子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp">        <TextVIEw            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:gravity="right"            androID:text="书籍价格:"            androID:textSize="20dp"            androID:textcolor="#000000"            />        <EditText            androID:ID="@+ID/add_bookPrice_text"            androID:layout_wIDth="0dp"            androID:layout_height="35dp"            androID:layout_weight="1"            androID:layout_marginRight="20dp"            androID:background="@drawable/eIDttext_background"            androID:layout_gravity="center"            androID:textcolor="#000000"            />    </linearLayout><!--     *** 作结果文本框-->    <EditText        androID:ID="@+ID/add_result_text"        androID:layout_wIDth="250dp"        androID:layout_height="90dp"        androID:layout_margintop="15dp"        androID:layout_gravity="center"        androID:background="@drawable/eIDttext_background"        androID:textcolor="#000000"/><!--    确定以及取消按钮-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="20dp"        androID:gravity="center"        >        <!--        确定按钮-->        <button            androID:ID="@+ID/add_yes_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:backgroundTint="#000000"            androID:paddingRight="10dp"            androID:paddingleft="10dp"            androID:textSize="15dp"            androID:textcolor="#FFFFFF"            androID:text="确定"/>        <!--登录按钮-->        <button            androID:ID="@+ID/add_no_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:backgroundTint="#000000"            androID:paddingRight="10dp"            androID:paddingleft="10dp"            androID:textSize="15dp"            androID:textcolor="#FFFFFF"            androID:text="取消"/>    </linearLayout></linearLayout>
VIEw Code

 

6.修改书籍信息页面,alter_activity.xml

 

 

 代码:

<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"    androID:orIEntation="vertical"    androID:layout_wIDth="300dp"    androID:layout_height="match_parent"    androID:background="@drawable/eIDttext_background"    androID:backgroundTint="#FFFFFF">    <!--    书籍名称子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp"        androID:layout_gravity="center">        <TextVIEw            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:gravity="right"            androID:text="原书籍名称:"            androID:textSize="20dp"            androID:textcolor="#000000"            />        <EditText            androID:ID="@+ID/alter_bookname_text"            androID:layout_wIDth="0dp"            androID:layout_height="35dp"            androID:layout_weight="1"            androID:layout_marginRight="20dp"            androID:background="@drawable/eIDttext_background"            androID:layout_gravity="center"            androID:textcolor="#000000"            />    </linearLayout>    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp"        androID:layout_gravity="center">        <TextVIEw            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:gravity="right"            androID:text="书籍新名称:"            androID:textSize="20dp"            androID:textcolor="#000000"            />        <EditText            androID:ID="@+ID/new_alter_bookname_text"            androID:layout_wIDth="0dp"            androID:layout_height="35dp"            androID:layout_weight="1"            androID:layout_marginRight="20dp"            androID:background="@drawable/eIDttext_background"            androID:layout_gravity="center"            androID:textcolor="#000000"            />    </linearLayout>    <!--    书籍编号子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp">        <TextVIEw            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:gravity="right"            androID:text="书籍新编号:"            androID:textSize="20dp"            androID:textcolor="#000000"            />        <EditText            androID:ID="@+ID/alter_bookID_text"            androID:layout_wIDth="0dp"            androID:layout_height="35dp"            androID:layout_weight="1"            androID:layout_marginRight="20dp"            androID:background="@drawable/eIDttext_background"            androID:layout_gravity="center"            androID:textcolor="#000000"            androID:maxlines="5"            />    </linearLayout>    <!--    书籍价格子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp">        <TextVIEw            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:gravity="right"            androID:text="书籍新价格:"            androID:textSize="20dp"            androID:textcolor="#000000"            />        <EditText            androID:ID="@+ID/alter_bookPrice_text"            androID:layout_wIDth="0dp"            androID:layout_height="35dp"            androID:layout_weight="1"            androID:layout_marginRight="20dp"            androID:background="@drawable/eIDttext_background"            androID:layout_gravity="center"            androID:textcolor="#000000"            />    </linearLayout>    <!--     *** 作结果文本框-->    <EditText        androID:ID="@+ID/alter_result_text"        androID:layout_wIDth="250dp"        androID:layout_height="90dp"        androID:layout_margintop="15dp"        androID:layout_gravity="center"        androID:textcolor="#000000"        androID:background="@drawable/eIDttext_background"/>    <!--    确定以及取消按钮-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="20dp"        androID:gravity="center"        >        <!--        确定按钮-->        <button            androID:ID="@+ID/alter_yes_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:backgroundTint="#000000"            androID:paddingRight="10dp"            androID:paddingleft="10dp"            androID:textSize="15dp"            androID:textcolor="#FFFFFF"            androID:text="确定"/>        <!--登录按钮-->        <button            androID:ID="@+ID/alter_no_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:backgroundTint="#000000"            androID:paddingRight="10dp"            androID:paddingleft="10dp"            androID:textSize="15dp"            androID:textcolor="#FFFFFF"            androID:text="取消"/>    </linearLayout></linearLayout>
VIEw Code

 

7.删除书籍信息页面,cancel_activity.xml

 

 

 代码:

<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"    androID:orIEntation="vertical"    androID:layout_wIDth="300dp"    androID:layout_height="match_parent"    androID:background="@drawable/eIDttext_background"    androID:backgroundTint="#FFFFFF">    <!--    书籍名称子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp">        <TextVIEw            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:gravity="right"            androID:text="书籍名称:"            androID:textSize="20dp"            androID:textcolor="#000000"            />        <EditText            androID:ID="@+ID/cancel_bookname_text"            androID:layout_wIDth="0dp"            androID:layout_height="35dp"            androID:layout_weight="1"            androID:layout_marginRight="20dp"            androID:background="@drawable/eIDttext_background"            androID:layout_gravity="center"            androID:textcolor="#000000"            />    </linearLayout>    <!--    书籍编号子布局-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="15dp">        <TextVIEw            androID:layout_wIDth="0dp"            androID:layout_height="wrap_content"            androID:layout_weight="1"            androID:gravity="right"            androID:text="书籍编号:"            androID:textSize="20dp"            androID:textcolor="#000000"            />        <EditText            androID:ID="@+ID/cancel_bookID_text"            androID:layout_wIDth="0dp"            androID:layout_height="35dp"            androID:layout_weight="1"            androID:layout_marginRight="20dp"            androID:background="@drawable/eIDttext_background"            androID:layout_gravity="center"            androID:textcolor="#000000"            androID:maxlines="5"            />    </linearLayout>    <!--     *** 作结果文本框-->    <EditText        androID:ID="@+ID/cancel_result_text"        androID:layout_wIDth="250dp"        androID:layout_height="90dp"        androID:layout_margintop="15dp"        androID:layout_gravity="center"        androID:textcolor="#000000"        androID:background="@drawable/eIDttext_background"/>    <!--    确定以及取消按钮-->    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:orIEntation="horizontal"        androID:layout_margintop="20dp"        androID:gravity="center"        >        <!--        确定按钮-->        <button            androID:ID="@+ID/cancel_yes_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:backgroundTint="#000000"            androID:paddingRight="10dp"            androID:paddingleft="10dp"            androID:textSize="15dp"            androID:textcolor="#FFFFFF"            androID:text="确定"/>        <!--登录按钮-->        <button            androID:ID="@+ID/cancel_no_button"            androID:layout_wIDth="wrap_content"            androID:layout_height="wrap_content"            androID:backgroundTint="#000000"            androID:paddingRight="10dp"            androID:paddingleft="10dp"            androID:textSize="15dp"            androID:textcolor="#FFFFFF"            androID:text="取消"/>    </linearLayout></linearLayout>
VIEw Code

 

注意:上面的四个功能页面都是采用了对话框式的活动,所以要在AndroIDManist.xml文件中每个活动里加入一句:androID:theme="@style/theme.AppCompat.Dialog"

AndroIDManist.xml代码:

<?xml version="1.0" enCoding="utf-8"?><manifest xmlns:androID="http://schemas.androID.com/apk/res/androID"    package="com.example.library">    <uses-permission androID:name="androID.permission.INTERNET"/>    <uses-permission androID:name="androID.permission.WRITE_EXTERNAL_STORAGE" />    <uses-permission androID:name="androID.permission.MOUNT_UNMOUNT_fileSYstemS" />    <application        androID:allowBackup="true"        androID:icon="@mipmap/ic_launcher"        androID:label="@string/app_name"        androID:roundIcon="@mipmap/ic_launcher_round"        androID:supportsRtl="true"        androID:theme="@style/Apptheme">        <activity androID:name=".cancel"            androID:theme="@style/theme.AppCompat.Dialog"></activity>        <activity            androID:name=".find"            androID:theme="@style/theme.AppCompat.Dialog"></activity>        <activity            androID:name=".Alter_activity"            androID:theme="@style/theme.AppCompat.Dialog" />        <activity            androID:name=".Dialog_Activity"            androID:theme="@style/theme.AppCompat.Dialog" />        <activity androID:name=".library_function" />        <activity androID:name=".Registeractivity" />        <activity androID:name=".MainActivity">            <intent-filter>                <action androID:name="androID.intent.action.MAIN" />                <category androID:name="androID.intent.category.LAUNCHER" />            </intent-filter>        </activity>    </application></manifest>
VIEw Code

 

二、java文件

登录注册界面的java代码:

1.user.java:用户信息类

package com.example.library;/** * * @author Asus */public class User {    private String username;//用户名    private String password;//用户密码    public User(){}    public User(String username, String password) {        this.username = username;        this.password = password;    }    public voID setUsername(String username) {        this.username = username;    }    public voID setPassword(String password) {        this.password = password;    }    public String getUsername() {        return username;    }    public String getpassword() {        return password;    }}
VIEw Code

 

2.userDao.java:登录注册功能接口

package com.example.library;import androID.content.Context;import java.io.fileNotFoundException;/** *这是一个用户登录注册接口 * @author Asus */public interface UserDao {    /**     * 这是判断登录是否成功的方法     * @param username 用户名     * @param password 用户的密码     * @return  用户是否登录成功     */    public abstract boolean isloging(Context context,String username, String password) ;    /**     * 这是注册方法     *     */    public abstract boolean register(Context context,User user);}
VIEw Code

 

3.userDaoImpl.java:登录注册功能实现类

package com.example.library;import androID.content.Context;import androID.content.res.Resources;import androID.os.Environment;import androID.util.Log;import androID.Widget.Toast;import java.io.BufferedReader;import java.io.BuffereDWriter;import java.io.file;import java.io.fileOutputStream;import java.io.fileReader;import java.io.fileWriter;import java.io.IOException;import java.io.inputStream;import java.io.inputStreamReader;import java.io.Reader;import java.util.PropertIEs;import java.util.Set;/** * 用户登录注册功能实现类 * * @author Asus */public class UserDaoImpl implements UserDao {    private static file sdpath= Environment.getExternalStorageDirectory();    private  static file  myfile=new file(sdpath,"panq.txt");    //创建类的时候就创建文件    static {        try {            if(myfile.exists())                System.out.println("文件已存在");            else{                myfile.createNewfile();            }        } catch (IOException ex) {            ex.printstacktrace();        }    }    /**     * 登录功能     * @param context Activity的上面的某一层是Context,所以传值过来的是一个Activity,此处可以写成Context     * @param username 用户名     * @param password 用户的密码     * @return     */    @OverrIDe    public boolean isloging(Context context,String username, String password)  {        boolean flag =false;//判断是否登录成功        BufferedReader br = null;        try{            //读取文件信息,看用户名与密码是否匹配            br = new BufferedReader(new fileReader(myfile));            String line = null;            while ((line = br.readline()) != null) {                String[] date = line.split("=");                System.out.println("用户名:"+date[0]+",密码:"+date[1]);                if (date[0].equals(username) && date[1].equals(password)) {                    //信息匹配,登录成功                        flag = true;                        break;                }            }        }catch (Exception e1){            e1.printstacktrace();        }finally {            if (br != null) {                try {                    br.close();                } catch (IOException e) {                    e.printstacktrace();                }            }        }        return flag;    }    /**     *     * @param context Activity的上面的某一层是Context,所以传值过来的是一个Activity,此处可以写成Context     * @param user 用户信息     * @return     */    @OverrIDe    public boolean register(Context context,User user) {        BuffereDWriter bw=null;        BufferedReader br=null;        boolean isregister=false;//判断是否注册成功        try{            //先读取文件,查看用户名是否已注册            br=new BufferedReader(new fileReader(myfile));            boolean flag=myload(user.getUsername());//通过myload函数判断用户名是否已存在            if(!flag){                //用户名不存在,即可以使用该用户名,注册成功                isregister=true;                //把用户信息写到文件中                bw=new BuffereDWriter(new fileWriter(myfile,true));                bw.write(user.getUsername()+"="+user.getpassword());                bw.newline();                bw.flush();            }        }catch (Exception e){            e.printstacktrace();        }finally {            if (br!=null&bw != null) {                try {                    bw.close();                    br.close();                } catch (IOException e) {                    e.printstacktrace();                }            }        }        return isregister;    }    /**     * 判断用户名是否已存在     * @param username 用户注册时输入的用户名     * @return     * @throws IOException     */    private boolean myload(String username) throws IOException {        boolean flag = false;        PropertIEs p = new PropertIEs();        BufferedReader br = new BufferedReader(new fileReader(myfile));        p.load(br);        br.close();        Set<String> key = p.stringPropertynames();//获取所有已注册的用户名        for (String user : key) {            if (username.equals(user)) {                flag = true;                break;            }        }        return flag;    }}
VIEw Code

 

 4.MainActivity.java

package com.example.library;import androIDx.appcompat.app.AlertDialog;import androIDx.appcompat.app.AppCompatActivity;import androIDx.core.app.ActivityCompat;import androID.app.Activity;import androID.content.Intent;import androID.content.pm.PackageManager;import androID.os.Bundle;import androID.text.inputType;import androID.vIEw.VIEw;import androID.Widget.button;import androID.Widget.CheckBox;import androID.Widget.Compoundbutton;import androID.Widget.EditText;import androID.Widget.Toast;public class MainActivity extends AppCompatActivity implements VIEw.OnClickListener {    private  EditText username; //用户名输入框    private  EditText password; //密码输入框    private button Loginbutton; //登录按钮    private button  Registerbutton; //注册按钮    private CheckBox passwordCheck; //显示密码复选框//    private EditText new_username;//注册页面的用户名输入框//    private EditText new_password;//注册页面的密码输入框//    private EditText new_again_password;//注册页面的再次输入密码框    private static final int REQUEST_EXTERNAL_STORAGE = 1;    private static String[] PERMISSIONS_STORAGE = {            "androID.permission.READ_EXTERNAL_STORAGE",            "androID.permission.WRITE_EXTERNAL_STORAGE" };    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_main);        verifyStoragePermissions(this);        initialize(); //初始化各种控件        ischeck(passwordCheck); //设置密码显示或不显示        Loginbutton.setonClickListener(this);        Registerbutton.setonClickListener(this);    }    /**     * 初始化控件     */    private voID initialize(){        username=(EditText)findVIEwByID(R.ID.username_text); //创建用户名输入框对象        password=(EditText)findVIEwByID(R.ID.password_text); //创建密码输入框对象        Registerbutton=(button)findVIEwByID(R.ID.register_button); //创建注册按钮对象        Loginbutton =(button)findVIEwByID(R.ID.login_button);  //创建登录按钮对象        passwordCheck=(CheckBox)findVIEwByID(R.ID.password_checkbook); //创建显示密码复选框对象    }    /**     * 设置显示密码的点击 *** 作     *     */    private voID ischeck(CheckBox passwordCheck){        passwordCheck.setonCheckedchangelistener(new Compoundbutton.OnCheckedchangelistener() {            @OverrIDe            public voID onCheckedChanged(Compoundbutton buttonVIEw, boolean isChecked) {                if(isChecked){                    //显示明文,即设置为可见的密码                    password.setinputType(inputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);                }else{                    //不显示明文,即设置为不可见的密码                    password.setinputType(inputType.TYPE_CLASS_TEXT | inputType.TYPE_TEXT_VARIATION_PASSWORD);                }            }        });    }    /**     * 点击登录或注册按钮时触发的点击事件     * @param v     */    @OverrIDe    public voID onClick(VIEw v) {        switch (v.getID()){            case R.ID.login_button://登录的点击事件                login();                break;            case R.ID.register_button://注册的点击事件                //点击注册按钮时转去第二个活动页面                Intent intent=new Intent(MainActivity.this,Registeractivity.class);                startActivity(intent);                break;            default:                break;        }    }    /**     * 登录     */    private  voID login()  {        //获取输入的用户名与密码        String usernametext=username.getText().toString().trim();        String passwordtext=password.getText().toString().trim();        //System.out.println(usernametext+" "+passwordtext);        //定义用户名和密码规则        String usernameregex = "[a-zA-Z]{5}";        String passwordregex = "[0-9]{5}";        //校验用户名        if (!(usernametext.matches(usernameregex))) {           // JOptionPane.showMessageDialog(this, "用户名格式不对,请输入5位单词字母)");//            new AlertDialog.Builder(MainActivity.this)//                    .setTitle("error").setMessage("用户名格式不对,请输入5位单词字母")//                    .setPositivebutton("好的",null).show();            Toast.makeText(MainActivity.this,"用户名格式不对,请输入5位单词字母",Toast.LENGTH_LONG).show();            //清空用户名框文本,并把输入光标放回到输入框            this.username.setText("");            this.username.requestFocus();            return;        }        //校验密码        if (!(passwordtext.matches(passwordregex))) {            //JOptionPane.showMessageDialog(this, "密码格式不对,请输入6-12位任意字符)");            Toast.makeText(MainActivity.this,"密码格式不正确,请输入6-12位任意字符",Toast.LENGTH_LONG).show();//              new AlertDialog.Builder(MainActivity.this)//                      .setTitle("error").setMessage("密码格式不正确,请输入6-12位任意字符")//                      .setPositivebutton("好的",null).show();//            //清空用户名框文本,并把输入光标放回到输入框            this.password.setText("");            this.username.requestFocus();            return;        }        //调用登录功能        UserDaoImpl loginImpl=new UserDaoImpl();        boolean flag=loginImpl.isloging(this,usernametext,passwordtext);        if(!flag){            //如果登录不成功            Toast.makeText(MainActivity.this,"用户名或密码错误",Toast.LENGTH_LONG).show();            //将用户名框与密码框清空,并把光标放回框中            this.username.setText("");            this.password.setText("");            this.username.requestFocus();            this.password.requestFocus();        }else{            //登录成功            Toast.makeText(MainActivity.this,"登录成功",Toast.LENGTH_LONG).show();            Intent intent=new Intent(MainActivity.this,library_function.class);            startActivity(intent);        }    }    private voID openPeRSSion() {        verifyStoragePermissions(this);    }    /**     * @des 权限组的获取     * @author DELL     * @time  10:44     */    public voID verifyStoragePermissions(Activity activity) {        try {            //检测是否有写的权限            int permission = ActivityCompat.checkSelfPermission(activity,                    "androID.permission.WRITE_EXTERNAL_STORAGE");            if (permission != PackageManager.PERMISSION_GRANTED) {                // 没有写的权限,去申请写的权限,会d出对话框                ActivityCompat.requestPermissions(activity, PERMISSIONS_STORAGE,REQUEST_EXTERNAL_STORAGE);            }        } catch (Exception e) {            e.printstacktrace();        }    }}
VIEw Code

 

5.RegisetrActivity.java:注册功能的活动代码

package com.example.library;import androIDx.appcompat.app.AppCompatActivity;import androID.content.Intent;import androID.os.Bundle;import androID.text.inputType;import androID.vIEw.VIEw;import androID.Widget.button;import androID.Widget.CheckBox;import androID.Widget.Compoundbutton;import androID.Widget.EditText;import androID.Widget.Toast;public class Registeractivity extends AppCompatActivity implements VIEw.OnClickListener{    private EditText new_username;//注册页面的用户名输入框    private EditText new_password;//注册页面的密码输入框    private EditText new_again_password;//注册页面的再次输入密码框    private button new_register;//注册按钮    private button back;//返回按钮    private CheckBox ispassword;//显示密码按钮    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_register);        init();//初始化控件        ischeck(ispassword);        new_register.setonClickListener(this);        back.setonClickListener(this);    }    /**     * 初始化控件     */    private voID init() {        new_username=(EditText)findVIEwByID(R.ID.newusername_text);//创建注册页面的用户名输入框对象        new_password=(EditText)findVIEwByID(R.ID.newpassword_text);//创建注册页面的密码输入框对象        new_again_password=(EditText)findVIEwByID(R.ID.new_again_password_text);//创建注册页面的再次确认密码输入框对象        new_register=(button)findVIEwByID(R.ID.yes_register_button);//创建注册按钮对象        back=(button)findVIEwByID(R.ID.back_button);//创建返回按钮对象        ispassword=(CheckBox)findVIEwByID(R.ID.new_password_checkbook);//创建显示密码按钮对象    }    private voID register(){        //获取输入的用户名与密码        String usernametext=new_username.getText().toString().trim();        String passwordtext=new_password.getText().toString().trim();        //定义用户名和密码规则        String usernameregex = "[a-zA-Z]{5}";        String passwordregex = "[0-9]{5}";        //校验用户名            if (!(usernametext.matches(usernameregex))) {            // JOptionPane.showMessageDialog(this, "用户名格式不对,请输入5位单词字母)");    //            new AlertDialog.Builder(MainActivity.this)    //                    .setTitle("error").setMessage("用户名格式不对,请输入5位单词字母")    //                    .setPositivebutton("好的",null).show();            Toast.makeText(Registeractivity.this,"用户名格式不对,请输入5位单词字母",Toast.LENGTH_LONG).show();            //清空用户名框文本,并把输入光标放回到输入框            this.new_username.setText("");            this.new_username.requestFocus();            return;        }        //校验密码            if (!(passwordtext.matches(passwordregex))) {            //JOptionPane.showMessageDialog(this, "密码格式不对,请输入6-12位任意字符)");            Toast.makeText(Registeractivity.this,"密码格式不正确,请输入6-12位任意字符",Toast.LENGTH_LONG).show();    //              new AlertDialog.Builder(MainActivity.this)    //                      .setTitle("error").setMessage("密码格式不正确,请输入6-12位任意字符")    //                      .setPositivebutton("好的",null).show();    //            //清空用户名框文本,并把输入光标放回到输入框            this.new_password.setText("");            this.new_password.requestFocus();            return;        }        //校验两次输入的密码是否一致        String again_password=new_again_password.getText().toString().trim();            if(!again_password.equals(new_password)){            Toast.makeText(Registeractivity.this,"密码不一致",Toast.LENGTH_LONG).show();        }        //调用注册功能        User user=new User(usernametext,passwordtext);        UserDaoImpl loginImpl=new UserDaoImpl();        boolean result=loginImpl.register(this,user);//判断是否注册成功        if(result){            Toast.makeText(Registeractivity.this,"注册成功",Toast.LENGTH_LONG).show();        }else {                Toast.makeText(Registeractivity.this, "用户名已存在", Toast.LENGTH_LONG).show();                //清空用户名框文本,并把输入光标放回到输入框                this.new_username.setText("");                this.new_username.requestFocus();        }    }    @OverrIDe    public voID onClick(VIEw v) {        switch (v.getID()){            case R.ID.yes_register_button:                register();//校验输入的用户名与密码                break;            case R.ID.back_button:                Intent intent=new Intent(Registeractivity.this,MainActivity.class);                startActivity(intent);                break;            default:                break;        }    }    /**     * 设置显示密码的点击 *** 作     *     */    private voID ischeck(CheckBox passwordCheck){        passwordCheck.setonCheckedchangelistener(new Compoundbutton.OnCheckedchangelistener() {            @OverrIDe            public voID onCheckedChanged(Compoundbutton buttonVIEw, boolean isChecked) {                if(isChecked){                    //显示明文,即设置为可见的密码                    new_password.setinputType(inputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);                    new_again_password.setinputType(inputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);                }else{                    //不显示明文,即设置为不可见的密码                    new_password.setinputType(inputType.TYPE_CLASS_TEXT | inputType.TYPE_TEXT_VARIATION_PASSWORD);                    new_again_password.setinputType(inputType.TYPE_CLASS_TEXT | inputType.TYPE_TEXT_VARIATION_PASSWORD);                }            }        });    }}
VIEw Code

 

图书管理系统界面实现增删查改功能代码:

6.library_function.java:图书馆功能活动代码

@H_404_256@

package com.example.library;import androIDx.appcompat.app.AppCompatActivity;import androID.content.Intent;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.Widget.button;import java.sql.Connection;public class library_function extends AppCompatActivity implements VIEw.OnClickListener {    private button addbutton;//增添书籍按钮    private button findbutton;//查询书籍按钮    private button alterbutton;//修改书籍信息按钮    private button cancelbutton;//删除书籍按钮    //private Connection con;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_library_function);        init();        //dbConnect();        addbutton.setonClickListener(this);        alterbutton.setonClickListener(this);        findbutton.setonClickListener(this);        cancelbutton.setonClickListener(this);    }//    private voID dbConnect() {//        new Thread(new Runnable() {//            @OverrIDe//            public voID run() {//                BookDaoImpl bookImpl=new BookDaoImpl();//                bookImpl.connect();//            }//        }).start();////    }    @OverrIDe    public voID onClick(VIEw v) {        switch (v.getID()){            case R.ID.add_button:                Intent intent1=new Intent(library_function.this,Dialog_Activity.class);                startActivity(intent1);                break;            case R.ID.find_button:                Intent intent3=new Intent(library_function.this,find.class);                startActivity(intent3);                break;            case R.ID.alter_button:                Intent intent2=new Intent(library_function.this,Alter_activity.class);                startActivity(intent2);                break;            case R.ID.cancel_button:                Intent intent4=new Intent(library_function.this,cancel.class);                startActivity(intent4);                break;            default:                break;        }    }    private voID init(){        addbutton=(button)findVIEwByID(R.ID.add_button);        findbutton=(button)findVIEwByID(R.ID.find_button);        alterbutton=(button)findVIEwByID(R.ID.alter_button);        cancelbutton=(button)findVIEwByID(R.ID.cancel_button);    }}
VIEw Code

 

7.Book.java:书籍的信息类

package com.example.library;public class Book {    private String ID;//书的编号    private String name;//书名    private String price;//书的价格    public  Book() {        super();    }    public Book(String ID, String name, String price) {        super();        ID = ID;        name = name;        this.price = price;    }    public String getID() {        return ID;    }    public voID setID(String ID) {        ID = ID;    }    public String getname() {        return name;    }    public voID setname(String name) {        name = name;    }    public String getPrice() {        return price;    }    public voID setPrice(String price) {        this.price = price;    }    @OverrIDe    public boolean equals(Object obj) {        if (this == obj)            return true;        if (obj == null)            return false;        if (getClass() != obj.getClass())            return false;        Book other = (Book) obj;        if (ID == null) {            if (other.ID != null)                return false;        } else if (!ID.equals(other.ID))            return false;        if (name == null) {            if (other.name != null)                return false;        } else if (!name.equals(other.name))            return false;        if (price == null) {            if (other.price != null)                return false;        } else if (!price.equals(other.price))            return false;        return true;    }    @OverrIDe    public String toString() {        return "Book [ID=" + ID + ", name=" + name + ", price=" + price + "]";    }}
VIEw Code

 

8.BookDao.java:图书管理系统的4个功能接口

package com.example.library;import java.sql.Connection;/** * 图书管理系统功能的接口 * 2020.04.26 */interface BookDao {    public  String addBook(Connection con, Book book) ;//增添书籍    public  String findBook(Connection con,String bookname); //查询书籍    public  String alterBook(Connection con,String Bookname,Book book); //修改书籍内容    public   voID cancelBook(Connection con,String bookname,String ID);//删除书籍}
VIEw Code

 

9.BookDaoImpl.java:功能实现类

VIEw Code

 

10.Dialog_Activity.java:增添书籍功能代码

package com.example.library;import androIDx.appcompat.app.AppCompatActivity;import androID.content.Intent;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.Widget.button;import androID.Widget.EditText;import java.sql.Connection;public class Dialog_Activity extends AppCompatActivity implements VIEw.OnClickListener{    private EditText name;//书名文本框    private EditText ID;//书的编号文本框    private EditText price;//价格文本框    private EditText add_result;// *** 作结果文本框    private button yes_button;//确定文本框    private button no_button;//取消文本框    private Connection con;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_dialog_);        setTitle("增添书籍");//设置标题        init();//控件初始化        yes_button.setonClickListener(this);        no_button.setonClickListener(this);    }    /**     * 初始化各种控件     */    private voID init(){        name=(EditText)findVIEwByID(R.ID.add_bookname_text);        ID=(EditText)findVIEwByID(R.ID.add_bookID_text);        price=(EditText)findVIEwByID(R.ID.add_bookPrice_text);        add_result=(EditText)findVIEwByID(R.ID.add_result_text);        yes_button=(button)findVIEwByID(R.ID.add_yes_button);        no_button=(button)findVIEwByID(R.ID.add_no_button);    }    @OverrIDe    public voID onClick(VIEw v) {        switch(v.getID()){            case R.ID.add_yes_button:                getResult();                break;            case R.ID.add_no_button:                Intent intent=new Intent(Dialog_Activity.this,library_function.class);                startActivity(intent);                break;            default:                break;        }    }    /**     *  *** 作的类     * @param     */    private voID getResult() {        new Thread(new Runnable() {            @OverrIDe            public voID run() {                String bookID=ID.getText().toString().trim();                String bookname=name.getText().toString().trim();                String bookPrice=price.getText().toString().trim();                Book book=new Book(bookID,bookname,bookPrice);                try{                    BookDaoImpl impl=new BookDaoImpl();                    con=impl.connect();                    String result=impl.addBook(con,book);                    add_result.setText(result);                }catch (Exception e){                    e.printstacktrace();                }            }        }).start();    }}
VIEw Code

 

11.find.java:查询书籍信息功能代码

package com.example.library;import androIDx.appcompat.app.AppCompatActivity;import androID.content.Intent;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.Widget.button;import androID.Widget.EditText;import java.sql.Connection;public class find extends AppCompatActivity implements VIEw.OnClickListener {    private EditText findBookname;    private EditText findResult;    private button find_yes;    private button find_no;    private Connection con;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_find);        setTitle("查询书籍");        init();        find_yes.setonClickListener(this);        find_no.setonClickListener(this);    }    private voID init() {        findBookname=(EditText)findVIEwByID(R.ID.find_bookname_text);        findResult=(EditText)findVIEwByID(R.ID.find_result_text);        find_yes=(button)findVIEwByID(R.ID.find_yes_button);        find_no=(button)findVIEwByID(R.ID.find_no_button);    }    @OverrIDe    public voID onClick(VIEw v) {        switch (v.getID()){            case R.ID.find_yes_button:                getresult();                break;            case R.ID.find_no_button:                Intent intent=new Intent(find.this,library_function.class);                startActivity(intent);                break;            default:                break;        }    }    private voID getresult() {        new Thread(new Runnable() {            @OverrIDe            public voID run() {                String find_bookname=findBookname.getText().toString().trim();                try {                    BookDaoImpl impl=new BookDaoImpl();                    con=impl.connect();                    String result=impl.findBook(con,find_bookname);                    if(result!=null){                        findResult.setText(result);                    }else{                        findResult.setText("无查询结果");                    }                }catch(Exception e) {                    e.printstacktrace();                }            }        }).start();    }}
VIEw Code

 

12.alter_activity:修改书籍信息功能代码

package com.example.library;import androIDx.appcompat.app.AppCompatActivity;import androID.content.Intent;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.Widget.button;import androID.Widget.EditText;import java.sql.Connection;public class Alter_activity extends AppCompatActivity implements VIEw.OnClickListener{    private EditText alter_name;//原书名文本框    private EditText alter_new_name;//新书名文本框    private EditText alter_ID;//书的新编号文本框    private EditText alter_price;//新价格文本框    private EditText alter_result;// *** 作结果文本框    private button alter_yes_button;//确定文本框    private button alter_no_button;//取消文本框    private Connection con;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_alter_activity);        setTitle("修改书籍");//设置标题        init();//控件初始化        alter_yes_button.setonClickListener(this);        alter_no_button.setonClickListener(this);    }    /**     * 初始化各种控件     */    private voID init(){        alter_name=(EditText)findVIEwByID(R.ID.alter_bookname_text);        alter_new_name=(EditText)findVIEwByID(R.ID.new_alter_bookname_text);        alter_ID=(EditText)findVIEwByID(R.ID.alter_bookID_text);        alter_price=(EditText)findVIEwByID(R.ID.alter_bookPrice_text);        alter_result=(EditText)findVIEwByID(R.ID.alter_result_text) ;        alter_yes_button=(button)findVIEwByID(R.ID.alter_yes_button);        alter_no_button=(button)findVIEwByID(R.ID.alter_no_button);    }    @OverrIDe    public voID onClick(VIEw v) {        switch(v.getID()){            case R.ID.alter_yes_button:                getResult();                break;            case R.ID.alter_no_button:                Intent intent=new Intent(Alter_activity.this,library_function.class);                startActivity(intent);                break;            default:                break;        }    }    /**     *  *** 作的类     * @param     */    private voID getResult() {        final String bookname=this.alter_name.getText().toString().trim();//获取用户键盘录入的书名        String newbookname=this.alter_new_name.getText().toString().trim();//获取用户输入的新书名        String bookID=this.alter_ID.getText().toString().trim();//获取用户输入的新编号        String bookprice=this.alter_price.getText().toString().trim();//获取用户键盘录入的价格        final Book book=new Book(bookID,newbookname,bookprice);        new Thread(new Runnable() {            @OverrIDe            public voID run() {                try{                    BookDaoImpl impl=new BookDaoImpl();                    con=impl.connect();                    String result=impl.alterBook(con,bookname,book);                    alter_result.setText(result);                }catch (Exception e){                    e.printstacktrace();                }            }        }).start();    }}
VIEw Code

 

13.cancel.java:删除书籍信息功能代码

package com.example.library;import androIDx.appcompat.app.AppCompatActivity;import androID.content.Intent;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.Widget.button;import androID.Widget.EditText;import java.sql.Connection;public class cancel extends AppCompatActivity implements VIEw.OnClickListener{    private EditText cancelBookname;    private EditText cancelID;    private EditText cancelRecult;    private button cancel_yes;    private button cancel_no;    private Connection con;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_cancel);        setTitle("删除书籍");        init();        cancel_yes.setonClickListener(this);        cancel_no.setonClickListener(this);    }    private voID init() {        cancelBookname=(EditText)findVIEwByID(R.ID.cancel_bookname_text);        cancelID=(EditText)findVIEwByID(R.ID.cancel_bookID_text);        cancelRecult=(EditText)findVIEwByID(R.ID.cancel_result_text);        cancel_yes=(button)findVIEwByID(R.ID.cancel_yes_button);        cancel_no=(button)findVIEwByID(R.ID.cancel_no_button);    }    @OverrIDe    public voID onClick(VIEw v) {        switch(v.getID()){            case R.ID.cancel_yes_button:                getResult();                break;            case R.ID.cancel_no_button:                Intent intent=new Intent(cancel.this,library_function.class);                startActivity(intent);                break;        }    }    private voID getResult() {        final  String cancel_bookname=this.cancelBookname.getText().toString().trim();        final String cancel_ID=this.cancelID.getText().toString().trim();        new Thread(new Runnable() {            @OverrIDe            public voID run() {                try{                    BookDaoImpl impl=new BookDaoImpl();                    con=impl.connect();//连接数据库                    impl.cancelBook(con,cancel_bookname,cancel_ID);//调用删除功能                    cancelRecult.setText("删除成功");                }catch (Exception e){                    e.printstacktrace();                }            }        }).start();    }}
VIEw Code

 

结束啦,功夫不负有心人。

总结

以上是内存溢出为你收集整理的Android版之数据库增删改查图书信息全部内容,希望文章能够帮你解决Android版之数据库增删改查图书信息所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1063595.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存