# swing-admin-template-single **Repository Path**: devape/swing-admin-template-single ## Basic Information - **Project Name**: swing-admin-template-single - **Description**: 基于 Swing 开发的管理系统快速开发框架。内置全自动 ORM 框架;封装通用界面,实现零 GUI 编程。20行代码即可完成一个单表管理系统,小白也能独立完成。 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: tabbed - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-12-07 - **Last Updated**: 2026-06-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # swing-admin-single 基于 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 { } ``` ## 第四步:启动 ### (1)单表启动 - SingleApplication 1. 在启动类 Application 中,修改 SwingApplication 注解的值为对应的业务层 Class 对象。 ```java @SwingApplication(PlayerServiceImpl.class) public class Application { public static void main(String[] args) { SingleApplication.run(Application.class); } } ``` 2. 启动项目 ![项目展示](./table.png) ### (2)多标签启动 - TabbedApplication 1. 在启动类 Application 中,修改 SwingApplication 注解的值为对应的业务层 Class 对象。 ```java @EnableLogin @SwingApplication(title = "后台管理系统", services = {PlayerServiceImpl.class, UserServiceImpl.class}) public class Application { public static void main(String[] args) { TabbedApplication.run(Application.class); } } ``` 2. 启动项目 ![项目展示](./image.png) ## 关于登录 系统支持开启登录功能,只需要在启动类上添加 EnableLogin注解即可。 ```java @EnableLogin @SwingApplication(PlayerServiceImpl.class) public class Application { public static void main(String[] args) { SingleApplication.run(Application.class); } } ``` ![项目展示](./login.png) 登录用户名与密码为系统内置,登录功能未请求数据库。 默认用户名为 admin,密码为 123456。可以在 admin.core.ui.LoginFrame 中修改默认值。 ```java public class LoginFrame extends JFrame { // 省略其他代码 private final String DEFAULT_USERNAME = "admin"; private final String DEFAULT_PASSWORD = "123456"; // 省略其他代码 } ```