# swing-boot-admin **Repository Path**: devape/swing-boot-admin ## Basic Information - **Project Name**: swing-boot-admin - **Description**: 基于Java Swing 开发的后台管理系统快速开发框架。内置全自动 ORM 框架;封装通用界面,实现零 GUI 编程。20行代码即可完成一个单表管理系统,小白也能独立完成。 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: 4.x - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-12-07 - **Last Updated**: 2026-07-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # swing-boot-admin 基于 Swing 开发的管理系统快速开发框架。 - 全自动 ORM 框架,无需手写 SQL - 零 GUI 编程,不需要会 Swing ## 第一步:实体类 1. 字段数据类型仅支持 Integer Long Float Double Boolean String 2. 使用 @TableName 标识实体类,value 指定数据库表名称,type 指定 ID 生成策略 3. 使用 @TableId 标识 ID 字段,@TableField 标识其他字段。如果字段名与数据库中表的列名称不一致,需要使用 value 指定 4. 使用 @Query 标识搜索操作查询的字段,并指定匹配策略,默认模糊查询。 ```java @TableName(label = "球员", value = "player_info") public class Player { @TableId(label = "球衣",value = "jersey_number", type = IdType.INPUT) @Query(QueryType.EQUALS) private String id; @TableField(label = "姓名",value = "player_name") @Query(QueryType.LIKE) private String name; @TableField(label = "球队",value = "team_name") private String team; @TableField(label = "位置") private String position; @TableField(label = "身高") private String height; @TableField(label = "体重") private String weight; // constructor setter getter ... } ``` ## 第二步:数据库访问层 1. 继承 BaseMapper 即可 2. 如果对内置方法不满意,可手动重写 ```java public class PlayerMapper extends BaseMapper { } ``` ## 第三步:业务层 1. 分别创建业务层接口与实现类即可 2. 如果对内置方法不满意,可手动重写 ```java public interface PlayerService extends IService { } ``` ```java public class PlayerServiceImpl extends ServiceImpl implements PlayerService { } ``` ## 第四步:配置 在 admin.config.ApplicationConfig 中配置 services,必须配置至少一个。默认 tabbed 模式,会生成所有的管理面板;若为single模式,则只会生成第一个的管理面板。 ```java public class ApplicationConfig implements ApplicationConfiguration { @Override public String title() { return "后台管理系统"; } @Override public Class[] services() { return new Class[]{PlayerServiceImpl.class, UserServiceImpl.class}; } } ``` ## 第五步:启动 1. tabbed 模式,默认模式,直接启动即可 ![项目展示](./image.png) 2. single 模式,需要加上 @Single 注解 ```java @Single @SwingBootApplication public class Main { public static void main(String[] args) { SwingApplication.run(Main.class); } } ``` ![项目展示](./table.png) ## 关于登录 系统支持开启登录功能,只需要在启动类上添加 @EnableLogin 注解即可。 ```java @EnableLogin @SwingBootApplication public class Main { public static void main(String[] args) { SwingApplication.run(Main.class); } } ``` ![项目展示](./login.png) 登录用户名与密码为系统内置,登录功能未请求数据库。 默认用户名为 admin,密码为 123456。可以在 admin.swingframework.view.LoginFrame 中修改登录验证。 ```java public class LoginFrame extends JFrame { private boolean login(String username, String password) { return "admin".equals(username) && "123456".equals(password); } } ```