先说一下为什么要从jsp过渡到vue
1.准备把系统全部升级为api项目(spring-boot restful)遗弃掉jsp,主要为了解决多项项目后台代码重用问题,项目升级为微服务(spring-cloud)架构,比如首页一个项目 后台管理一个项目中间肯定有很多重复业务代码,当然可以通过搭建私有maven源封装公共代码,本文中先不考虑这类解决方案。另外vue这类框架组件模板这些特性开发和维护起来和纯撸jQuery逻辑清晰不少。
2.项目发展大了肯定要前后端分离,当然前期肯定全栈式开发前后端两遍忙乎,但是个人感觉后期收益高于前期的辛苦。
3.jsp渲染确实慢
4.个人架构方向爱好 ,java流的技术站方向》spring-cloud+spring-boot restful+vue 这种架构。
问题1:不准备一次性重构,希望渐进式迁移(直接上全家桶不准备在jsp里面写vue代码),目前只能想到1种方案利用ngxin的location匹配url后面的路径区分是路由到原来的jsp页面还是新项目的vue|react页面,但是感觉这种方案不是特别好,希望有segmentfault前后端大神前来解惑。
问题2:大家都说SPA应用适合中后端开发,是我理解有误还是有其他原因? 电商 比如淘宝, 社交 比如QQ空间这类产品如果用SPA应用开发会有什么弊端?仅仅是因为SEO问题么?
私はreact + antdを使用しています。最大の利点は、クライアントとWebページの開発アイデアを統合することです。
クライアントがreactネイティブで開発されている場合、サーバーは一式を提供する必要があります。作業負担をさらに軽減できます
1. JSP が理解できない場合は、自分で答えることはできません。
2. あなたが言ったように、
Vue
タオバオ、ソーシャルネットワーキング、QQスペースなどのWebサイトを開発することは不可能ではありません、それどころか、Github上でそれを単一のページにすることは完全に可能です。 Douban を真似して実行しました。特に Web サイトがモバイル デバイスをサポートする場合、シングル ページ アプリケーションは非常に速く読み込まれます。単一ページのアプリケーションは、従来の Web ページに比べて SEO にあまり適しておらず、ブックマーク機能をサポートするには独自のコードを記述する必要があります。
書いてみるとわかりますが、これらのフロントエンド フレームワークに表示 Web サイトを書き込むのはあまりにも愚かです (ワンクリックでページを切り替える必要があります)。これらのフレームワークのルールに従って書き直すと、意味がなく、背景テンプレートとは比較にならないほど面倒です。
jsp のレンダリングが遅い、何を言っているのかわかりません。バックグラウンドの Java の実行が遅いのですか?メッセージ キューを使用して、非同期にできるものすべてを非同期にし、負荷分散などを行います。フロントエンドのレンダリングが遅いですか? JS/CSS およびその他の静的ファイルは CDN にキャッシュされます。
ミッドエンドおよびバックエンド管理プラットフォームは、これらのフロントエンド フレームワークに非常に適しています
vue を使用するので、jsp は使用しないでください。jsp は、生成されたページをブラウザーに送信し、ブラウザーでレンダリングするために vue を使用します。
単一ページを作成するには、vue と java を使用します。ブラウザが初めて Web サイトにアクセスすると、Java が静的な HTML ページと js をブラウザに送信し、フロントエンドがルーティングをシミュレートし、js がフェッチと ajax を使用して HTTP リクエスト データを送信します。 . java が HTTP リクエストを受信してデータを返した後、vue がリクエストを受信してデータを取得し、表示ページを再レンダリングします。
ページをレンダリングする必要がないため、JavaはRESTを使用したjsonデータの送受信のみを担当し、パフォーマンスは確実に高くなります