简介

探果网(简称tamguo)是基于java开发的在线题库系统,包括

  1. 在线访问
  2. 后台运营
  3. 会员中心
  4. 书籍中心
  • 管理员账号:system 密码:123456 因为线上数据和测试数据没有做到隔离,作者已经把密码修改,可用.sql在本地运行看后台效果。

QQ群:937899574

松耦合、高可用、可靠一直是软件工程的设计目标,探果网在这些方面还有很长的路要走,期待我们能手牵手一起走向未来。

期望

作者每天会把当天需要做的事情列出一个清单,给这周或者这个月立下一个flag。但是这中间发现了一些问题,事情永远也做不完,只会越做越多。

探果网期望可以使用java开发一套完整的互联网项目,分享互联网在技术、运营上的经验和知识。

系统部署图

项目结构

  1. tamguo-common 一些基础的工具类包
  2. tamguo-modules-core 依赖tamguo-common,主要是核心业务包,包括数据处理,文件处理,邮件处理,短信处理等等。
  3. tamguo-bms 书籍系统https://book.tamguo.com,书籍系统展现层
  4. tamguo-mms会员中心https://member.tamguo.com
  5. tamguo-oms后台管理系统https://admin.tamguo.com
  6. tamguo-crawler爬虫程序,单独项目运行

数据库脚本

在tamguo db目录下

开始

安装 redis

因为官网没有windows redis的版本,我们去github上下载windows版本的redis

redis windows 下载

下载Redis-x64-3.2.100.zip这个包,解压,执行redis-server.exe。

看到这个界面Redis就算启动成功。

安装 MYSQL

不做描述, 把tamguo下面的db文件导入mysql注意数据库名称。

安装 jdk1.8

不做描述

至此tamguo的环境基本基本上已经安装好。

启动 tms

找到tamguo-tms下面的application.propertys。

  • domain.name // 页面引用静态资源的前缀
  • member.domain.name // 会员系统跳转域名
  • cookie.domian.name // 关系到session,本地配置成local
  • server.port // 服务端口
  • spring.datasource.url // 数据库连接地址
  • spring.datasource.username // 数据库连接用户名
  • redis.hostname // redis 服务地址
  • redis.port // redis 端口
  • file.storage.path // 上传文件存放路径

确定propertys正确后,用springboot 方式启动应用。

到这里就启动成功了,访问 http://localhost:8081/

到现在tms已经启动成功, tms 针对的用户(包括老师,学生等等)。

启动 bms (书籍项目)

和tms一样配置好application.propertys,启动application.java 即可。

启动 mms (会员系统)

和tms一样配置好application.propertys,启动application.java 即可。

启动 oms (后台运营系统)

和tms一样配置好application.propertys,启动application.java 即可。

到这里tamguo的所有子系统都已经启动成功

项目

https://gitee.com/smiletocandy/tamguo

