java定义管理员类manager,GitHub - DingYonghui/javaTribeManageSystemPc: 大一时做的一个管理信息系统,基于java的swing组件,实现了基本功能...

javaTribeManageSystemPc

简介

爪哇部落管理信息系统。大一刚学完JDBC时做的一个管理信息系统,基于java的swing组件,实现了基本crud功能。

功能模块

管理员和普通成员登录

查询和模糊查询

增加用户

修改用户信息

删除用户

普通用户模块还没完成

技术点总结

java swing

jdbc

类似MVC的分层思想

设计模式:工厂模式

面向接口编程

系统演示

管理员后台

登录

a482d54ffba636ae8d503b83b06e8acd.png

管理员首页

e3c1ea16c811f2ba70727c9ae47f128e.png

我的信息页

1033ed66f5d3e5ad0aa9a18a8a528b83.png

设置

135ec62aa655879bc74c339f65cd4113.png

添加用户

b69b97adafd604c4c9e7a289ac4b86af.png

删除用户

delete.jpg

查询用户

dcb140d8237d3d95ae2b3eb9675c01b0.png

修改用户

34690a56047162a7cd51eccb69f94f39.png

功能模块汇总

fc7836206df77bb5e27d21caea649781.png

普通成员前台

登录

a482d54ffba636ae8d503b83b06e8acd.png

普通成员首页

student.jpg

dao层代码演示

IManagerDao.java

package com.dyh.javaTribeManSys.dao;

import java.sql.ResultSet;

import java.util.List;

import com.dyh.javaTribeManSys.pojo.User;

/**

* 接口,定义了关于数据库操作的抽象方法

* @author ding

*

*/

public interface IManagerDao {

//查找

public ResultSet selectLikeId(String id);

public ResultSet selectLikeName(String name);

public ResultSet selectById(String id);

public ResultSet selectByIsManager(String isManager);

public ResultSet selectByGrade_Department_Sex(String grade,String department,String sex);

//插入

public boolean insertUser(User user);

//删除

public boolean deleteUser(String id);

//修改

public boolean updateUser(User user) ;

//修改管理员权限

public boolean updateIsManager(String id,String isManager);

//修改密码

public boolean updatePassword(String id,String password);

//检查id与密码是否正确

public boolean checkUser(String id,String password);

//检查是否为管理员

public boolean isManager(String id);

//得到用户

public User getUser(ResultSet rs) ;

public List getAllUsers(ResultSet rs) ;

//关闭数据库资源

public void closeAll();

}

ManagerDaoImpl.java

package com.dyh.javaTribeManSys.dao.impl;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.util.ArrayList;

import java.util.List;

import com.dyh.javaTribeManSys.dao.IManagerDao;

import com.dyh.javaTribeManSys.pojo.User;

/**

* 管理员关于数据库操作实现类,实现IManagerDao接口:

* 1、完成管理员对数据库的具体操作

* @author ding

*

*/

