【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,访问::8084/sosoapi-web
遇到了一个问题:首页可以访问成功,但是一直连不上数据库。
mark:注册的时候一直提示邮箱已经使用,检查下数据库连接是否OK。
百度到,默认情况下,mysql帐号不允许从远程登陆,只能在localhost登录。提供了两种方式设置mysql可以通过远程主机进行连接。
具体可以参考【】
我这里使用了第一种方法:改表法
登录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‘;
sosoApi 环境搭建