項(xiàng)目中JDBC代碼的設(shè)計(jì):
DAO:Data Access Object 數(shù)據(jù)訪問對象
? ? ? ? 將一組操作定義在一個(gè)類中
? ? ? ? 每一個(gè)獨(dú)立的功能定義一個(gè)方法
User模塊登錄和注冊:
/**保存賬號信息
*@param user 賬號信息?
*@return int 添加記錄數(shù)
*/
public int save(User user){
????String sql = "INSERT INTO ajia_user(username,password,email,phone,created,updated)VALUES(?,?,?,?,?,?)";
????int result = 0;
????Connection conn = null;
????try {
????????conn = JdbcUtil.getConn();
????????PreparedStatement pstmt = conn.prepareStatement(sql);
????????pstmt.setString(1, user.getUserName());
????????pstmt.setString(2, user.getPassword());
????????pstmt.setString(3, user.getEmail());
????????pstmt.setString(4, user.getPhone());
????????pstmt.setTimestamp(5, user.getCreated());
????????pstmt.setTimestamp(6, user.getUpdated());
????????result = pstmt.executeUpdate();
????} catch (SQLException e) {
????????e.printStackTrace();
????}finally{
? ? ? ? ? JdbcUtil.close(conn);
} return result;
}
根據(jù)賬號查詢 驗(yàn)證賬號是否被占用:
/**
* 根據(jù)賬號查詢 驗(yàn)證賬號是否被占用
* @param userName 賬號
* @return boolean 是否存在
*/
public boolean findByUserName(String userName){
????String sql = "SELECT username FROM ajia_user WHERE username=?";
????boolean isUsed = false;
????Connection conn = null;
????try {
????????conn = JdbcUtil.getConn();
????????PreparedStatement pstmt = conn.prepareStatement(sql);
????????pstmt.setString(1, userName);
????????ResultSet rs = pstmt.executeQuery();
????????if(rs.next()){ isUsed = true;
? ? ? } } catch (SQLException e) {
????????????e.printStackTrace();
????????}finally{
????????JdbcUtil.close(conn);
????????} return isUsed;
}