public class ManagerDaoImpl implements IManagerDao{

private Connection conn = null ;

private PreparedStatement pstmt = null ;

private ResultSet rs = null ;

/**

* 连接数据库

* @return

*/

public Connection getConnection() {

conn = DatabaseConnectionFactory.newInstance().

createDao(DBConstants.DBTYPE_MYSQL).

getConnection();

return conn;

}

/**

* 按学号进行模糊查询

* @param id

* @return

*/

public ResultSet selectLikeId(String id) {

conn = getConnection();

try {

//1、Sql语句

String selectSql = "SELECT * FROM tb_user WHERE id LIKE ?";

//2、创建PrepareStatement对象

pstmt = conn.prepareStatement(selectSql);

//3、设置占位符参数

pstmt.setString(1, "%"+id+"%");

//4、执行查询

rs = pstmt.executeQuery();

} catch (SQLException e) {

e.printStackTrace();

}

return rs;

}

/**

* 按姓名进行模糊查询

* @param name

* @return

*/

public ResultSet selectLikeName(String name) {

conn = getConnection();

try {

//1、Sql语句

String selectSql = "SELECT * FROM tb_user WHERE name LIKE ?";

//2、创建PrepareStatement对象

pstmt = conn.prepareStatement(selectSql);

//3、设置占位符参数

pstmt.setString(1, "%"+name+"%");

//4、执行查询

rs = pstmt.executeQuery();

} catch (SQLException e) {

e.printStackTrace();

}

return rs;

}

/**

* 按学号进行精确查询

*/

public ResultSet selectById(String id) {

conn = getConnection();

try {

//1、Sql语句

String selectSql = "SELECT * FROM tb_user WHERE id = ?";

//2、创建PrepareStatement对象

pstmt = conn.prepareStatement(selectSql);

//3、设置占位符参数

pstmt.setString(1, id);

//4、执行查询

rs = pstmt.executeQuery();

} catch (SQLException e) {

e.printStackTrace();

}

return rs;

}

/**

* 按管理员权限进行精确查询

* @param isManager

* @return

*/

public ResultSet selectByIsManager(String isManager) {

conn = getConnection();

try {

//1、Sql语句

String selectSql = "select * from tb_user where isManager = ?";

//2、创建PrepareStatement对象

pstmt = conn.prepareStatement(selectSql);

//3、设置占位符参数

pstmt.setString(1, isManager);

//4、执行查询

rs = pstmt.executeQuery();

} catch (SQLException e) {

e.printStackTrace();

}

return rs;

}

/**

* 按年级、系别、性别进行条件查询

* @param grade

* @param department

* @param sex

* @return

*/

public ResultSet selectByGrade_Department_Sex(String grade,String department,String sex){

conn = getConnection();

String sql = "select * from tb_user where grade =? and department=? and sex=?";

try {

pstmt = conn.prepareStatement(sql);

pstmt.setString(1, grade);

pstmt.setString(2, department);

pstmt.setString(3, sex);

rs = pstmt.executeQuery();

} catch (SQLException e) {

e.printStackTrace();

}

return rs;

}

/**

* 插入用户

* @param id

* @param name

* @param headImage

* @param sex

* @param grade

* @param department

* @param phone

* @param qq

* @param sign

* @param birthday

* @param address

* @param isManager

* @return

*/

public boolean insertUser(User user) {

conn = getConnection();

int i = 0 ;

try {

//SQL语句

String insertSql = "insert into tb_user(id,password,name,headImage,sex,grade,department,phone,qq,sign,birthday,address,isManager) values(?,?,?,?,?,?,?,?,?,?,?,?,?)";

//创建PrepareStatement对象

pstmt = conn.prepareStatement(insertSql);

//设置参数

pstmt.setString(1, user.getId());

pstmt.setString(2, user.getPassword());

pstmt.setString(3, user.getName());

pstmt.setString(4, user.getHeadImage());

pstmt.setString(5, user.getSex());

pstmt.setString(6, user.getGrade());

pstmt.setString(7, user.getDepartment());

pstmt.setString(8, user.getPhone());

pstmt.setString(9, user.getQQ());

pstmt.setString(10, user.getSign());

pstmt.setString(11, user.getBirthday());

pstmt.setString(12, user.getBirthday());

pstmt.setString(13, user.getIsManager());

//执行添加

i = pstmt.executeUpdate();

} catch (SQLException e) {

System.out.println("插入数据库时出错:");

e.printStackTrace();

} catch (Exception e) {

System.out.println("插入时出错:");

e.printStackTrace();

}

if(i>0){

return true ;

}else{

return false ;

}

}

/**

* 按学号删除

* @param id

* @return

*/

public boolean deleteUser(String id) {

conn = getConnection();

int i = 0;

try {

//SQL语句

String deleteSql = "delete from tb_user where id=?";

//创建PreparedStatement语句

pstmt = conn.prepareStatement(deleteSql);

//为占位符赋值

pstmt.setString(1, id);

//执行SQL语句

i = pstmt.executeUpdate();

} catch (SQLException e) {

System.out.println("插入数据库时出错:");

e.printStackTrace();

} catch (Exception e) {

System.out.println("插入时出错:");

e.printStackTrace();

}

if(i>0){

return true ;

}else{

return false;

}

}

/**

* 修改个人信息

* @param id

* @param name

* @param headImage

* @param sex

* @param grade

* @param department

* @param phone

* @param qq

* @param sign

* @param birthday

* @param address

* @return

*/

public boolean updateUser(User user) {

conn = getConnection();

int i = 0;

try {

String updateSql = "update tb_user set name=?,"

+ "headImage=?,sex=?,grade=?,department=?,phone=?,"

+ "qq=?,sign=?,birthday=?,address=? where id=?";

PreparedStatement pstmt = conn.prepareStatement(updateSql);

pstmt.setString(1, user.getName());

pstmt.setString(2, user.getHeadImage());

pstmt.setString(3, user.getSex());

pstmt.setString(4, user.getGrade());

pstmt.setString(5, user.getDepartment());

pstmt.setString(6, user.getPhone());

pstmt.setString(7, user.getQQ());

pstmt.setString(8, user.getSign());

pstmt.setString(9, user.getBirthday());

pstmt.setString(10, user.getAdress());

pstmt.setString(11, user.getId());

i = pstmt.executeUpdate() ;

} catch (SQLException e) {

System.out.println("插入数据库时出错:");

e.printStackTrace();

} catch (Exception e) {

System.out.println("插入时出错:");

e.printStackTrace();

}

if(i>0){

return true;

}else{

return false ;

}

}

/**

* 修改管理员权限

* @param id

* @param isManager

* @return

*/

public boolean updateIsManager(String id,String isManager) {

conn = getConnection();

int i = 0 ;

try {

String updateSql = "update tb_user set isManager=? where id=?";

pstmt = conn.prepareStatement(updateSql);

pstmt.setString(1, isManager);

pstmt.setString(2, id);

i = pstmt.executeUpdate() ;

} catch (SQLException e) {

System.out.println("插入数据库时出错:");

e.printStackTrace();

} catch (Exception e) {

System.out.println("插入时出错:");

e.printStackTrace();

}

if(i>0){

return true ;

}else{

return false ;

}

}

/**

* 修改密码

* @param id

* @param password

* @return

*/

public boolean updatePassword(String id,String password) {

conn = getConnection();

int i = 0 ;

try {

String updateSql = "update tb_user set password=? where id=?";

pstmt = conn.prepareStatement(updateSql);

pstmt.setString(1, password);

pstmt.setString(2, id);

i = pstmt.executeUpdate() ;

} catch (SQLException e) {

System.out.println("插入数据库时出错:");

e.printStackTrace();

} catch (Exception e) {

System.out.println("插入时出错:");

e.printStackTrace();

}

if(i>0){

return true ;

}else{

return false ;

}

}

/**

* 登陆---检查用户名是否与密码相符

* @param id

* @param password

* @return

*/

public boolean checkUser(String id,String password){

boolean yn = false;

try {

//1-2得到数据库连接对象

conn = getConnection();

//3、SQL语句

String checkSql = "select * from tb_user where id=? and password=?";

//4、创建PrepareStatement对象

pstmt = conn.prepareStatement(checkSql);

//5、占位符设置参数

pstmt.setString(1, id);

pstmt.setString(2, password);

//6、执行查询

ResultSet rs = pstmt.executeQuery();

if(rs.next()){

yn = true;

}

} catch (Exception e) {

e.printStackTrace();

}

return yn;

}

/**

* 检查是否为管理员

* @param id

* @return

*/

public boolean isManager(String id){

ResultSet rs = selectById(id) ;

User user = getUser(rs);

closeAll();

if(user != null){

String isManager = user.getIsManager();

if(isManager!=null){

if(isManager.trim().equals("是"))

return true;

else

return false;

}else{

return false;

}

}

else{

return false;

}

}

/**

* 得到一个指定用户

* @param rs

* @return

*/

public User getUser(ResultSet rs) {

User user = null;

try {

while (rs.next()) {

user = new User();

user.setId(rs.getString("id"));

user.setPassword(rs.getString("password"));

user.setName(rs.getString("name"));

user.setHeadImage(rs.getString("headImage"));

user.setSex(rs.getString("sex"));

user.setGrade(rs.getString("grade"));

user.setDepartment(rs.getString("department"));

user.setPhone(rs.getString("phone"));

user.setQQ(rs.getString("qq"));

user.setSign(rs.getString("sign"));

user.setBirthday(rs.getString("birthday"));

user.setAdress(rs.getString("address"));

user.setIsManager(rs.getString("isManager"));

}

} catch (SQLException e) {

e.printStackTrace();

}

return user;

}

/**

* 得到所有用户

* @param rs

* @return

*/

public List getAllUsers(ResultSet rs) {

List users = new ArrayList();

try {

while ( rs.next() ) {

User user = new User();

user.setId(rs.getString("id"));

user.setPassword(rs.getString("password"));

user.setName(rs.getString("name"));

user.setHeadImage(rs.getString("headImage"));

user.setSex(rs.getString("sex"));

user.setGrade(rs.getString("grade"));

user.setDepartment(rs.getString("department"));

user.setPhone(rs.getString("phone"));

user.setQQ(rs.getString("qq"));

user.setSign(rs.getString("sign"));

user.setBirthday(rs.getString("birthday"));

user.setAdress(rs.getString("address"));

user.setIsManager(rs.getString("isManager"));

users.add(user);

}

} catch (SQLException e) {

e.printStackTrace();

}

return users;

}

/**

* 关闭数据库,释放资源

*/

public void closeAll(){

//关闭结果集

if(rs!=null){

try {

rs.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

//关闭statement

if(pstmt!=null){

try {

pstmt.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

//关闭 数据库连接

if(conn!=null){

try {

conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

}

JDBC

dao.jpg

如何交流、反馈

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
简单易懂的代码public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String method=request.getParameter("method"); if(method!=null){ if(method.equals("addcategory")){ addCategory(request, response); }else if(method.equals("categorylist")){ categoryList(request, response); }else if(method.equals("toUpdate")){ toUpdate(request, response); }else if(method.equals("updateCategory")){ updateCategory(request, response); } } else{ request.setAttribute("msg", "路径有误请重试"); request.getRequestDispatcher("/404.jsp").forward(request, response); } } public void addCategory(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name=request.getParameter("name"); String sortNo=request.getParameter("sortNo"); if(name==null||name.equals("")){ request.setAttribute("msg", "请输入分区名称"); request.getRequestDispatcher("/admin/category/addCategory.jsp").forward(request, response); }else if(sortNo==null||sortNo.equals("")){ request.setAttribute("msg", "请输入分区序号"); request.getRequestDispatcher("/admin/category/addCategory.jsp").forward(request, response); }else{ CategoryDao dao=new CategoryImpl(); Category category=new Category(); category.setName(name); category.setSortNo(Integer.parseInt(sortNo)); category.setState(1); boolean flag=dao.addCategory(category); if(flag){ categoryList(request, response); }else{ request.setAttribute("msg", "添加失败请重试"); request.getRequestDispatcher("/admin/category/addCategory.jsp").forward(request, response); } } }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值