第一次个人作业(安卓学习记录系统)03
具体数据库操作
RecordDao.java
package com.example.app_02.utils;
import com.example.app_02.R;
import com.example.app_02.database.MySQLConnection;
import com.example.app_02.entity.Record;
import com.example.app_02.entity.User;
import java.util.ArrayList;
public class RecordDao extends MySQLConnection {
public int insertRecord(Record record) {
int value = 0;
connect();
try {
String sql = "insert into record(starttime, endtime, record) values(?,?,?)";
preparedStatement = connection.prepareStatement(sql);
//将数据插入数据库中
preparedStatement.setString(1, record.getStartTime());
preparedStatement.setString(2, record.getEndTime());
preparedStatement.setString(3, record.getRecord());
value = preparedStatement.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
} finally {
close();
}
return value;
}
public ArrayList<Record> findRecord() {
connect();
ArrayList<Record> arrayList = new ArrayList<>();
try {
//sql语句。我这里是根据我自己的users表的username字段来查询记录
String sql = "select * from record where 1=1";
//获取用于向数据库发送sql语句的preparedStatement
preparedStatement = connection.prepareStatement(sql);
//根据账号进行查询
//执行sql查询语句并返回结果集
resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
//.next()表示指针先下一行,若有数据则返回true
Record record = new Record(resultSet.getString("starttime"), resultSet.getString("endtime"), resultSet.getString("record"));
arrayList.add(record);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
close();
}
return arrayList;//若传入成功返回账号,失败则为null
}
}
UserDao.java
package com.example.app_02.utils;
import com.example.app_02.database.MySQLConnection;
import com.example.app_02.entity.User;
import com.example.app_02.entity.UserInfo;
public class UserDao extends MySQLConnection {
public User findUserName(String username) {
connect();
User user = null;
try {
//sql语句。我这里是根据我自己的users表的username字段来查询记录
String sql = "select * from user where username=?";
//获取用于向数据库发送sql语句的preparedStatement
preparedStatement = connection.prepareStatement(sql);
//根据账号进行查询
preparedStatement.setString(1, username);
//执行sql查询语句并返回结果集
resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
//.next()表示指针先下一行,若有数据则返回true
user = new User();
user.setUsername(resultSet.getString("username"));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
close();
}
return user;//若传入成功返回账号,失败则为null
}
public User findUser(String username, String password) {
connect();
User user = null;
try {
//sql语句。我这里是根据我自己的users表的username和password字段来查询记录
String sql = "select * from user where username=? and password=?";
//获取用于向数据库发送sql语句的preparedStatement
preparedStatement = connection.prepareStatement(sql);
//根据账号和密码进行查询
preparedStatement.setString(1, username);
preparedStatement.setString(2, password);
resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
user = new User();
user.setUsername(resultSet.getString("username"));
user.setPassword(resultSet.getString("password"));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
close();
}
return user;//若传入成功返回账号和密码,失败则为null
}
public int registerUser(User user) {
int value = 0;
connect();
try {
String sql = "insert into user(username,password) values(?,?)";
preparedStatement = connection.prepareStatement(sql);
//将数据插入数据库中
preparedStatement.setString(1, user.getUsername());
preparedStatement.setString(2, user.getPassword());
value = preparedStatement.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
} finally {
close();
}
return value;
}
public int updateUserStudentid(UserInfo userInfo, String username){
int value = 0;
connect();
try {
String sql = "update user set studentid=? where username=?";
preparedStatement = connection.prepareStatement(sql);
//将数据插入数据库中
preparedStatement.setString(1, userInfo.getStudentid());
preparedStatement.setString(2, username);
value = preparedStatement.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
} finally {
close();
}
return value;
}
}
UserInfoDao.java
package com.example.app_02.utils;
import com.example.app_02.database.MySQLConnection;
import com.example.app_02.entity.User;
import com.example.app_02.entity.UserInfo;
public class UserInfoDao extends MySQLConnection {
public int insertUserInfo(UserInfo userInfo) {
int value = 0;
connect();
try {
String sql = "insert into userinfo(studentid, name, phonenumber, class) values(?,?,?,?)";
preparedStatement = connection.prepareStatement(sql);
//将数据插入数据库中
preparedStatement.setString(1, userInfo.getStudentid());
preparedStatement.setString(2, userInfo.getName());
preparedStatement.setString(3, userInfo.getPhonenumber());
preparedStatement.setString(4, userInfo.getClassname());
value = preparedStatement.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
} finally {
close();
}
return value;
}
}