nbr服务器端代码的编译和运行
1.1.1 系统要求
服务器端可部署于如下操作系统:
- Windows7 家庭版、专业版、旗舰版。
- Window10 高级家庭版、专业版、企业版、教育版、LTSB版。
- Windows server 2008、2012、2016。
硬件配置要求:
- Intel i3二代处理器
- 8GB内存
- 120G 固态硬盘
1.1.2 需要安装的软件
Eclipse开发工具、WAMP集成环境、MySQL5.6.17、”皇后”windows服务。
上述软件可到中国移动和彩云网盘下载:2.85G、下载不限速。(链接: https://caiyun.139.com/m/i?185CEjK0bghq6 提取码:7GcM )
1.1.3 安装WAMP
1.1.3.1 安装
安装完成后,关掉Apache服务,如下图所示:
关掉后,托盘图标即由绿色变成黄色。这样可以节省一些内存。
1.1.3.2 修改mysql密码
从wamp图标中打开mysql命令行,密码为空。依次执行以下命令,将密码修改为“WEF#EGEHEH$$^*DI”(该密码被“小丸子”工具使用,切勿自定义密码):
mysql> use mysql
Database changed
mysql> update user set password=PASSWORD('WEF#EGEHEH$$^*DI') where user='root';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 0PROFILE_Index
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
1.1.3.3 创建nbr数据库
命令:
mysql> create database nbr;
Query OK, 1 row affected (0.01 sec)
1.1.3.4 令本机mysql可以被其它机器连接
错误信息: SQL Error (1130): Host ‘192.168.1.88’ is not allowed to connect to this MySQL server
说明所连接的用户帐号没有远程连接的权限,只能在本机(localhost)登录。
需更改 mysql 数据库里的 user表里的 host项 ,把localhost改称%
,登录mysql服务器,执行以下命令:
mysql>use mysql;
mysql>update user set host = ‘%’ where user =’root’;
mysql>flush privileges;
mysql>quit
备注:云服务器设置远程访问别忘了开放3306端口,否则连接不上
原文:https://blog.csdn.net/runner1920/article/details/79495595
如果仍然无法连接,请查看防火墙设置。
1.1.3.5 刷新数据库工具“小王子”
找到代码中的小王子加强版.exe,双击它更新代码、运行sql文件刷新数据库
更新代码是执行svn命令,从svn服务器上将代码更新下来(-》在本地电脑搭建SVN服务器),所以需要当前文件夹从svn上checkout下来的,可以执行svn update命令。
可以下载TortoiseSVN客户端,checkout代码。
同目录下的helper.ini是“小王子”的配置文件,内容如下:
[General]
WAMP=C:\wamp\wampmanager.exe
Mysql=C:\wamp\bin\mysql\mysql5.6.17\bin\mysql.exe
Sql=D:/BXERP/branches/20190902_v1_1/src/nbr/src/sql
JenkinsEnv=0
DeletePrivateDBs=1
SVNRevision=-1
[PrivateDBTest]
RunSPTest=0
RunSPDTest=0
RunFunctionTest=0
[PublicDBTest]
RunSPTest=0
RunSPDTest=0
[StaticDB]
RefreshCommodityHub=0
设置了WAMP、Mysql、Sql脚本文件夹的路径。
JenkinsEnv=0,“小王子”只操作数据库,JenkinsEnv=1时,“小王子”会配合Jenkins完成Jenkins任务。
DeletePrivateDBs=1表示是否要删除旧的数据库。
SVNRevision表示将sql代码更新到那个版本,等于-1代表是最新版本。
PrivateDBTest和PublicDBTest下的属性,等于0代表不跑sptest(存储过程测试),等于1代表要跑这些sptest。
RefreshCommodityHub表示是否创建商品参考数据库,等于0表示不创建,等于1表示要创建。
1.1.4 将项目导入到Eclipse
在Eclipse选择File -> import –> Existing Project into Workspace:
导入nbr项目,确定导入:
1.1.5 配置JDK环境
选择Window -> Preferences,配置JDK1.8环境:
点击nbr根目录,右键Build Path -> Configure Build Path –> Libraries:
修改为JDK1.8:
1.1.6 设置Maven Build
- clean package
其中1处可以采用默认设置,因为Eclipse自带一个Maven。
- Debug nbr
- Debug maven
关键命令:test -Dmaven.surefire.debug
参考:http://www.cnblogs.com/jenniferhuang/p/3833866.html
这时,运行测试会停在以下行不再动(端口是5005):
需要新建一个远程调试:
测试才能继续跑下去:
- Run设置
1.1.7 Maven Update Project
右键nbr项目 -> Maven –> Update Project:
1.1.8 创建”皇后”Windows服务
“皇后”windows服务主要是用来与服务器进行进程间的通信,完成为公司创建对应的数据库的工作。在我们的系统中,一家公司(即一个门店)是对应一个数据库的,不同公司之间数据分开存储。
在mysql创建数据库nbr,运行“小王子”后,会创建相应的表和存储过程。nbr数据库是一个包含示例的数据库,对应着一个示例商家门店(即公司)。
如果不需要在CMS商家管理后台新增商家门店,可以先不用安装,因为“皇后”需要执行svn命令更新sql文件,这是需要svn服务器的。所以不安装“皇后”windows服务只是影响新增商家(即公司)这一个功能的使用。
1.1.8.1 在D盘创建QueenService文件夹,复制Queen项目中install到D盘
1.1.8.2 将以下3个文件也复制到D盘的Bin目录
1.1.8.3 注意修改helper.properties的路径信息
1.1.8.4 使用SVN checkout将数据库文件放到sql文件夹
这里需要用到SVN(QueenService需依赖其运行,查看文章:在本地电脑搭建SVN服务器、客户端),因为QueenService.jar有执行svn命令:
1.1.8.5 创建以下2个空文件夹
1.1.8.6 以管理员身份运行intall.bat,创建windows服务
1.1.8.7 设置QueenService的用户名和密码
例如本机的用户名为WPNA,密码为空格。创建”皇后”服务成功后,在服务里面找到QueenService:
1.1.8.8 启动QueenService服务
至此,QueenService皇后服务安装成功。
1.1.9 运行项目
启动wamp,选择debug_nbr、run_nbr,就可以以调式或运行的方式启动nbr项目:
项目启动成功后,就可以在浏览器输入 http://localhost/home/adminLogin.bx 访问项目了。
1.1.10 项目的使用
1.1.10.1 登录
登录需要输入公司编号、用户名和密码。所有公司编号信息都保存在了公共数据库nbr_bx中,可以在nbr_bx数据库查看:
以默认的公司为例,即编号F_SN为668866,它的数据库F_DBName为nbr,我们要使用这个公司,就需要访问nbr这个数据库,并且查询t_staff表:
找到这个公司的老板账号为15854320895,密码F_Salt是经过MD5加密的,默认为000000。
所以在登录页输入公司编号为668866,账号为15854320895,密码为000000,即可登录nbr公司: