BHUDYJava 快速开发框架
Java快速开发框架,基于技术(Spring MVC、Apache Shiro、MyBatis、Spring Boot)对crud有较完整的封装,可以单表或者多表关联查询,底层架构也非常具有参考意义、快速入手、是学习入门的首选。
技术
- 核心框架:Spring Framework、Spring Boot
- 安全框架:Apache Shiro
- 视图框架:Spring MVC
- 任务调度:quartz
- 持久层框架:MyBatis
- 数据库:Mysql
- 缓存框架:Redis
- 日志管理:slf4j
- 工具类:POI
前端推荐
功能
- java - com - ktr 动环监控包 - utils 工具包 - KtrUtils 获取设备数据及数据解析工具类 - SerialComm 串口通信工具类 - sys bhudy系统包 - annotation 自定义注解 - ManyToOne 多对一表关联 - OneToMany 一对多表关联 - PrimaryKey 主键 - SkipAttribute 对有该注解的属性不做反射 - base 公共service层 - BaseService 公共BaseService接口 - BaseServiceImpl 公共BaseService实现类 - QueryFilter 查询条件 - Relation 数据库关键字枚举 - controller controller层 - dao 公共dao层 - BaseDao baseDao - entity 实体类 - exception 全局异常 - SysException 自定义异常 - SysExceptionCode 状态码及描述 - SysExceptionHandler 全局异常拦截器 - guacamole apache的guacamole,web版的远程桌面 - interceptor 拦截器 - BodyReaderHttpServletRequestWrapper 重写HttpServletRequest,复制request流 - HttpHelper 获取Body的值 - InterceptorConfig 添加拦截器 - SysFilter 过滤器 - SysInterceptor 自定义拦截器 - listener 监听器 - SysListener 程序生命周期监听器 - quartz 任务调度 - service service层 - impl service实现包 - shiro shiro安全框架 - CORSAuthenticationFilter shiro过滤器 - CustomSessionManager 重写DefaultWebSessionManager,解决跨域问题 - RetryLimitHashedCredentialsMatcher 登陆次数限制 - ShiroConfig shiro配置 - ShiroRealm 继承AuthorizingRealm,重写认证和授权方法 - utils 工具包 - AesCBCUtil AES-128-CBC加密 - ExcelUtil Excel处理工具类 - MailUtils 邮箱处理工具类 - MongodbUtils Mongodb工具类 - RedisUtil redis工具类 - RequestUtils Request返回数据格式化工具类 - ShiroUtils shiro工具类 - SnmpUtils snmp4j工具类 - SwaggerConfig 接口文档Config启动类 - TxtExportUtils 代码生成工具类 - Utils 工具类 - WeChatUtils 微信公众号和小程序工具类 - websocket websocket - ShellWebSocketServer shh websocket - SysWebSocketServer 发送页面消息websocket - WebSocketConfig 开启WebSocket支持 - WebSocketTunnel guacamole远程桌面websocket - resources - mapping papping映射文件 - static 静态文件 - templates 前端页面存在目录,如果使用vue这个文件就不要了
开始
1. 准备环境JDK1.8+、Maven3.2+、MySql5+、推荐使用idea开发工具。 2. 克隆项目 git clone https://gitee.com/bhudy/bhudy.git 3. 找到 resources.static.res.bhudy.sql 文件创建数据库 4. 运行 com.BhudyApplication.main 5. 访问http://127.0.0.1:8089/sysLogin (账号:bhy 密码:bhy00000) 6. 如果需要后端控制跳转登录页面需要把application.yml里面的bhudy.routerControl改成'0'
开发
- Test 实体类 - TestService service层继承 BaseService ↓↓↓ public interface TestService extends BaseService<Test, Serializable> { } - TestServiceImpl service实现类继承 BaseServiceImpl 并且实现 TestService ↓↓↓ @Service public class TestServiceImpl extends BaseServiceImpl<Test, Serializable> implements TestService { } - 简单的使用 ↓↓↓ @Autowired private TestService testService; QueryFilter queryFilter = new QueryFilter() testService.findList(queryFilter); - 带条件查询 ↓↓↓ @Autowired private TestService testService; QueryFilter queryFilter = new QueryFilter(); // 查询条件 第一个查询条件自动替换成where queryFilter.and("name", "张三"); // and查询name sql: and name = #{name} param: 张三 queryFilter.clear(); // 清除所有查询条件 queryFilter.andLike("name", "张三"); // andLike查询name sql: and name like #{name} param: 张三 queryFilter.or("age", 20); // or查询age sql: and age = #{age} param: 20 queryFilter.sql("and name = ?", "李四"); // 复杂查询使用sql语句查询 sql: and name = #{argMap.arg0} param: 李四 queryFilter.limit(0, 10); // 分页 queryFilter.order(Relation.ASC, "age") // 排序 testService.findList(queryFilter); // 查询列表 →→→ 更多功能等着您发现哦 ←←←
打包发布
1. 如果打war包需要删除com.sys.websocket.WebSocketConfig类里面的serverEndpointExporter方法 2. pom.xml文件中找到packaging,有jar包和war包2个选择 3. 在idea中右侧找到Maven Project进行clean、package 操作即可在target目录下找到刚刚打好的程序包。
评论