基于java开发的在线题库系统tamguo的更多相关文章

  1. php+mysql开发一个最简单的在线题库,在线做题系统!

    题库,对于教育机构,学校,在线教育,是很有必要的,网上也有不少的第三方在线题库系统,但是本次案例,会让有需要的人了解题库的开发思路,其实很简单,无非就是一个表单验证,数据库验证. 1.先构建表单数据2 ...

  2. 免费开源数字货币交易所——基于Java开发的比特币交易所 | BTC交易所 | ETH交易所 | 数字货币交易所

    本项目是基于Java开发的比特币交易所 | BTC交易所 | ETH交易所 | 数字货币交易所 | 交易平台 | 撮合交易引擎.本项目基于SpringCloud微服务开发,可用来搭建和二次开发数字货币 ...

  3. 分布式架构从零开始========》【基于Java自身技术实现消息方式的系统间通信】

    基于Java自身包实现消息方式的系统间通信的方式有:TCP/IP+BIO,TCP/IP+NIO,UDP/IP+BIO,UDP/IP+NIO.下面就这4种类型一一做个详细的介绍: 一.TCP/IP+BI ...

  4. ACM在线题库

    现在网上有许多题库,大多是可以在线评测,所以叫做Online Judge.除了USACO是为IOI准备外,其余几乎全部是大学的ACM竞赛题库. USACO http://ace.delos.com/u ...

  5. FastAPI(六十三)实战开发《在线课程学习系统》梳理系统需要接口

    针对上一篇FastAPI(六十二)实战开发<在线课程学习系统>需求分析需求的功能,我们对需要的接口进行梳理,大概的规划出来现有的接口,作为我们第一版的接口的设计出版,然后我们根据设计的接口 ...

  6. FastAPI(七十四)实战开发《在线课程学习系统》接口开发-- 删除留言

    之前文章FastAPI(七十三)实战开发<在线课程学习系统>接口开发-- 回复留言,那么我们这次分享删除留言接口的开发 可以对留言进行删除,这里的删除,我们使用的是逻辑的删除,不是物理删除 ...

  7. FastAPI(七十三)实战开发《在线课程学习系统》接口开发-- 回复留言

    之前文章分享FastAPI(七十二)实战开发<在线课程学习系统>接口开发-- 留言列表开发,这次我们分享如何回复留言 按照惯例,我们还是去分析这里面的逻辑. 1.判断用户是否登录 2.用户 ...

  8. FastAPI(七十二)实战开发《在线课程学习系统》接口开发-- 留言列表开发

    之前我们分享了FastAPI(七十一)实战开发<在线课程学习系统>接口开发-- 查看留言,这次我们分享留言列表开发. 列表获取,也需要登录,根据登录用户来获取对应的留言.逻辑梳理如下. 1 ...

  9. FastAPI(七十一)实战开发《在线课程学习系统》接口开发-- 查看留言

    之前FastAPI(七十)实战开发<在线课程学习系统>接口开发--留言功能开发分享了留言开发,这次我们分享查看留言 梳理这里的逻辑,这个接口要依赖登录. 1.判断用户是否登录 2.判断对应 ...

随机推荐

  1. Android笔记之在onCreate中执行View.getWidth()和View.getHeight()得到的结果均为0的解决方案

    方案有多种,只记一种 使用View.post(Runnable) 示例如下 Log如下 由log可知,View.post(Runnable)是异步的

  2. 谷歌浏览器使用SelectorGadget和Xpath Helper获取xpath和css path

    在上篇文章里,介绍了如何在火狐浏览器中获取网页元素的xpath和css path. 这篇文章将介绍,在谷歌浏览器中使用SelectorGadget和Xpath Helper实现同样功能. 这两个谷歌浏 ...

  3. 负载均衡LVS

    可参考:http://ixdba.blog.51cto.com/2895551/555738 http://os.51cto.com/art/201202/319979.html 也可以参考官网:ht ...

  4. delphi2010\delphi XE7 开发及调试WebService 实例

    使用delphi已经10多年了,一直搞桌面程序开发,对Webservice一直很陌生,近来因工作需要,学习delphi开发WebService,担心遗忘,作此笔记. 特别感谢 中塑在线技术总监 大犇  ...

  5. android——array中设置选项

    Android中,R.array是提取XML资源文件中String数组的方法.具体定义和提取的方法如下: 1)在R.array中定义字符数组 <?xml version="1.0&qu ...

  6. POJ2115 C Looooops ——模线性方程(扩展gcd)

    题目链接:http://poj.org/problem?id=2115 C Looooops Time Limit: 1000MS   Memory Limit: 65536K Total Submi ...

  7. Python作业之用户管理

    作业 流程图没有画,懒,不想画 readme没有写,懒,不想写.看注释吧233333 #! /usr/bin/env python # -*- coding: utf-8 -*- # __author ...

  8. tomcat正常启动,但是java项目没有启动原因

    右键项目,选择properties,查看该属性配置的是否正确

  9. IOS开发学习笔记(2)-----UIButton 详解

    1. [代码][C/C++]代码     //这里创建一个圆角矩形的按钮    UIButton *button1 = [UIButton buttonWithType:UIButtonTypeRou ...

  10. cnn handwrite使用原生的TensorFlow进行预测

    100个汉字,放在data目录下.直接将下述文件和data存在同一个目录下运行即可. 关键参数: run_mode = "train" 训练模型用,修改为validation 表示 ...