> # ♻️ 资源
> **大小:** 3.44MB
> **文档链接:**[**https://www.yuque.com/sxbn/ks/100010257**](https://www.yuque.com/sxbn/ks/100010257)
> **➡️ 资源下载:**[**https://download.csdn.net/download/s1t16/87354354**](https://download.csdn.net/download/s1t16/87354354)
> **注:更多内容可关注微信公众号【神仙别闹】,如当前文章或代码侵犯了您的权益,请私信作者删除!**
> ![qrcode_for_gh_d52056803b9a_344.jpg](https://cdn.nlark.com/yuque/0/2023/jpeg/2469055/1692147256036-49ec7e0c-5434-4963-b805-47e7295c9cbc.jpeg#averageHue=%23a3a3a3&clientId=u8fb96484-770e-4&from=paste&height=140&id=u237e511a&originHeight=344&originWidth=344&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=8270&status=done&style=none&taskId=ud96bf5f7-fe85-4848-b9c2-82251181297&title=&width=140.1999969482422)
# 基于Android和MySQL的邮件检索
## 一、整体实现基本情况
### 1、 问题描述
通过Java和MySQL实现检索安然公司的51万封邮件。
### 2、 实验环境
IDE:IntelliJIDEA,AndroidStudio工具:MySQL,Navicat服务器:腾讯云
### 3、 实现简述
本次实验主要是在本地建好MySQL表,用Java程序读取51万封邮件并做相应切割后存入数据库中,然后购买了一台腾讯云服务器,在服务器上部署MySQL,使用工具Navicat将本地数据库部署上云。再在AndroidStudio上实现UI界面,并用客户端直连服务器数据库进行查询操作。
![78c03fc34b03d6388969b74b040612f6.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008142043-7dde7d56-d39b-4c0a-b234-c3c736327a8c.png#averageHue=%23f7f6f6&clientId=u39662d01-3623-4&from=paste&height=83&id=ucd5559e3&originHeight=104&originWidth=951&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=396440&status=done&style=none&taskId=u9102b4a2-7768-4a1e-9b77-8a098073ba3&title=&width=760.8)
实现主要包含2个主要Java文件。
(1)【IDEA】SaveDataToMysql.java:读取所有文件并进行关键信息的切割,连接MySQL数据库,将路径(Path)、标题(Subject)、发件人(Author)、收件人(Addressee)、邮件内容(Content)存入MySQL中。将517401封邮件的信息全部存入MySQL中。
![1b870fc63fc7ea12b85a69103f695a5a.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008160430-2af283f9-c118-428e-8b94-3e0ecbf12e0f.png#averageHue=%23080706&clientId=u39662d01-3623-4&from=paste&height=294&id=u1dd8c801&originHeight=368&originWidth=578&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=128683&status=done&style=none&taskId=uac1e48c5-2999-48a5-aeb7-cec3dc8b29c&title=&width=462.4)
MySQL建表:
```sql
CREATE TABLE`Email`(
`Path` VARCHAR(500)NOTNULL,
`Subject` VARCHAR(500),
`Author` VARCHAR(500),
`Addressee` VARCHAR(500),
`Content` LONGTEXT,PRIMARYKEY(`Path`));
```
(2)【AndroidStudio】MainActivity.java:实现交互界面,用户输入检索类型和检索内容,有未输入的则报错。输入合法则连接服务器上的MySQL后进行检索,并将结果返回给用户。
### 4、 效果展示
![dd18359204605fd1407b8865e7cb5864.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008314585-9ed592d6-332c-4053-b3ec-cd2274b1c389.png#averageHue=%234b4b4b&clientId=u39662d01-3623-4&from=paste&height=493&id=u678b8518&originHeight=616&originWidth=285&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=704070&status=done&style=none&taskId=u6757b646-4161-4a27-8059-e867a14eaa6&title=&width=228)![350f5e74f395e9f6b387618226e63f75.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008314667-2b35525d-f2b0-4581-8445-54dfcd38a058.png#averageHue=%233a3a38&clientId=u39662d01-3623-4&from=paste&height=494&id=uf9c889d7&originHeight=618&originWidth=285&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=706364&status=done&style=none&taskId=u7a17b581-9a73-4203-b540-3cdaa950b36&title=&width=228)![d3d5b8e93a22f5e59321dcc7c0ab2490.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008314729-8345ed83-ec4a-49d7-b4ee-214e03665f26.png#averageHue=%23136b62&clientId=u39662d01-3623-4&from=paste&height=506&id=ub4aa6f68&originHeight=632&originWidth=292&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=740082&status=done&style=none&taskId=u8dc0f49e-c077-4537-be42-ad0f758d6ad&title=&width=233.6)![809d65ad0da63cb1cb73878d4f698a90.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008314802-93c3ea68-c157-4987-b4da-b48bca8cbea6.png#averageHue=%232d3431&clientId=u39662d01-3623-4&from=paste&height=505&id=u15c11ace&originHeight=631&originWidth=291&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=736377&status=done&style=none&taskId=u8342fc59-b60b-4485-a53f-136db3b1de0&title=&width=232.8)
## 二、【IDEA】SaveDataToMysql.java
### 1、 基本情况
包含3个步骤
(1)getFiles():获取所有邮件的绝对路径
(2)getData():遍历所有邮件,截取关键信息(标题、发件人、邮件内容)。
(3)InsertMysql():数据插入MySQL中。
![ab4d6b93f8bdf43fed06e828ac06a52f.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008388782-e3589856-661e-4433-b127-d0f48f504317.png#averageHue=%23312f2d&clientId=u39662d01-3623-4&from=paste&height=139&id=u41404995&originHeight=174&originWidth=548&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=57239&status=done&style=none&taskId=u21a3e883-4a5f-4c33-9c3a-e77fc0615fc&title=&width=438.4)![667ac31c1be2c7c7ef5569e9afcf5bbd.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008388789-41be2a20-afb4-476f-8b24-12fee3b7552a.png#averageHue=%232f2e2c&clientId=u39662d01-3623-4&from=paste&height=119&id=u9dbdfea2&originHeight=149&originWidth=659&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=48645&status=done&style=none&taskId=udf158157-4e9c-4042-bf58-947c523e136&title=&width=527.2)
### 2、 getFiles()
将path下所有文件的绝对路径保存在一个List中并返回。
![28cd6e02b05b37905270f17879f0cb91.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008404598-800454ad-3fcf-4f9a-8fae-dadbee794c34.png#averageHue=%232d2c2b&clientId=u39662d01-3623-4&from=paste&height=308&id=u39cf3bfc&originHeight=385&originWidth=512&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=77421&status=done&style=none&taskId=u5c7bcdcb-aba7-407e-a60d-7254a23f723&title=&width=409.6)
### 3、 getData()
该函数遍历所有邮件,截取有用信息,存成一个DATA类的示例,最后返回一个List
![456b551a211e74ddd9e19c1648956e9e.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008433994-2ab1af52-0204-4760-92c7-517fb1bf5844.png#averageHue=%232c2b2b&clientId=u39662d01-3623-4&from=paste&height=899&id=u9330c566&originHeight=1124&originWidth=837&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=3770438&status=done&style=none&taskId=u0f2463c4-7261-4a8b-823a-93549b1c474&title=&width=669.6)![e3f2feabf0fae2262932d6dbb14e941d.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008433352-f4f87cf0-f954-4789-9d8f-2e022296f062.png#averageHue=%232d2c2b&clientId=u39662d01-3623-4&from=paste&height=620&id=u900a6dac&originHeight=775&originWidth=837&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=2599746&status=done&style=none&taskId=ud23d074a-e4a8-45b8-ba1e-6f6f3ab3969&title=&width=669.6)![aa96d906f94ad7ca373efa3e0a10b757.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008431731-3ab975a3-0c9d-4383-8bef-7f84f90fda3d.png#averageHue=%232d2c2b&clientId=u39662d01-3623-4&from=paste&height=367&id=u0dd52932&originHeight=459&originWidth=306&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=52629&status=done&style=none&taskId=u08c57c2c-b66a-4b63-94cc-4a19570dacc&title=&width=244.8)
### 4、 InsertMysql()
List中的数据插入MySQL中。
![1fcd194e9ec64aaef23a3d48adbd1bf7.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1707008464436-b43cd573-08c2-4be6-8e5d-0eba87fa958d.png#averageHue=%232c2b2b&clientId=u39662d01-3623-4&from=paste&height=949&id=u6571e
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
详情介绍:https://www.yuque.com/sxbn/ks/100010257 基于 Android 和 MySQL 的邮件检索,本次实验主要是在本地建好 MySQL 表,用 Java 程序读取 51 万封邮件并做相应切割 后存入数据库中,再在 Android Studio 上实现 UI 界面,并用客户端直连服务器数 据库进行查询操作。
资源推荐
资源详情
资源评论
收起资源包目录
100010257-基于Android+MySQL的邮件检索.zip (44个子文件)
amemailsearch
LICENSE 1KB
JavaHW2-1613415.apk 1.85MB
作业描述.pptx 328KB
SaveDataToMysql.java 6KB
实验报告.pdf 655KB
安卓代码
gradle.properties 728B
gradle
wrapper
gradle-wrapper.jar 53KB
gradle-wrapper.properties 232B
app
src
androidTest
java
com
example
javahomework2
ExampleInstrumentedTest.java 734B
test
java
com
example
javahomework2
ExampleUnitTest.java 386B
main
java
com
example
javahomework2
MainActivity.java 5KB
res
mipmap-xxhdpi
ic_launcher_round.png 10KB
ic_launcher.png 6KB
mipmap-hdpi
ic_launcher_round.png 5KB
ic_launcher.png 3KB
drawable-v24
ic_launcher_foreground.xml 2KB
mipmap-anydpi-v26
ic_launcher.xml 272B
ic_launcher_round.xml 272B
mipmap-mdpi
ic_launcher_round.png 3KB
ic_launcher.png 2KB
mipmap-xxxhdpi
ic_launcher_round.png 15KB
ic_launcher.png 9KB
mipmap-xhdpi
ic_launcher_round.png 7KB
ic_launcher.png 4KB
values
colors.xml 208B
strings.xml 76B
styles.xml 363B
layout
activity_main.xml 4KB
drawable
ic_launcher_background.xml 5KB
AndroidManifest.xml 785B
proguard-rules.pro 751B
libs
mysql-connector-java-5.1.48.jar 983KB
build.gradle 1KB
.gitignore 7B
gradlew.bat 2KB
build.gradle 558B
.idea
runConfigurations.xml 564B
misc.xml 357B
gradle.xml 626B
encodings.xml 135B
settings.gradle 15B
gradlew 5KB
.gitignore 203B
README.md 14KB
共 44 条
- 1
资源评论
神仙别闹
- 粉丝: 2712
- 资源: 7668
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功