基于JavaSwing、MySQL的农村人口管理系统

集成开发环境:IntelliJ IDEA;
使用插件:Scene Builder;
数据库:MySQL 8.0.23;
技术栈:JavaFx、SpringBoot,mybatisPlus
适用于课程设计,大作业,项目练习,学习演示等

简介

该系统角色采用了管理员和操作员模块,其中管理员模块对贫困种类和身份以及操作员进行管理(增删改查),操作员模块对户主及其户主下的家庭成员进行了管理!

界面展示

操作员涉及页面

登录页面

注册页面

户主管理页面

人口管理页面

管理员涉及页面

登录页面

员工(操作员)管理页面

贫困等级及工作地管理页面

代码(部分)

启动类

package com.aliyev;

import com.aliyev.util.PageName;
import com.aliyev.view.AdminIndexView;
import com.aliyev.view.AdminLoginView;
import com.aliyev.view.LoginView;
import de.felixroske.jfxsupport.AbstractFxmlView;
import de.felixroske.jfxsupport.AbstractJavaFxApplicationSupport;
import javafx.scene.image.Image;
import javafx.stage.Stage;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.stereotype.Service;

import java.util.Arrays;
import java.util.Collection;

@SpringBootApplication
@Slf4j
public class RpstApplication extends AbstractJavaFxApplicationSupport {

    public static void main(String[] args) {
        launch(RpstApplication.class, LoginView.class,args);
        log.info("项目启动~~~");
    }

    @Override
    public void beforeInitialView(Stage stage, ConfigurableApplicationContext ctx) {
        stage.setTitle(PageName.LOGIN);
        stage.setResizable(false);
    }

    /**
     * 修改默认图标
     * @return
     */
    @Override
    public Collection<Image> loadDefaultIcons() {
        return Arrays.asList(new Image("images/icon.png"));
    }

    /**
     * 设置窗口标题
     * @param title
     */
    public static void setTitle(String title){
        RpstApplication.getStage().setTitle(title);
    }

    public static void showNewView(Class<? extends AbstractFxmlView> newView,String title){
        RpstApplication.showView(newView);
        setTitle(title);
    }
}

管理员登录

package com.aliyev.controller.login;

/**
 * Sample Skeleton for 'adminLogin.fxml' Controller Class
 */

import com.aliyev.RpstApplication;
import com.aliyev.domain.Employee;
import com.aliyev.service.EmployeeService;
import com.aliyev.util.Rpstutils;
import com.aliyev.util.PageName;
import com.aliyev.util.SpringContextUtil;
import com.aliyev.view.AdminIndexView;
import com.aliyev.view.IndexView;
import com.aliyev.view.LoginView;
import de.felixroske.jfxsupport.FXMLController;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.*;
import javafx.scene.input.MouseEvent;
import javafx.stage.Stage;
import lombok.extern.slf4j.Slf4j;

import java.net.URL;
import java.util.List;
import java.util.Optional;
import java.util.ResourceBundle;

@FXMLController
@Slf4j
public class AdminLoginController implements Initializable {


    @FXML // fx:id="login"
    private Button login; // Value injected by FXMLLoader

    @FXML // fx:id="button_href"
    private Button button_href; // Value injected by FXMLLoader


    @FXML // fx:id="username"
    private TextField username; // Value injected by FXMLLoader

    @FXML // fx:id="password"
    private PasswordField password; // Value injected by FXMLLoader


    public EmployeeService employeeService;
    @FXML
    void href(ActionEvent event) {
        RpstApplication.showView(LoginView.class);
        Stage stage = RpstApplication.getStage();
        stage.setTitle(PageName.LOGIN);
    }

