Spring集成React用来开发前端----SpringMVC + react 开发实时测试

之前的博客主要是写了如何用maven将webpack功能开启用于打包react相关的组件成bundle.js,并把bundle.js导入HTML中,这里主要介绍一下如何在项目开发中随时查看react修改的效果,这里运行的project使用了springMVC;IDE用STS(spring tool suite,Eclipse类似);React在Atom中修改;测试结果在chrome浏览器。

之前我尝试过将webpack部署到project中,run project并测试react,发现run failure,原因是bundle.js文件 out of sync,最终原因并没有很了解,猜测是webpack是maven plugin导入的,在run project时也是maven build 这样就会run project时候生成新的bundle.js,造成project building时的bundle.js总在更新,就会出现out of sync。这里的策略应该webpack和project分开运行,并将webpack生成的bundle.js路径设置成在project里生成,从而进行导入。 步骤如下:

1、项目结构
webpack和我的application project 是分开的两个maven webapp project,webpack project按照之前的maven-webpack进行配置,application project就是你自己的application了
这里写图片描述

下面看一下webpack.config.js配置的bundle.js输出路径

webpack.config.js里output的file路径设置成你application project里的路径,从而将bundle.js导入application(这里我用相对路径定位到api-view project)。

这里写图片描述

ok, 这样 就可以 mven clean install 或者 npm run-script watch(修改实时生成bundle.js),不懂的看我另一篇博文啦Spring集成React用来开发前端----maven项目中用webpack打包react相关组件

2、下面来看一下project里 关于react的组成
我的project是用了springMVC,前期的架构是很low的,controller里控制页面跳转及业务逻辑处理,当然会有service/dao/entity等,持久层用的hibernate,前端主要是ajax发请求,接受后端controller传递过来的json数据去拼接页面,对!很乱很low的一种方式,所以我后边的业务都打算用react实现了(前期选型真的很重要,有时候别偷懒会发现后边开发越来越顺利…),看一下project结构:

这里写图片描述

bundle.js是webpack project生成的,这里只要我修改了react相关组件,由于webpack是watch模式,它就会自动打包成新的bundle.js,对,打包到这里!bundle.js这个文件在哪里用得到呢?在queryAll.jsp里,看一下:
这里写图片描述

ok,这样你就可以顺利的run application了,application run起来后,你的应用就可以本地运行并用浏览器打开你的测试页面了(我的就是queryAll.jsp了),下一步的关注点就是bundle.js里的内容了,这里再重温下webpack,webpack将你写的所有react组件以及用到的package统统打包成一个文件,就是 bundle.js。下面介绍下如何开发react的IDE

3、Atom用来开发react
这个比较好用,你只需要把installed Packages里language-babel install一下就好,它可以转换jsx成js。
然后webpack project的woringdir(上边有提到)在Atom中打开,这里就可以随意编辑里边的jsx文件并保存,由于webpack的watch模式,会实时生成bundle.js文件,这个js在application中更新从而触发整个正在running的project在容器中更新(需要设置STS中的workspace:Preferences–>General–>workspace–>build automatically/refresh using native hooks or polling/save automatically before build打勾),这样你就可以直接在前端测试页面看到变化了。

这里写图片描述

当你在atom中修改组件并保存后,不要立刻就去页面测试,因为project 重新 refresh 并且building稍微用些时间。

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
springMVC集成流程引擎的过程可以参考以下步骤: 1.首先,选择一个合适的流程引擎,比如Activiti。在选择引擎之前,可以进行调研和比较,了解各个引擎的特点和适用场景。在这个例子中,选择了Activiti作为流程引擎。 2.在项目中引入相关的依赖,比如Activiti的jar包或者相关的maven依赖。可以参考Activiti官方文档或者相关教程获取所需的依赖信息。 3.配置流程引擎的相关属性和参数。可以在spring的配置文件中配置相关的bean,比如ProcessEngineConfiguration和ProcessEngine等。这些配置项可以根据项目需求进行调整,比如数据库连接信息、流程定义文件的位置等。 4.创建流程定义。通过编写BPMN(Business Process Model and Notation)文件,定义流程的各个节点、连线和用户任务等。BPMN是一种标准的流程建模语言,可以通过图形化的方式来描述流程。在Activiti中,可以使用Eclipse的插件或者在线工具来创建BPMN文件。 5.在springMVC的控制器中处理流程相关的请求。可以通过调用Activiti提供的API来启动流程实例、查询任务、完成任务等操作。根据具体业务需求,可以在控制器中编写相应的逻辑来处理流程中的各个节点。 6.在前端页面中展示流程相关的信息。可以通过前端框架如AngularJS或者React等来展示流程的待办任务、已办任务等信息。可以使用Activiti提供的REST API来获取流程实例、任务等数据,在前端页面中进行展示。 需要注意的是,集成流程引擎的具体步骤可能会因为项目的需求和具体的技术栈而有所差异。以上是一般的集成步骤,可以根据实际情况进行调整和扩展。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [spingMVC+spring+mybatis整合activiti工作流引擎](https://blog.csdn.net/qq_28382903/article/details/80482426)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Frank Lin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值