三月二十四日 安卓app打卡开发日志
目前打卡系统基本完成
没有实现的功能有无法统计次数 和 连接本地数据库
我全程连接的远程数据库
package com.example.test_four.utils; import java.sql.Connection;
import java.sql.DriverManager; /**
* function: 数据库工具类,连接数据库用
*/
public class JDBCUtils {
private static final String TAG = "mysql-party-JDBCUtils"; private static String driver = "com.mysql.jdbc.Driver";// MySql驱动 private static String dbName = "party";// 数据库名称 private static String user = "root";// 用户名 private static String password = "123456";// 密码 public static Connection getConn(){ Connection connection = null;
try{
Class.forName(driver);// 动态加载类
String ip = "192.168.180.241";// 写成本机地址,不能写成localhost,同时手机和电脑连接的网络必须是同一个 // 尝试建立到给定数据库URL的连接
connection = DriverManager.getConnection("jdbc:mysql://" + ip + ":3306/" + dbName,
user, password); }catch (Exception e){
e.printStackTrace();
}
return connection;
}
}
还有周一设置目标 周五进行分析 的限制代码
public void 分析(View view) {
Calendar calendar = Calendar.getInstance();
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK); // 判断当前系统日期是否为周五(Calendar.FRIDAY 对应值为6)
if (dayOfWeek == Calendar.SUNDAY) {
String account = getIntent().getStringExtra("account");
Intent intent = new Intent(this, analysis.class);
intent.putExtra("account", account);
startActivity(intent);
} else {
// 如果不是周五,给出提示或者执行其他操作
Toast.makeText(this, "今天不是周五,无法进行下列操作", Toast.LENGTH_SHORT).show();
}
} public void 目标(View view) {
Calendar calendar = Calendar.getInstance();
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK); // 判断当前系统日期是否为周一(Calendar.SUNDAY 对应值为1,Calendar.MONDAY 对应值为2)
if (dayOfWeek == Calendar.SUNDAY) {
String account = getIntent().getStringExtra("account");
Intent intent = new Intent(this, target.class);
intent.putExtra("account", account);
startActivity(intent);
} else {
// 如果不是周一,给出提示或者执行其他操作
Toast.makeText(this, "今天不是周一,无法进行下列操作", Toast.LENGTH_SHORT).show();
}
}
周五的前四天 是周一 只有符合当前系统时间的 前四天 以及账号匹配 才可以进行数据库修改 对目标进行分析
public static boolean ana(User user, String account) {
Connection connection = JDBCUtils.getConn();
Date currentDate = new Date(); // 获取当前系统时间 try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar = Calendar.getInstance();
calendar.setTime(currentDate);
calendar.add(Calendar.DATE, -4); // 往前推四天
Date fourDaysAgo = calendar.getTime(); String fourDaysAgoString = sdf.format(fourDaysAgo); String sql = "SELECT * FROM goal WHERE DATE(date1) = ? AND account = ?";
PreparedStatement ps = connection.prepareStatement(sql);
ps.setString(1, fourDaysAgoString);
ps.setString(2, account);
ResultSet rs = ps.executeQuery(); if (rs.next()) { // 存在符合条件的数据
String insertSql = "INSERT INTO goal(analysis) VALUES (?)";
PreparedStatement insertPs = connection.prepareStatement(insertSql);
insertPs.setString(1, user.getAnalysis()); int result = insertPs.executeUpdate(); if (result > 0) {
return true;
} else {
return false;
}
} else {
return false;
}
} catch (Exception e) {
e.printStackTrace();
Log.e(TAG, "异常ana:" + e.getMessage());
return false;
}
}
三月二十四日 安卓app打卡开发日志的更多相关文章
- 安卓app开发-01-开发工具及环境配置
安卓app开发-01-开发工具及环境配置 请大家根据推荐指数和自己的意愿选择 使用 Android Studio 1.可以使用 Android Studio 下载地址:http://www.andro ...
- 安卓app测试之Monkey日志分析《转载》
安卓app测试之Monkey日志分析 链接:https://www.cnblogs.com/wuzm/p/10965762.html
- 安卓---app自动更新
主要参考:http://blog.csdn.net/jdsjlzx/article/details/46356013/ 效果如下: 大致思路:[原文] 首先,我们要有一个可以被手机访问的后台. 这里有 ...
- 篇2 安卓app自动化测试-初识python调用appium
篇2 安卓app自动化测试-初识python调用appium --lamecho辣么丑 1.1概要 大家好!我是lamecho(辣么丑),上一篇也是<安卓app自动化测 ...
- legend2---开发日志3(thinkphp的入口目录是public的体现是什么)
legend2---开发日志3(thinkphp的入口目录是public的体现是什么) 一.总结 一句话总结:需要深刻理解程序的入口和入口位置都在public目录这里,比如读写文件的初始目录都在这,获 ...
- 安卓APP安全测试基础
学习牛人经验,结合自己的测试,做简单总结: 简介:安卓APP安全测试目前主要覆盖以下方面:1)自身组件安全2)本地敏感数据保护3)web接口安全 一.自身组件安全目前手动.开源或免费工具均能检测此类漏 ...
- 关于安卓APP的启动界面
刚学安卓App开发的朋友们,可能会遇到一个问题,就是人家的App刚进入会有一个页面出现一会儿后消失, 这个页面可以用来打广告,也可以声明App的主题,所以说这个启动页面至关重要,接下来,我把我的代 ...
- 安卓APP测试验证点总结
最近较懒,加之闺女出生后记忆没完全恢复,总是忘东忘西,关于安卓APP测试的验证点还是总结一下,方便设计测试用例时查阅,也给各位博友参考! 1.除APP的正常功能点外,还有以下验证点: 安装/卸载(考虑 ...
- 【转载】安卓APP架构
注:本篇博文转载于 http://my.oschina.net/mengshuai/blog/541314?fromerr=z8tDxWUH 本文介绍了文章作者从事了几年android应用的开发,经历 ...
- 安卓app设计规范整理和Android APP设计篇(转)
随着安卓智能手机不停的更新换代.安卓手机系统越来越完美,屏幕尺寸也越来越大啦!比如最近小米的miui 6的发布和魅族手机系统的更新等等. 以小米MIUI6的安卓手机来说,MIUI6进行了全新设计,坚持 ...
随机推荐
- [BEX] Quasar BEX 提供的那些配置
Manifest.json https://developer.chrome.com/extensions/manifest Background Script & Content Scrip ...
- SpringBoot项目实现日志打印SQL明细(包括SQL语句和参数)几种方式
前言 我们在开发项目的时候,都会连接数据库.有时候遇到问题需要根据我们编写的SQL进行分析,但如果不进行一些开发或者配置的话,这些SQL是不会打印到控制台的,它们默认是隐藏的.下面给大家介绍几种常用的 ...
- dotnet 读 WPF 源代码笔记 为什么自定义的 UserControl 用户控件不能跨程序集继承
从设计上,用户控件 UserControl 就不是一个合适用来多次继承的类型,更不要说进行跨程序集继承自定义的 UserControl 用户控件.对于大部分的用户控件来说,都是采用组合现有的控件来实现 ...
- P10118 『STA - R4』And
P10118 『STA - R4』And 题意:给定 A,B,求 \(\sum y - x\),其中 x,y 满足: x < y x + y = A x & y = B 对于加运算和与运 ...
- 《Effective C++》第三版-4. 设计与声明(Design and Declarations)
目录 条款17:让接口容易被正确使用,不易被误用(Make interfaces easy to use correctly and hard to use incorrectly) 限制类型和值 规 ...
- Linux下ffmpeg库的编译链接
/usr/bin/ld: /usr/local/ffmpeg/lib/libavformat.a(aviobuf.o): in function `ff_crc04C11DB7_update':/ho ...
- 经验之谈:我为什么选择了这样一个激进的缓存大Key治理方案
一.引言 本文将结合我的一次Redis大Key的治理经验,来浅谈一下缓存大Key的治理方案选择.文中主要包括缓存大Key基础知识.大Key治理方案选择.大Key治理案例等,适合有一定开发经验的开发者阅 ...
- 用 C 语言开发一门编程语言 — 异常处理
目录 文章目录 目录 前文列表 异常捕获 定义 Lisp Value 函数 前文列表 <用 C 语言开发一门编程语言 - 交互式解析器l> <用 C 语言开发一门编程语言 - 跨平台 ...
- Kmesh进入CNCF云原生全景图,实现网格治理sidecarless化
本文分享自华为云社区<Kmesh进入CNCF 云原生全景图> ,作者:云容器大未来. 近日,Kmesh 正式进入 CNCF 云原生全景图,位于 Service Mesh 类别下. CNCF ...
- linux 文件扩展权限ACL(访问控制列表)
目录 一.关于文件扩展权限ACL 二.给文件加扩展权限 三.给目录加扩展权限 四.给目录下所有文件都加扩展权限 五.去掉单个acl权限 六.去掉所有acl权限 一.关于文件扩展权限ACL 在linux ...