在本地的Tomcat服务器跑没问题;以下是发布到云服务器上的tomcat执行报的错

This application has no explicit mapping for /error, so you are seeing this as a fallback.
Thu Apr 04 12:14:56 CST 2019
There was an unexpected error (type=Internal Server Error, status=500).

Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: #42000 ### The error may exist in com/hunca/mapper/UserDeviceMapper.xml ### The error may involve defaultParameterMap ### The error occurred while setting parameters ### SQL: SELECT count(*) FROM (SELECT ca.cityName, ca.cityDevNum, d.devType, COUNT(1) AS deviceNum FROM (SELECT DISTINCT c.cityCode, c.cityName, COUNT(1) AS cityDevNum FROM userdevice u JOIN city c ON u.cityCode = c.cityCode WHERE 1 = 1 GROUP BY c.areaCode) AS ca JOIN userdevice d ON ca.cityCode = d.cityCode GROUP BY d.cityCode, d.devType) table_count ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: #42000 ; bad SQL grammar []; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: #42000

设置查询DB的参数的时候,导致了语法的问题

log中显示原因是这个:The error occurred while setting parameters,就是说设置参数的时候出错了。
原因:
1是不是云服务器上的DB跟本地跑的DB不一样.
2.如果可以,尝试下直接在云服务器上的DB里面直接使用那句SQL进行查询,看看有没有报错
3.可以在本地的DB里面直接使用那句SQL进行查询,看看有没有报错
4.删除云服务器的项目,重新把本地的项目导入到云服务器上,试试还会不会有报错