    /**
     * 管理员登录
     * @param event
     */
    @FXML
    void login(ActionEvent event) {
        String username = this.username.getText().trim();
        String password = this.password.getText().trim();
        if (username.equals("")||password.equals("")){
            Rpstutils.getAlter(Alert.AlertType.WARNING,"请输入账号和密码后再登录!!!");
            return;
        }
        List<Employee> user = employeeService.getOneEmployee(username,0);
        if(user.size()!=0){
            for (Employee employee : user) {
                if(password.equals(employee.getPassword())){
                    Stage window = (Stage) this.username.getScene().getWindow();
                    window.close();
                    RpstApplication.showView(AdminIndexView.class);
                    Stage stage = RpstApplication.getStage();
                    stage.setTitle(PageName.INDEX);
                }else{
                    Rpstutils.getAlter(Alert.AlertType.WARNING,"用户名或密码错误!!!");
                }
            }
        }else {
            Rpstutils.getAlter(Alert.AlertType.ERROR,"该账号不存在!!1");
        }
    }

    @Override
    public void initialize(URL location, ResourceBundle resources) {
        employeeService = SpringContextUtil.getBean(EmployeeService.class);
    }
}

操作员登录

package com.aliyev.controller.login;

import com.aliyev.RpstApplication;
import com.aliyev.domain.Employee;
import com.aliyev.service.EmployeeService;
import com.aliyev.util.PageName;
import com.aliyev.util.Rpstutils;
import com.aliyev.util.SpringContextUtil;
import com.aliyev.view.AdminIndexView;
import com.aliyev.view.AdminLoginView;
import com.aliyev.view.IndexView;
import com.aliyev.view.RegisterView;
import de.felixroske.jfxsupport.FXMLController;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.*;
import javafx.scene.input.MouseEvent;
import javafx.stage.Stage;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;

import java.net.URL;
import java.util.List;
import java.util.ResourceBundle;

@FXMLController
@Slf4j
public class LoginController implements Initializable {
    @FXML
    private Button login;

    @FXML
    private Button redister;

    @FXML
    private Label admin;

    @FXML
    private TextField username;

    @FXML
    private PasswordField password;

    private EmployeeService employeeService;

    public static Employee LoginUser;

    /**
     * 管理员登录
     *
     * @param event
     */
    @FXML
    void adminLogin(MouseEvent event) {
        RpstApplication.showView(AdminLoginView.class);
        RpstApplication.getStage().setTitle(PageName.ADMINLOGIN);
    }

    /**
     * 普通用户登录
     *
     * @param event
     */
    @FXML
    void login(ActionEvent event) {
        String username = this.username.getText().trim();
        String password = this.password.getText().trim();
        if (username.equals("") || password.equals("")) {
            Rpstutils.getAlter(Alert.AlertType.WARNING, "请输入账号和密码后再登录!!!");
            return;
        }
        List<Employee> user = employeeService.getOneEmployee(username, 1);
        if (user.size() != 0) {
            for (Employee employee : user) {
                if (password.equals(employee.getPassword())) {
                    LoginUser=employee;
                    Stage window = (Stage) this.username.getScene().getWindow();
                    window.close();
                    RpstApplication.showView(IndexView.class);
                    Stage stage = RpstApplication.getStage();
                    stage.setTitle(PageName.INDEX);
                    return;
                } else {
                    Rpstutils.getAlter(Alert.AlertType.WARNING, "用户名或密码错误!!!");
                }
            }
        } else {
            Rpstutils.getAlter(Alert.AlertType.ERROR, "该账号不存在!!1");
        }
    }

    /**
     * 注册
     *
     * @param event
     */
    @FXML
    void register(ActionEvent event) {
        Stage stage = (Stage) password.getScene().getWindow();
        stage.close();
        RpstApplication.showView(RegisterView.class);
        RpstApplication.setTitle(PageName.REGISTER);
    }

    @Override
    public void initialize(URL location, ResourceBundle resources) {
        log.info("登录页面启动~");
        employeeService = SpringContextUtil.getBean(EmployeeService.class);
    }
}
由于所涉及代码过多,需要者留下邮箱或者加博主qq2690176953~~
创作不易,点点小赞哦^_^·····

