SSM医疗后台Curd过程中出现的问题

Posted by Futari on 2021-03-07
Estimated Reading Time 3 Minutes
Words 998 In Total
Viewed Times
代码为传智博客医疗项目,代码在我Github

我在测试Curd时总结了所有报错的情况,研究了大半天终于修好了,总结一下:

1.新建窗口点确定后无响应,开发者工具显示add.do请求404,在RequestMapping路径正常的情况下,首先检查Controller(讲义的代码中Controller的RequestMapping默认不修改就是正确的),其次如果自己建的项目包不是com.itheima却直接复制了讲义代码,请打开SpringMvc.xml修改<dubbo:annotation的package为自己的包,还有dubbo的生产者和消费者指定的包路径都要自行修改,不知能直接复制

2.老版课件里文件名带有(1)导致无法识别的的请查看错误提示自行修改

3.点击确定按钮后新建失败的,报异常Could not open JDBC Connection for transaction; nested exception is java.sql.SQLException: com.mysql.cj.jdbc.Driver
org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction;因为windows上安装的是mysql8而parent的pom文件中驱动时mysql5,version修改为8.0.11</mysql.version>,并且将“spring-dao.xml”中driverClassName修改为支持mysql8的com.mysql.cj.jdbc.Driver即可解决

4.报错com.alibaba.dubbo.rpc.RpcException: No provider available from registry 120.25.85.89:2181 for service com.itheima.service.CheckItemService on consumer 192.168.60.1 use dubbo version 2.6.0, may be providers disabled or not registered ?这里登录到7001端口也可以看到只注册了一个health_backend消费者却没有对应的service生产者,其实和zookeeper和dubbo和Dao都没有关系,是Service内部出了问题不能作为provider,health_provider中的web.xml文件的属性的param-value构建时为classpath:applicationContext.xml应当修改为classpath:spring*.xml,因为我们resource中配置文件的编写统一使用的是spring-xxx.xml,不然根本扫描不到Spring容器的配置文件,前面包名出现问题的请把itheima改为自己的包写在<dubbo:annotation中,修改完成后如果错误变更为Could not create connection to database server,请参考第3条

5.时区出现错误The server time zone value ‘Öйú±ê׼ʱ¼ä’ is unrecognized or represents more than one time zone.按照提示添加时区(百度一下)

6.其它简单的报错信息请根据错误提示自行排查,谢谢!

右侧泛型中写~默认为简写,以左侧规定的泛型为准

@RequestBody可以接收POST请求content-type为application/json的参数,消息体中的参数为json格式,springmvc会使用MappingJackson2HttpMessageConverter将json格式的参数转换为java对象,MappingJackson2HttpMessageConverter默认支持的格式为content-type:application/json

  • 在GET请求中,不能使用@RequestBody。
  • 在POST请求,可以使用@RequestBody和@RequestParam,但是如果使用@RequestBody,对于参数转化的配置必须统一。

Maven多模块打包注意事项:父目录使用的是pom打包

其他的提供资源的或者接口的不参与业务和后台的打jar包,默认不加packing标签就是打jar

业务和后台模块使用war包,利用tomcat插件运行

问题1:打完ja包在linux运行时,提示报bean错,仔细研究后发现找不到驱动类,更新驱动解决,(这里其实还有另一个小问题,xml配置文件没写好显示找不到提供方,花长时间来解决dubbo配置问题,其实是service提供方配置文件出问题)

问题2:自己本机上调用dubbo服务没有问题,将服务模块放到服务器之后运行也没有问题,但是在调用服务功能时提示调用失败,首先怀疑是linux环境有问题,先检查zookpeer和dubbo没有问题,都检查完之后查看log4j的日志,发现是数据库连接失败密码有问题,但是我密码又没错,这里我发现是root账户没有远程的一个访问权限,gaint权限刷新之后就可以连接了

int[] arr = {1,2,3}数组形式是花括号,可变的列表是方括号[]。


如果您喜欢此博客或发现它对您有用,则欢迎对此发表评论。 也欢迎您共享此博客,以便更多人可以参与。 如果博客中使用的图像侵犯了您的版权,请与作者联系以将其删除。 谢谢 !