userdao.java

来自「java web网络编程示例,原代码资源」· Java 代码 · 共 184 行

JAVA
184
字号
package edu.liusong.dao;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import edu.liusong.mo.User;

import edu.liusong.common.DBConnect;

public class UserDAO {
	private DBConnect conn;

	private ResultSet rs;

	/**
	 * 根据用户id返回用户
	 * 
	 * @param id
	 * @return
	 */
	public User getById(long id) {
		User user = null;
		try {
			conn = new DBConnect();
			String sql = "select * from user where uid=?";
			String[] values = { String.valueOf(id) };
			rs = conn.executeQuery(sql, values);
			if (rs.next()) {
				user = new User();
				user.setUid(rs.getLong(1));
				user.setName(rs.getString(2));
				user.setPassword(rs.getString(3));
				user.setDepartment(rs.getString(4));
				user.setVerification(rs.getString(5));
				user.setPower(rs.getString(6));
			}
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			if (conn != null)
				try {
					conn.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
		}
		return user;
	}

	/**
	 * 
	 * @param name
	 * @return List
	 */
	public List getUserByName(String name) {
		List<User> list = new ArrayList<User>();
		try {
			conn = new DBConnect();
			String sql = "select * from user where name=?";
			String[] values = { name };
			ResultSet rs = conn.executeQuery(sql, values);
			while (rs.next()) {
				User user = new User();
				user.setUid(rs.getLong(1));
				user.setName(rs.getString(2));
				user.setPassword(rs.getString(3));
				user.setDepartment(rs.getString(4));
				user.setVerification(rs.getString(5));
				user.setPower(rs.getString(6));
				list.add(user);
			}
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			if (conn != null)
				try {
					conn.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
		}
		return list;
	}

	public int update(User user) {
		int i = 0;
		try {
			conn = new DBConnect();
			String sql = "update user set password=?,department=?,verification=?,power=? where uid=?";
			String []values={user.getPassword(),user.getDepartment(),user.getVerification(),user.getPower(),String.valueOf(user.getUid())};
			i=conn.executeUpdate(sql, values);
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			if (conn != null)
				try {
					conn.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
		}
		return i;
	}

	/**
	 * 返回指定verification的用户List
	 * 
	 * @param verification
	 * @return
	 */
	public List getUsersByVerification(String verification) {
		List<User> list = new ArrayList<User>();
		try {
			conn = new DBConnect();
			String sql = "select * from user where verification=? and power!=? order by power desc,department desc";
			String[] values = { verification ,"超级管理员权限"};
			rs = conn.executeQuery(sql, values);
			while (rs.next()) {
				User user = new User();
				user.setUid(rs.getLong(1));
				user.setName(rs.getString(2));
				user.setPassword(rs.getString(3));
				user.setDepartment(rs.getString(4));
				user.setVerification(rs.getString(5));
				user.setPower(rs.getString(6));
				list.add(user);
			}
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			if (conn != null)
				try {
					conn.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
		}
		return list;
	}

	/**
	 * 保存user到数据库,返回影响的行数
	 * 
	 * @param user
	 * @return i
	 */
	public int save(User user) {
		int i = 0;
		try {
			conn = new DBConnect();
			String sql = "insert into user values(?,?,?,?,?,?)";
			String[] values = { String.valueOf(user.getUid()), user.getName(), user.getPassword(),
					user.getDepartment(), user.getVerification(), user.getPower() };
			i = conn.executeUpdate(sql, values);
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			if (conn != null)
				try {
					conn.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
		}
		return i;
	}
	
	// try {
	// conn=new DBConnect();
	// } catch (Exception e) {
	// e.printStackTrace();
	// }finally{
	// if(conn!=null)
	// try {
	// conn.close();
	// } catch (SQLException e) {
	// e.printStackTrace();
	// }
	// }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?