省钱兄JAVA国际版答题系统练习模拟考试系统 源码支持Android+IOS+H5系统

报价
18888.00元每件
关键词
省钱兄科技,国际版答题系统,答题练习,模拟考试
更新时间
2026-05-31 07:29
省钱兄 JAVA 国际版答题系统 · 练习模拟考试系统源码

✅ 支持 Android + iOS + H5 三端全覆盖(国际版核心,不含小程序/公众号)
开发商:西安省钱兄网络科技有限公司
售价:¥18,888(国际版)/ ¥8,889(国内版:小程序+公众号+H5+APP)
新更新:2026年5月13日(互站网在售)

系统整体架构层级技术选型后端框架Spring Boot 2.7.x + MyBatis-Plus 3.5.x数据库MySQL 8.0 + Redis 7.0(缓存/分布式锁/GEO)用户端UniApp 3.0(Vue3语法)→ 编译为 Android + iOS + H5管理后台Vue3 + ElementPlus + ECharts 数据看板实时通信WebSocket(答题进度实时推送)AI引擎智能推荐算法 + 知识点掌握度分析支付微信支付 + 支付宝 + PayPal/Stripe(国际版支持9种货币)部署JDK 17 + Docker + K8s(自动弹性扩容)
核心功能模块1️⃣ 多角色体系(国际版)java@PostMapping("/login")public Result<LoginVO> login(@Re LoginDTO dto) {    User user = userService.login(dto);    String token = JwtUtil.generateToken(user.getId(), user.getRole());    https:// role = "student" 学生 / "teacher" 教师 / "admin" 管理员    return Result.success(new LoginVO(token, user.getRole()));}角色核心功能 学生端(Android/iOS/H5)刷题/模拟考试/错题复习/学习报告/AI推荐‍ 教师端(Android/iOS为主)题库管理/组卷/发布考试/成绩分析/学生管理 平台总后台全局数据看板/分账管理/多语言管理/营销工具

⚠️ 国际版 vs 国内版核心差异:

特性国内版(¥8,889)国际版(¥18,888)端口小程序 + 公众号 + H5 + APPAndroid + iOS + H5(适配PAD)支付微信/支付宝微信/支付宝 + PayPal/Stripe(9种货币)语言中文10种语言(中/英/日/韩/阿拉伯语等)AI推荐知识点推荐AI深度学习推荐 + 学习路径规划合规国内法规GDPR + CCPA 隐私合规定位北斗/GPSGPS + Google Location API
2️⃣ 题库管理系统(核心亮点)⭐java/** * 题库CRUD + 批量导入导出 + 智能分类 */@Servicepublic class ceImpl implements ce {    @Autowired private  ;    @Autowired private RedisTemte<String,Object> redisTemte;    /**     * 批量导入题目 - Excel/CSV解析     */    @Transactional    public Result batchImport(MultipartFile file, Long subjectId) {        List<>  = excelParser.parse(file);        https:// 1. AI自动分类(知识点/难度/题型)        for ( q : ) {            (subjectId);            (aiClassifier.classify(())); https:// easy/medium/hard            nts(aiExtractor.extract(()));            .insert(q);        }        https:// 2. 更新题库统计缓存        redisTemte.opsForValue().set("bank:stats:" + subjectId,             .countBySubject(subjectId));        return Result.success(.size() + " 题导入成功");    }    /**     * 智能组卷 - 按知识点/难度/题型自动生成试卷     */    public List<> smartGenerate(ExamDTO dto) {        https:// ZSet按难度排序抽取        Set<ZSetOperations.TypedTuple<String>> easy = redisTemte.opsForZSet()            .reverseRangeByScoreWithScores(":easy", 0, 100);        Set<ZSetOperations.TypedTuple<String>> medium = redisTemte.opsForZSet()            .reverseRangeByScoreWithScores(":medium", 0, 100);                https:// 按配置比例抽取:简单40% + 中等40% + 困难20%        List<> er = new ArrayList<>();        er.addAll(randomPick(easy, dto.getTotal() * 0.4));        er.addAll(randomPick(medium, dto.getTotal() * 0.4));        er.addAll(randomPick(hard, dto.getTotal() * 0.2));                Collections.shuffle(er); https:// 打乱顺序        return er;    }}题型说明 选择题单选/多选,支持图片题✏️ 填空题文本填空,支持正则匹配判分 编程题在线代码编辑器,支持Java/Python/C等,AI判分 判断题对/错 连线题拖拽连线(移动端优化)

| 分类维度 | 示例 |
|----------|
| 知识点 | 数据结构、算法、操作系统、网络等 |
| 难度 | 简单(30%) / 中等(50%) / 困难(20%) |
| 考试类型 | 公务员/考研/四六级/托福雅思/IT认证/驾照等 |

3️⃣ 多种练习模式模式说明适用场景 随机练习从题库随机抽题,不限数量日常刷题 章节练习按知识点/章节专项练习针对性补强❌ 错题重做自动收集错题,专项复习考前冲刺⏱️ 模拟考试限时/限题数/智能组卷,全真模拟考前模拟 每日一练每天10题,保持学习习惯日常打卡 PK对战实时匹配对手,答题速度+正确率PK趣味学习
java/** * 模拟考试 - 分布式锁防 + 切屏检测 */@Service @Transactionalpublic class ExamServiceImpl implements ExamService {    /**     * 开始考试 - 防切屏/防多开     */    public Result startExam(Long examId, Long userId) {        String lockKey = "exam_lock:" + examId + ":" + userId;        try {            Boolean locked = redisTemte.opsForValue()                .setIfAbsent(lockKey, "1", 180, TimeUnit.MINUTES);            if (!locked) return Result.fail("您已有未完成的考试");            Exam exam = examMapper.selectById(examId);            if (exam.getStatus() != 1) return Result.fail("该考试尚未开始");            https:// 生成个人试卷(每人题目顺序不同)            List<> er = ce.smartGenerate(exam);                        https:// 记录考试开始时间            examRecordMapper.insert(new ExamRecord(examId, userId, er, LocalDateTime.now()));            return Result.success(er);        } finally {            redisTemte.delete(lockKey);        }    }    /**     * 交卷 - 实时判分 + 成绩发布     */    @Transactional    public Result submitExam(Long recordId, List<AnswerDTO> answers) {        ExamRecord record = recordMapper.selectById(recordId);        if (record.getStatus() != 0) return Result.fail("考试已结束");        https:// 1. AI自动判分(选择题/判断题即时出分,编程题AI判分)        int score = 0;        List<Result> results = new ArrayList<>();        for (AnswerDTO a : answers) {             q = .selectById(a.getId());            boolean correct = aiGrader.grade(q, a.getAnswer());            if (correct) score += ();            results.add(new Result(q, correct, a.getAnswer(), ()));        }        https:// 2. 更新成绩        record.setScore(score);        record.setTotalScore(record.gets().stream().mapToInt(::getScore).sum());        record.setStatus(1); https:// 已完成        record.setFinishTime(LocalDateTime.now());        record.setAnswers(JSON.toJSONString(results));        recordMapper.updateById(record);        https:// 3. 通知用户        webSocketService.pushToUser(record.getUserId(), "exam_finished", record);        return Result.success(new ExamResultVO(score, record.getTotalScore(), results));    }}考试状态流转说明0 待开始考试未到时间 / 未开始1 进行中正在答题(切屏3次自动交卷)2 已交卷等待AI判分3 已完成成绩已发布,可查看解析4 切屏/多开检测触发
4️⃣ AI智能推荐 + 学习路径规划(国际版核心)⭐java/** * AI推荐引擎 - 基于知识图谱的个性化学习路径 */@Servicepublic class AIRecommendServiceImpl implements AIRecommendService {    @Autowired private RedisTemte<String,Object> redisTemte;    @Autowired private ElasticsearchClient esClient;    /**     * 智能推荐题目 - 多维评分     */    public List<VO> recommend(Long userId, int limit) {        UserProfile profile = getUserProfile(userId);        https:// 1. 薄弱知识点优先(正确率<60%的知识点)        Set<String> weakPoints = profile.getWeakKnowledgePoints(); https:// AI分析        https:// 2. ES搜索匹配题目        uest request = SearchRe(s -> s            .index("")            .query(q -> q.bool(b -> b                .should(sh -> sh.terms(t -> t.field("knowledgePoints").terms(v -> v.value(weakPoints)).boost(2.0)))                .should(sh -> sh.match(m -> m.field("difficulty").query("medium").boost(1.5)))                .filter(f -> f.range(r -> r.field("difficulty").gte(JsonData.of(1)).lte(JsonData.of(5))))            )            .sort(so -> so.field(f -> f.field("hotScore").order(SortOrder.Desc)))            .size(limit)        );        List<VO> result = esClient.search(request, VO.class).hits().stream()            .map(h -> h.source())            .collect(Collectors.toList());        return result;    }    /**     * 学习路径规划 - AI生成个性化学习计划     */    public LearningPathVO generatePath(Long userId) {        UserProfile profile = getUserProfile(userId);                https:// 知识点掌握度热力图        Map<String, Double> masteryMap = profile.getKnowledgeMastery(); https:// {数据结构: 0.8, 算法: 0.4...}        https:// 按掌握度排序,推荐学习顺序        List<Map.Entry<String, Double>> sorted = masteryMap.entrySet().stream()            .sorted(Map.Entry.comparingByValue()) https:// 掌握度低的优先            .collect(Collectors.toList());        return new LearningPathVO(            sorted.stream().map(e -> e.getKey()).collect(Collectors.toList()),            calculateDays(profile),            profile.getTargetExam()        );    }}推荐维度权重说明 薄弱知识点40%正确率<60%的知识点优先推送⭐ 错题关联25%错题涉及的知识点关联题 难度递进20%从简单→中等→困难逐步提升 遗忘曲线15%基于艾宾浩斯遗忘曲线,定期推送复习
UniApp 前端核心页面页面路径功能首页pages/index/index推荐题目/每日一练/学习统计/快速入口题库pages/bank/list科目分类/知识点筛选/难度筛选/搜索练习pages/practice/index随机练习/章节练习/错题重做/模式切换考试pages/exam/index考试列表/倒计时/答题界面/交卷成绩pages/score/list历史成绩/成绩分析/错题回顾/解析我的pages/user/user学习报告/收藏/设置/语言切换PK对战pages/pk/index实时匹配/答题PK/排行榜
vue<!-- pages/practice/index.vue - 刷题页面 --><temte>  <view class="container">    <!-- 顶部信息栏 -->    <view class="top-bar">      <text class="title">{{ currentMode }}</text>      <text class="progress">{{ currentIndex }}/{{ totalCount }}</text>      <text class="timer" v-if="isExam">⏱️ {{ formatTime }}</text>    </view>    <!-- 题目卡片 -->    <view class="" v-for="(q, idx) in " :key="q.id">      <view class="">        <text class="q-type" :class="q.type">{{  }}</text>        <text class="" :class="'diff-' + ">          {{ Name }}        </text>        <text class="">{{  }}分</text>      </view>            <view class="">        <text>{{ idx + 1 }}. {{  }}</text>        <image v-if="" :src="" class=""/>      </view>      <!-- 选项 -->      <view class="options">        <view v-for="(opt, oi) in " :key="oi"               class="option"               :class="{selected: selectedAnswer === oi, correct:  === oi}"              @tap="selectAnswer(oi)">          <text class="opt-label">{{ String.fromCharCode(65 + oi) }}</text>          <text class="opt-text">{{ opt }}</text>        </view>      </view>      <!-- 答案解析(选后显示) -->      <view v-if="showAnswer" class="answer-section">        <view class="result" :class="isCorrect ? 'correct' : 'wrong'">          {{ isCorrect ? '✅ 回答正确!' : '❌ 回答错误' }}        </view>        <view class="exnation">          <text class="exp-title"> 解析:</text>          <text>{{  }}</text>        </view>      </view>    </view>    <!-- 底部操作 -->    <view class="bottom-bar">      <button class="btn-prev" @tap="prev" :disabled="currentIndex === 0">上一题</button>      <button class="btn-submit" v-if="isExam" @tap="submitExam">交卷</button>      <button class="btn-next" @tap="next" :disabled="currentIndex === totalCount - 1">下一题</button>    </view>  </view></temte><script>export default {  data() {    return {      : [],      currentIndex: 0,      selectedAnswer: -1,      showAnswer: false,      isCorrect: false,      isExam: false,      timer: 0,      timerInterval: null    }  },  onLoad(options) {    this.isExam = options.mode === 'exam';    this.loads(options.mode);    if (this.isExam) this.startTimer();  },  methods: {    selectAnswer(oi) {      if (this.showAnswer) return;      this.selectedAnswer = oi;      this.showAnswer = true;      this.isCorrect = oi === this.[this.currentIndex].answer;            https:// 错题自动加入错题本      if (!this.isCorrect) {        this.addToWrongBook(this.[this.currentIndex]);      }    },    next() {      if (this.currentIndex < this..length - 1) {        this.currentIndex++;        this.selectedAnswer = -1;        this.showAnswer = false;      }    },    async submitExam() {      uni.showModal({        title: '确认交卷',        content: `已答 ${this.currentIndex + 1}/${this..length} 题,确认交卷?`,        success: async (res) => {          if (res.confirm) {            clearInterval(this.timerInterval);            const ans = this..map((q, i) => ({              : q.id,              answer: i <= this.currentIndex ? this.selectedAnswer : -1            }));            const result = await uest({              url: `${BASE_URL}/exam/submit`,              method: 'POST',              data: { recordId: this.recordId, answers: ans }            });            uni.navigateTo({ url: `/pages/score/result?score=${result.data.data.score}` });          }        }      });    }  }}</script>️ 核心数据库表表名说明题目表(内容/选项/答案/解析/知识点/难度/题型)_bank题库表(科目/分类/总数)exam考试表(名称/科目/时间/时长/及格分/状态)exam_record考试记录表(用户/成绩/答案/用时/状态)exam_考试-题目关联表(随机组卷)wrong_book错题本表(用户/题目/错误次数/后错题时间)user_profile用户画像表(知识点掌握度/学习时长/正确率)learning_pathAI学习路径表(用户/推荐知识点/计划天数)daily_practice每日打卡表(用户/日期/完成题数/正确率)pk_recordPK对战记录表
s TABLE exam_record (    id BIGINT PRIMARY KEY AUTO_INCREMENT,    record_no VARCHAR(64) UNIQUE NOT NULL,    user_id BIGINT NOT NULL,    exam_id BIGINT NOT NULL,    score DECIMAL(5,2) NOT NULL,    total_score DECIMAL(5,2) NOT NULL,    correct_count INT DEFAULT 0,    total_count INT DEFAULT 0,    duration INT COMMENT '用时(秒)',    answers JSON COMMENT '答案详情',    status TINYINT DEFAULT 0 COMMENT '0进行中 1已交卷 2已批改 3已完成',    start_time DATETIME,    finish_time DATETIME,    create_time DATETIME DEFAULT CURRENT_TIMESTAMP,    INDEX idx_user (user_id),    INDEX idx_exam (exam_id),    INDEX idx_status (status)); 管理后台功能模块功能 数据看板DAU/新增用户/答题总量/正确率/热门题库/学习时长 ECharts 题库管理增删改查/批量导入/AI自动分类/知识点标签/难度设置 考试管理创建考试/智能组卷/时间设置/防配置/成绩审核 用户管理学生列表/教师列表/学习报告/信用分/封禁 成绩分析班级排名/个人轨迹/知识点掌握热力图/薄弱环节分析 AI设置推荐算法参数/学习路径规则/遗忘曲线配置 财务管理营收统计/微信对账/PayPal对账/会员套餐管理 营销工具会员套餐/限时免费/邀请奖励/拼团/优惠券 国际化10种语言切换/9种货币/GDPR数据管理 数据统计答题量/正确率趋势/完考率/ARPU/留存率
️ 部署架构┌──────────────────────────────────────────────────┐│                      Nginx                        │├──────────┬──────────┬───────────┬──────────────────┤│  UniApp   │  UniApp   │  UniApp   │   UniApp        ││  Android  │   iOS     │   H5      │                  │├──────────┴──────────┴───────────┴──────────────────┤│         Spring Boot 集群(微                   ││  ┌─────────┐ ┌─────────┐ ┌───────────────────────┐ ││  │题库服务  │ │考试服务  │ │ AI推荐/学习路径服务    │ ││  └─────────┘ └─────────┘ └───────────────────────┘ ││  ┌─────────┐ ┌─────────┐ ┌───────────────────────┐ ││  │用户服务  │ │支付服务  │ │ WebSocket实时推送     │ ││  └─────────┘ └─────────┘ └───────────────────────┘ │├───────────────────────────────────────────────────┤│  MySQL(主从) │ Redis Cluster │ ES │       ││  PayPal/Stripe │ Seata(分布式事务)                   │├───────────────────────────────────────────────────┤│  Prometheus + Grafana │ Docker + K8s               │└───────────────────────────────────────────────────┘ 售价与套餐(2026年5月新)套餐价格包含内容套餐1(国际版)¥18,888源码 + 技术文档 + 部署文档(不含搭建/维护)套餐2(国际版)¥20,888源码 + 文档 + 首次搭建 + 1年维护更新 + 技术支持套餐1(国内版)¥8,889源码 + 文档 + 部署文档(小程序+公众号+H5+APP)套餐2(国内版)¥10,889源码 + 文档 + 搭建 + 1年维护 + 技术支持

后续年度技术服务费:¥2,000/年(含免费系统升级)
⚠️ 源码具有可复制性,不支持恶意退款
购买申明:禁止转卖/禁止开源社区传播/研究商业学习使用

官方联系方式(已核实 ✅)渠道信息 ✅电话 ✅(西安省钱兄网络科技有限公司)邮@163.comCEO马晓东(96年创业者,西安科技大学毕业)公司西安省钱兄网络科技有限公司地址陕西省西安市高新区高新四路13号朗臣大厦A座11808演示站联系 QQ 710070994 获取管理后台 + 用户端演示地址购买链接互站网 https://www.huzhan.com/ 搜索"省钱兄国际版答题系统"
系统亮点总结特性说明✅ 三端覆盖Android + iOS + H5,UniApp一套源码✅ AI智能推荐知识图谱 + 遗忘曲线 + 多维评分,个性化学习路径✅ 多种练习模式随机/章节/错题/模拟考试/PK对战/每日一练✅ 智能组卷AI按知识点/难度/题型自动生成试卷,千人千卷✅ 防系统切屏检测/多开检测/人脸验证(国际版)✅ 即时判分选择题即时出分 + 编程题AI判分 + 详细解析✅ 国际支付PayPal/Stripe支持9种货币,资金托管✅ 多语言10种语言一键切换,AI实时翻译✅ GDPR合规欧盟隐私保护,数据可导出/删除✅ 数据看板ECharts实时展示DAU/答题量/正确率/知识点热力图✅ 高并发Sentinel限流 + K8s自动弹性扩容✅ 安全合规HTTPS+AES-256+RSA-2048+GDPR/CCPA

 获取源码:搜索 互站网(huzhan.com)"省钱兄国际版答题系统练习模拟考试" 或直接联系官方 QQ 710070994 获取演示站体验后下单。该系统与省钱兄的"国内版答题系统(¥8,889)"同属一个产品矩阵,国际版核心差异在于:支持 PayPal/Stripe 国际支付、10种多语言、Android+iOS 原生APP优化、Google Maps 国际地图、GDPR/CCPA 隐私合规、AI深度学习推荐引擎。相比国内版,国际版更适合出海教育创业者/海外华人学习平台/跨境培训机构。


省钱兄科技,国际版答题系统,答题练习,模拟考试
西安码兄网络科技有限公司已认证
统一社会信用代码
91611100MA7174KK05
成立日期
2020年09月14日
法定代表人
田坤
注册资本
100

主营产品

软件开发,技术服务、技术开发、技术咨询、技术交流、技术转让、技术推广,网络技术服务,市场营销策划;数据处理和存储支持服务,互联网数据服务,计算机系统服务信息系统集成服务,数字文化创意软件开发,专业设计服务;广告制作,广告设计、代理,图文设计制作,动漫游戏开发;软件销售(除依法须经批准的项目外,凭营业执照依法自主开展经营

经营范围

一般项目:软件开发;技术服务、技术开发、技术咨询、技术交流、技术转让、技术推广;网络技术服务;市场营销策划;数据处理和存储支持服务;互联网数据服务;计算机系统服务;信息系统集成服务;数字文化创意软件开发;专业设计服务;广告制作;广告设计、代理;图文设计制作;动漫游戏开发;软件销售(除依法须经批准的项目外,凭营业执照依法自主开展经营活动)。

公司简介

公司简介码兄网络科技成立于2019年9月26日,创始人马晓东,96年的互联网创业者,毕业于西安科技大学,21年优秀民营企业家,知名博主,带领公司发展3年获得很多成果,我们是21年高新技术企业,21年科技型中小企业,20年3A企业认证,21年优秀民营企业,ISO9001国军标企业,ISO9001质量体系企业,目前拥有客户1000多家,自研发产品40多款,主要领域商标代理;版权代理;知识产权服务;信息技术咨询服务;信息系统集成服务;计算机系...

查看公司详情
电话/手机
13895585204
微信号
maxdlln
QQ
710070994
邮箱
17691039873@163.com
联系人
马晓东
地址
陕西省西安市高新区高新四路13号朗臣大厦1幢1单元11808室
我们其他产品
我们的新闻
微信咨询
拨打电话