简介

探果网(简称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. ElasticSearch(四)kibana实现CURD

    一. kibana安装 1.到官网或是用brew下载kibana 安装包,这边我们选择在官网下载对应的安装包 https://www.elastic.co/cn/downloads/kibana 2. ...

  2. Java面试-Hibernate总结

    1  Hibernate的检索方式 Ø  导航对象图检索(依据已经载入的对象.导航到其它对象. ) Ø  OID检索(依照对象的OID来检索对象. ) Ø  HQL检索(使用面向对象的HQL查询语言. ...

  3. Objectvice-C中的super

    /** 狗:哈士奇 */ //僵尸 #import <Foundation/Foundation.h> @interface Dog : NSObject - (void) walk; + ...

  4. iOS信号量

    引子: 在取本地联系人列表的时候看到同事用的这么一段代码: dispatch_semaphore_t sema = dispatch_semaphore_create(); ABAddressBook ...

  5. Algorithm: Euler function

    欧拉函数. phi(n)表示比n小的与n互质的数的个数,比如 phi(1) = 1; phi(2) = 1; phi(3) = 2; phi(4) = 2; phi(5) = 4; 性质: 1. 如果 ...

  6. 拓展gcd求不定方程通解

    void gcd(LL a,LL b,LL &d,LL &x,LL &y){ ){d=a;x=;y=;return;} gcd(b,a%b,d,x,y); int t=x; x ...

  7. 手写Future模式

    根据前面我所说的Futrue模式,手写一个: 分别对应的Java代码,大家拿来参考: package FutureTest; //公共data数据接口 public abstract class Da ...

  8. android中获取包名,类名

    LogUtil.i("getPackageName()=" + getPackageName()); //Context类 LogUtil.i("getClass().g ...

  9. codeforces B. Roma and Changing Signs 解题报告

    题目链接:http://codeforces.com/problemset/problem/262/B 题目意思:给出 n 个数和恰好一共要做的操作总数k.通过对n个数进行k次操作,每次操作可以把a[ ...

  10. php排序方法之选择排序

    //选择排序法 $arr = array(3,55,45,2,67,76,6.7,-65,85,4); function selectSort($arr){ for ( $i=0; $i<cou ...