智乐兔

技术分享

  • SPA单页seo最佳实践——Centos8下WLDOS前后端分离框架的seo

    SPA单页seo最佳实践——Centos8下WLDOS前后端分离框架的seo

    wldos平台前端是用reactJs开发的,使用的是客户端渲染模式,前端应用必然面临seo的问题。为了解决百度等国内搜索引擎不能收录动态单页应用的问题,采用Google的rendertron针对搜索引擎的网络爬虫专门优化。Google和bing搜索引擎已经可以很好支持单页应用的爬取,可以不走该方案,但是要做robots中显式声明对js、css放开抓取权限。 User-agent: Googlebot Allow: .js Allow: .css User-agent: Bingbot Allow: .js Allow: .css User-agent: msnbot Allow: ...

    查看全文

  • springboot核心技术-web开发-视图模板执行原理

    springboot核心技术-web开发-视图模板执行原理

    springboot是基于springframework发展起来的快速开发框架,web开发的发展主要是实现了前后端分离,spa单页应用流行,比如reactJs、vueJs等。由于seo的需求,spa单页应用的seo效果并不好,原来的springmvc仍然有用。springMvc在seo方面的作用主要是实现ssr(服务端渲染),以实现站点来自搜索引擎的自然流量。springboot保留了springMvc的支持,以模板引擎的方式支持服务的渲染,比如freemarker、thymleaf、js引擎等。freemarker是Java开发人员应用较多的一种解决方案,不过确实体验一般,和react、vu ...

    查看全文

  • Java项目还在用mybatis,写sql吗?

    Java项目还在用mybatis,写sql吗?

    本文只谈SQL的拼装。使用springboot搭建web项目,数据库的操作是重要一环。几乎清一色的后端框架,用的是mybatis、mybatis plus套装。其实,可以简化。 不评价MM框架的优劣。看一下web项目对数据库操作的需求是什么?作为一个支撑系统的研发者,要求高性能的DB操作,还要求高自定义的动态查询。若论性能,jdbc直连性能最高,SQL直接写在dao层,直接与jdbc驱动交互。不过直接操作jdbc的弊端是有大量代码冗余,结果集拼装时需要做map到bean的属性copy,性能也有影响。另外,根据动态查询条件拼装SQL查询语句,需要手动从参数取,再判断是否为空,如果为空则不拼装这个 ...

    查看全文

  • 从springboot自动装配、监听与自定义功能的执行原理到配件市场

    从springboot自动装配、监听与自定义功能的执行原理到配件市场

    springboot构建在spring-framework之上,Java bean的自动装配就是一个用户声明后靠框架自动实例化再放入spring bean容器的过程,容器有好几层,各有应用场景和生命周期,不必细究。 springboot以Bean为单位,以注解为标识,以bean工厂声明配置为突破口,以main方法为启动点,以一系列回调操作发起bean的装配,最终实现bean工厂的初始化。所有的类型,都是在spring启动时,一过性的加载的。 本文主要讲4种情形的原理: 1.自动装配 2.事件监听 3.自定义功能的执行 4.hook机制 这里面存在的问题:并发风暴(安全),优先级(一致性),死锁 ...

    查看全文

  • 安装谷歌浏览器插件react developer tools或者vueJs devTools 工具后浏览器地址栏后面没有出现react检测图标

    安装谷歌浏览器插件react developer tools或者vueJs devTools 工具后浏览器地址栏后面没有出现react检测图标

    安装谷歌浏览器插件react developer tools工具后浏览器地址栏后面没有出现react检测图标,起初怎么都不生效,查资料后说是要开启一个权限: 首先点击右上角的扩展程序链接图标,在弹出的框中点击管理扩展程序: 然后看到两个扩展程序,以react dev tools为例,点击详情:   打开配置界面:在允许访问文件网站这一项上开启,就可以检测访问的网站 是否采用了 react技术编写 但是,此时仍然不会出现右上角的react检测图标,还需要设置一个开关,看标红的那个图钉图标点击定住,才能常驻右上角,如果显示激活状态,则说明网页采用了react实现,vue同理。 & ...

    查看全文

  • 通过实例简析React编程哲学

    通过实例简析React编程哲学

    React 可以改变你对可见设计和应用构建的思考。当你使用 React 构建用户界面时,你首先会把它分解成一个个 组件,然后,你需要把这些组件连接在一起,使数据流经它们。在本教程中,我们将引导你使用 React 构建一个可搜索的产品数据表。不要以为这只是前端UI编程,即便是在最底层的基础支撑软硬件系统的研发当中仍然离不开此类的思维逻辑,认知物化视图有利于更加客观地形成分析心智模型的能力。 从原型开始 想象一下,你早已从设计者那儿得到了一个 JSON API 和原型。 JSON API 返回如下的数据: [ { category: “Fruits”, price:  ...

    查看全文

  • wldos平台2.0核心模块布道之应用市场和服务网格架构

    wldos平台2.0核心模块布道之应用市场和服务网格架构

    其实,在疫情期间 wldos1.5 版全部开源的前夕 2.0 的 wldos 平台已经呼之欲出了。那么,2.0 的 wldos 平台将会带来哪些惊世骇俗 ^^ 的改变呢?下面粗糙地描述一下吧! 2.0 最重要的一个升级是应用管理,直接跃迁为应用市场,你可以理解为 App Store。有了应用市场,开发者可以基于 wldos 支撑平台上开发自己的特性程序,然后发布在 wldos 应用市场,wldos 平台的用户可以在线选择安装这个特性程序从而扩展他的 wldos 平台。应用市场常见,但 SaaS 界开源的应用市场不常见! 2.0 另外较重要的升级是对分布式架构的支撑,这是一种类似漫游的服务网格架 ...

    查看全文

  • WLDOS平台正式启动开源了

    WLDOS平台正式启动开源了

    首先,本平台是为了推动数字时代尽快落地,为了开辟新的业态而研发,旨在抛砖引玉。 解决痛点:想利用网络化拓展业务,对如何拓展业务有困惑,需要一个可落地的软件搭建平台。 品牌战略:技术人的优势在于随时可以变成现实。WLDOS(拼音[wou da si],全拼:World Operating System)平台通过开源社区、线上服务和业态孵化三个纬度落地实践。 WLDOS平台发展模式:开源生态+托管服务+延伸业态。 机会点:通过插件化的应用架构给全体开发人提供一个扩展的舞台,人人可以增加自己的插件;通过多域、多租和多应用的支撑平台提供支持虚拟域的SaaS服务,人人可以托管自己的业务;通过扩展特性功能 ...

    查看全文

  • WLDOS云应用支撑平台V1.0.0在开源中国发布

    WLDOS云应用支撑平台V1.0.0在开源中国发布

    WLDOS云应用支撑平台V1.0.0开源版发布。 开源链接:https://gitee.com/wldos/wldos 开源中国:https://www.oschina.net/p/wldos 更多详情见官网:http://www.wldos.com WLDOS 云服务应用支撑平台,简称 WLDOS 云应用支撑平台或 WLDOS 平台,基础型新项目,适合新手跟随学习。WLDOS 基于多域架构,支持多租、多应用,SaaS 架构,致力于云管端解决方案。 WLDOS 云应用支撑平台,基于 springboot 二次封装的轻量级快速开发框架,SaaS 应用架构,后期支持脱离springboot 独立运 ...

    查看全文

  • Java语言开发的SaaS版前后端分离开发平台WLDOS

    Java语言开发的SaaS版前后端分离开发平台WLDOS

    WLDOS是World operation system或者World open system的缩写,表示驱动世界的开放系统,我们的理念是简化世界的复杂度,用一套系统协助解决所有问题。WLDOS是一个类SaaS(软件即服务)的云应用开发支撑平台,同时也是一个准系统,支持快速展开二次开发实现符合互联网需求的软件平台。 另解: WLDOS平台,基于springboot实现的轻量级快速开发框架,SaaS应用架构。默认支持多租户运行模式,同时支持关闭以单租户模式运行。 默认单实例运行,在分布式部署方面支持融入serviceMesh架构或者传统中心化分布式架构。WLDOS®寓意:世界的,未来的和开放的 ...

    查看全文

  • mysql查询异常 java.sql.SQLException: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_unicode_520_ci,IMPLICIT) for operation '='

    mysql查询异常 java.sql.SQLException: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_unicode_520_ci,IMPLICIT) for operation ‘=’

    异常原因:关联表的字段排序索引不同,批量修改全库的字符型字段的排序规则为Unicode: SELECT TABLE_SCHEMA '数据库', TABLE_NAME '表', COLUMN_NAME '字段', COLUMN_COMMENT '字段描述', CHARACTER_SET_NAME '原字符集', COLLATION_NAME '原排序规则', CONCAT( 'ALTER TABLE ', TABLE_SCHEMA, '.', TABLE_NAME, ' MODIFY COLUMN ', COLUMN_NAME, ' ', COLUMN_TYPE, ' ...

    查看全文

  • 前后端分离使用localStorage替代cookies并封装到umi-request组成跨终端请求插件wldos-request

    前后端分离使用localStorage替代cookies并封装到umi-request组成跨终端请求插件wldos-request

    做过前后端分离的都知道,cookies不是万能的,为了兼容移动端可以采用localStorage,然后做一些封装实现类cookies功能。前端token等凭据的保存依赖于HTTP请求和响应,umi3.0的umi-request插件是个好用的插件,两者结合就成了本文所述的跨终端请求插件。 本插件包含两部分:localStorage封装和request封装。 localstorage封装代码如下: const expirefix = "__expires__"; /** * @desc 在localStorage基础上封装支持过期时间的storage,代替cookie。 * @auth ...

    查看全文

在线客服
在线客服 X

售前: 点击这里给我发消息
售后: 点击这里给我发消息

智乐兔官微