This project designs a database for the museum, a web interface for managing the database
and a smart phone application that can play audio clips of exhibits.
Suppose there is a Bluetooth
beacon near each exhibit in the museum. When a smart phone approaches the Bluetooth
beacon, the app will display the basic information of the exhibits and broadcast the audio
snippets of the exhibits' information.
The project include two part, one of which is the web interface, with functions of:
- Create information about various exhibits
- Update information about various exhibits
- Retrieve information about various exhibits
- Delete information about various exhibits
The other part is iOS smartphone applications, with functions of:
- Detect Bluetooth Beacons around the smart phone
- Display the information of the exhibits corresponding to the Bluetooth beacon
- Play audio snippets of information about each of the museum exhibits
- Send the Bluetooth beacon data to the server and request the exhibits data
Tool | Language | Framework | |
---|---|---|---|
Web interface | Atom | HTML JavaScript CSS |
Bootstrap |
Server system | IntelliJ IDEA | Java | Spring Boot MyBatis Thymeleaf |
iOS application | Xcode | Swift | None |
As this project is supposed to build with a IP address, for server the project needs to set the IP address, port number, and corresponding SSL certificate for the project deployment in the Spring Boot project properties file. The default SSL certificate for this project is our self-signed certificate. For iOS smart phone applications, when the server deployed by the project is changed, the IP address of the deployed server should also be modified in the code. At the same time, the SSL certificate file used in the project also needs to change. Type in terminal
Java-jar museum-0.0.1-snapshot.jar --port=8080 --address=10.28.148.205
to start the project. Address and port will change if you deploy the project on other server. The project is deployed on the BUPT Campus LAN.
Under the premise that server deployment of the system is guaranteed, first open the URL "https://10.28.148.205:8080" into the directory page. It is worth noting that the system is deployed on a LAN server with IP address of 10.28.148.205 and port number of 8080.
After that, we enter the system by default username “admin” and the password “123456”.
Then we come to the Dashboard page, where you can select the contents of the table you want to view from the navigation bar on the left. This is the data of the exhibit table.
This is the data of the author table.
This is the data of the room table.
This is the data of the BluetoothBeacon table.
This is the data of type table.
When we want to add data to a table in the database, we can click the "Add" button on the page.
After that, we will enter the Add page. After filling in the data in the form, click the "Add" button to add the data to the database.
Then we can see the data we just add.
When we want to update data to a table in the database, we can click the "Update" button on the page.
Then we can change the data in the form, and click “update” button to submit.
Here we have changed the date from "2021/4/15" to "2021/4/16", and you can see that the data in the list page has also changed accordingly.
When we want to delete data from the database, we can click “delete” button to delete one column of the data.
Here we choose to delete the data with ID 4.
successfully delete.
When you get into the app, you first need to login. This is the login page.
If you click the register button, you will be taken to the register page.
After you have successfully logged in, you will be taken to the home page.
When you approach a Bluetooth beacon, the interface will automatically jump to the display information corresponding to the beacon, and can provide a button to play an audio snippet for you.
When you click the button, the app will play the audio snippet of the exhibit.