Sosoapi是接口文档管理平台,功能强大,本篇先以war为例进行部署。
1.github上下载 https://github.com/sosoapi/sosoapi-web
(1)在dist目录下拷贝war包到tomcat
(2)为了方便,直接安装xampp,把sosoapi-web.war拷贝到
webapps目录中,启动tomcat会自动解压
2.github下载的sosoapi-web-master源码包,db文件夹中sql导入到数据库中
3.修改配置信息,数据库用户名,密码等
【SosoApi】 http://www.sosoapi.com/
【linux环境下搭建SosoApi工程】
前提:安装并启动mysql
创建database 比如sosoapi,执行工程中自带的sosoapi.sql创建表。 可以看一下目前就只有十几个表:
mysql> show tables; +-----------------------+ | Tables_in_sosoapi | +-----------------------+ | t_api_doc | | t_inter | | t_inter_param | | t_inter_resp | | t_module | | t_proj | | t_proj_log | | t_proj_mem | | t_proj_privilege | | t_proj_role | | t_proj_role_privilege | | t_resp_schema | | t_suggest | | t_sys_msg | | t_user_basic | | t_user_cube | | t_user_detail | | t_user_ext | | t_user_login | | t_user_msg | | t_user_token | +-----------------------+
修改几个配置文件:
cfg.properties 系统相关配置 ip地址等; --这里如果不改ip地址,其他人访问的时候图片等等都访问不到了。
spring-mybatis.xml、jdbc-mysql.properties 配置数据库连接 mail-cfg.properties 发送邮件相关账号设置,包含注册相关的发送邮件账号和项目变更通知的邮件发送账号,具体配置可参考注释说明。
我是直接将sosoapi-web.war放到tomcat的webapp下的。
启动tomcat,访问:http://ip:8084/sosoapi-web
遇到了一个问题:首页可以访问成功,但是一直连不上数据库。
mark:注册的时候一直提示邮箱已经使用,检查下数据库连接是否OK。
百度到,默认情况下,mysql帐号不允许从远程登陆,只能在localhost登录。提供了两种方式设置mysql可以通过远程主机进行连接。 具体可以参考【http://blog.csdn.net/freecodetor/article/details/5799550】 我这里使用了第一种方法:改表法
登录Mysql之后:
mysql> use mysql; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A
Database changed mysql> select user,host from user; +-----------+------------+ | user | host | +-----------+------------+ | root | % | | root | 10.45.6.24 | | mysql.sys | localhost | +-----------+------------+ 3 rows in set (0.00 sec)
注意,这里我已经改了。没改之前,host的值不是'%',是'localhost'; 改成%之后,就允许远程连接了。 我重启了tomcat之后,就可以正常访问这个工程了。 本地验证远程连接这个数据库也可以连接上:
当我们注册的时候,会发送邮件到你注册的邮箱; 配置邮箱的相关信息可以参考如下配置:
host=smtp.126.com charset=UTF-8 default.from.email=xuhong9636@126.com default.from.passwd=password default.from.name=xuhong notice.from.email=xuhong9636@126.com notice.from.passwd=password notice.from.name=notice 如果由于一些特殊的原因比如无法访问外网导致邮件发送不了,可以直接修改表数据来实现验证激活 update t_user_basic set valid=1 where email='dddd@qq.com';