这个项目主要是为了熟悉SpringBoot搭建web项目,及打war包,部署到tomcat中
先贴页面吧
页面很low 毕竟我只是菜鸟,该app程序功能已经写完了,上传图片到服务器,后台接口解析图片中的文字,返回页面,页面展示图片及图片中的文字。
这个项目依旧是使用SpringBoot搭建的,至于如何搭建,真是太简单,eclipse 安装一个sts插件,
建项目的时候直接进Spring文件夹,找springboot项目,记得勾选web插件 over
Springboot项目搭建OK,开始实现功能,
该项目主要有以下几个点:
1.图片上传 及图片上传前预览
2.后台保存图片到指定文件夹
3.组装参数,调用ocr服务
4.将识别值返回页面展示
项目中的一些坑:
1.上传图片尽可能使用组件异步传输;这个问题,因为我当时不清楚那些上传组件,开始出问题的地方,我一直想用ajax去上传,但是ajax好像不可以上传图片,后来使用了表单提交,导致页面会刷新,出现很多不好解决的问题,例如图片没法加载了。很难实现图文对比,这个看代码估计能看懂,我后来将页面预览的src传到了后台,又在上传完,返回了前台,用了一个很笨的方法算是实现了功能。
2.项目控制层的跳转一定要符合层级结构,我忽略了这点,直接在上传的controller中new了一个modelAndReview,setView原来的html名字,这就导致了页面的地址栏发生了改变,这是客户端就不能刷新地址,不然会报错,应该正确的做法是从uploadController中重定向到首页加载的controller中,这时页面的地址栏是不会发生改变了,不影响刷新地址栏
3.SpringBoot web项目打war包,这个需要改一下几个地方:
1.移除Springboot-web jar包中的tomcat 放开这个
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 移除嵌入式tomcat插件 -->
<!-- <exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions> -->
</dependency>
2.移除热启动的jar包
3.如果该pom文件的时候出现错误,内容大概是找不到web.xml 时,请看下面的东西
4.修改启动类解开注释的代码,注释掉main方法
打war包。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
tomcat部署的一些坑。
1.war包 扔到tomcat 的webApp目录下,可以将该目录下其他的东西干掉,bin目录里找start.bat执行
2.项目启动有问题,查看tomcat的版本,请使用tomcat8 看好了 8888888888888888
3.项目启动后 发现静态js 引的不对,这个就是由于访问时需要添加项目名称,该问题有个指标不治本的方法,将项目名称改成ROOT...it's over
还写了一些垃圾校验
git地址:https://github.com/zhaiyutao/com.zyt.pro.git
问题很多,请见谅