开源调查问卷和考试系统SurveyKing

在这里插入图片描述
在这里插入图片描述

SurveyKing是一款功能强大的开源调查问卷和考试系统,由国内开发者javahuang创建并维护。该系统基于Java开发,采用前后端分离架构,支持私有化部署,提供了比商业问卷系统更丰富的功能和更灵活的定制选项。以下是关于该项目的全面介绍:

一、项目概述

SurveyKing是一个集调查问卷、在线考试、公开查询、投票和题库刷题功能于一体的全功能平台。与市面上常见的问卷星、腾讯问卷等商业产品相比,SurveyKing在题型设置、逻辑控制、数据导出等方面具有明显优势,同时支持私有化部署,确保数据安全。

项目主要特点包括:

  • 功能全面:支持20多种题型,丰富的问卷设置和逻辑控制
  • 部署灵活:支持Docker一键部署、单JAR包部署等多种方式
  • 性能优异:采用Spring Boot后端和React前端,确保系统稳定高效
  • 开源免费:MIT协议开源,可自由修改和二次开发
  • 多端适配:响应式设计完美适配PC和移动端

二、核心功能

1. 问卷与考试功能

SurveyKing支持20多种题型,包括但不限于:

  • 基础题型:填空、单选、多选、判断、简答
  • 高级题型:下拉、级联、矩阵、分页、签名、题组、上传、横向填空等

多种创建方式

  • Excel导入问卷
  • 文本导入创建问卷
  • 在线编辑器拖拽创建

考试系统特性

  • 支持自动评分(客观题)和人工批改(主观题)
  • 可生成考试证书
  • 提供刷题模式
  • 支持考试完成后的分数公开查询

2. 高级逻辑设置

SurveyKing的逻辑设置功能远超主流商业问卷系统,包括:

  • 显示/隐藏逻辑:根据选项结果控制问题显示
  • 计算逻辑:如根据身高体重自动计算BMI
  • 校验逻辑:支持对答案进行高级校验
  • 跳转逻辑:根据答案动态跳转到不同问题
  • 文本替换逻辑:根据不同答案显示不同提示语

3. 数据管理与分析

  • 数据操作:支持新增、编辑、标记、导出、打印、预览和打包下载附件
  • 报表功能:实时统计分析并以多种图表(条形图、柱状图、扇形图)展示
  • 数据导出:支持Excel、SPSS格式导出,独创附件名导出变量功能

4. 系统管理

  • RBAC权限控制:完善的基于角色的访问控制
  • 多人协作:支持团队共同管理问卷
  • 数据库支持:兼容所有带有JDBC驱动的关系型数据库
  • 白名单功能:限制特定用户参与问卷或考试

三、技术架构

1. 技术栈

后端

  • 语言:Java
  • 框架:Spring Boot
  • ORM:MyBatis
  • 数据库:支持所有JDBC兼容的关系型数据库(MySQL、PostgreSQL等)
  • 缓存:Redis

前端

  • 框架:React
  • UI库:Ant Design
  • 图表:ECharts
  • 富文本编辑器:自主研发

2. 项目结构

SurveyKing/
├── survey-admin/       # 管理后台前端
├── survey-server/      # 后端服务
├── survey-client/      # 用户端前端
├── survey-common/      # 公共模块
├── doc/                # 项目文档
└── sql/                # 数据库脚本

四、部署方式

SurveyKing提供多种部署方案,最快1分钟即可完成部署:

1. Docker部署(推荐)

docker run -d \
  --name surveyking \
  -p 1991:1991 \
  -v /your/path/surveyking:/surveyking \
  surveyking/surveyking:latest

访问地址:http://服务器IP:1991
默认管理员账号:admin/123456

2. 单JAR包部署

  1. 下载最新JAR包
  2. 运行命令:
    java -jar surveyking-vx.x.x.jar
    

3. 源码编译部署

git clone https://gitee.com/surveyking/surveyking.git
mvn clean package -DskipTests -Ppro
java -jar ./survey-server/target/surveyking-vx.x.x.jar

五、使用场景

SurveyKing适用于多种场景:

  1. 教育领域:在线考试、随堂测验、学习评估
  2. 企业应用:员工培训、技能考核、满意度调查
  3. 科研机构:数据收集、问卷调查、实验评估
  4. 政府机构:民意调查、公共服务评价
  5. 医疗健康:患者满意度调查、健康问卷

六、项目优势

  1. 功能对比优势

    功能商业问卷系统SurveyKing
    题型丰富度中等非常丰富
    逻辑设置基础非常强大
    数据导出有限制高度灵活
    私有化部署收费免费
    二次开发不允许完全开放
  2. 性能优势

    • 支持百万级数据展示
    • 优化的数据库查询性能
    • 响应式设计确保移动端体验
  3. 成本优势

    • 完全开源免费
    • 节省商业系统订阅费用
    • 自主可控,无数据泄露风险

七、二次开发

SurveyKing采用模块化设计,便于二次开发和功能扩展,主要方向包括:

  • 添加新的问卷题型
  • 集成第三方认证系统
  • 开发专用数据分析和可视化模块
  • 增加多语言支持
  • 优化移动端体验

项目代码结构清晰,注释完善,开发者可以快速上手进行定制开发。

八、社区与支持

  • GitHub仓库:https://github.com/javahuang/SurveyKing
  • Gitee仓库:https://gitee.com/surveyking/surveyking

SurveyKing项目持续更新维护,社区活跃,开发者可以提交Issue或Pull Request参与项目贡献。

九、总结

SurveyKing作为一款功能强大、部署简单的开源问卷和考试系统,在题型丰富度、逻辑设置灵活性和数据管理能力方面都达到了行业领先水平。无论是教育机构、企业还是个人开发者,都可以通过SurveyKing快速搭建专业的在线问卷和考试平台,满足各种场景下的数据收集和评估需求。

其开源特性允许用户完全掌控系统代码和数据,避免了商业系统的订阅费用和数据隐私问题,是替代问卷星、腾讯问卷等商业产品的优秀选择。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

许于宝的博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值