农村人口房屋管理系统是按照网格化管理的要求,通过现代的科技手段,对辖区住户、人口信息等进行全方位管理。 本软件适用范围:乡镇、村委会、派出所等。简单易用、智能高效是软件的特点!用户无需复杂的操作、甚至可以很少打字,只需指指点点就可以高效快速的完成复杂的管理工作。信息采集除非必须键盘输入,全部实现智能导入、鼠标点选录入,最大程度的提高了工作效率。 农村人口房屋管理系统软件功能 1 辖区信息管理:按【乡镇】>【村委会】>【自然村】>【村民小组】>【门牌号】的级联方式对辖区的基本信息进行管理,以地图(或示意图)的形式直观展示各级管理层的分布情况,以及住户、人口信息等。 2 住户信息管理:对辖区内的住户基本信息、地理定位、住户人口信息等进行了管理,既可以按【乡镇】>【村委会】>【自然村】>【村民小组】>【门牌号】直到住户人口(以户找人)的级联方式查询人口,也可以按【人口】-【住户】….的方式(以人找户)查询住户或辖区信息。 3 人口信息管理:对人口的基本信息、工作信息、社保信息、计生信息等,进行了全方位的管理,自动生成信息报表和分类统计图。 4 数据的同步汇总功能:将多个单机版数据同步汇总到汇总计算机,实现单机版本的数据共享。 5 系统管理:取词词典设置、用户的权限设置、数据的备份和恢复等等。 农村人口房屋管理系统截图
《户籍管理系统》使用说明 随着社区的不断发展,户籍管理显得越来越重要,面对辖区成千上万的居民信息,依靠传统的手工登记已经不能满足现实的需要。我们这套《户籍管理系统》是针对街道社区、村委会一级的人口管理部门开发的,主要功能就是录入人口信息,方便进行各种查询,打印户籍证明等。操作简单,一学就会。 一、 安装软件 只要打开压缩文件“户籍管理系统.rar”,运行户籍管理系统.exe就可以了。 二、 运行软件 1、登录界面 默认密码是:123456,可以点“修改”改成自己的密码。 2、程序主界面 点击菜单中的“系统”->设置单位,弹出如下对话框: 输入你自己的社区名即可。 二、启动 点击“启动”,进入主操作界面。 1、编辑单位序列 点击“编辑单位序列”,弹出如下窗口: 在左边栏中根据自己的实际情况编辑好上下级单位(每下一级单位前面增加一个空格),然后存盘返回。 注意:下一级单位和上一级单位相差的是半个汉字宽(半角的空格),否则会出现同级变下级的情况。 2、增加人员 先选择一个单位(在左边的树形结构中点一下即可),然后点“增加”。 输入人员情况后,点确定即可。 如果要同时增加很多人,只要选中“连续增加”即可。 3、修改 选中一个人后,点击“详细情况”,即可修改。 4、查询 (一)普通查找 通常情况,在“模糊查询”按钮后面的方框中输入想要查找的信息,然后点一下“模糊查询”按钮即可。 选中“快”,意思是在当前表中查找。当数据量较大时,一般先选择一个单位,这样当前表中就只显示选中单位的部分人员,这样快速查找时速度相对快一点,缺点是如果要找的人不在当前表中就有可能找不到,这时就要选中“慢”来查找。 “慢”是在整个数据库中,只要这个人存在一定能找到,但时间可能会长一点。 (二)根据年龄查找 查找前最好先点一下“重算年龄”,因为每过一年,年龄增加一岁。 选中“年龄范围”,然后在后机的框中输入从几岁到几岁,再在查询框中输入其他信息,点“模糊查询”即可。 (三)精确时间查找 上面根据年龄查找,只能精确到年,如果想精确到月、日,则需要选中“精确时间”,然后选择时间范围。再在查询框中输入其他信息,点“模糊查询”即可。 (四)精确查询 上面都是模糊查询,只要有个大概的信息就可以查。如果知道比较精确的信息,则用“精确查询”,点击“精确查询”后,弹出的是人员详细情况表,这时把知道准确信息全填进去,比如知道名字叫张三,则在姓名中输入张三,如果知道曾用名叫李四,则在曾用名中输入李四,等等。不确定的信息不要输入,然后点确定,就可以精确地查出符合所有条件的人员。 5、详细情况 找到查询的人员后,点一下“详细情况”,出现如下界面: 可以更换照片,修改信息等。 6、 打印证明 户籍管理的一项重要功能是打印户籍证明,只要查找到此人后,点一下打印证明即可。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值