JPress 1.0 发布了,WordPress 的 Java 替代版

理工男海哥
 理工男海哥
发布于 2018年10月08日
收藏 20

JPress 1.0 发布了

没错,时隔两年,JPress 1.0 发布了,虽然只是 beta 版本。

这次 JPress 相对之前的版本,已经全部重写,包括 Java代码、js、html和css。所以,不再兼容 0.x 版本了,后期再提供迁移工具。

两年前,为什么JPress停止更新了呢?原因是我犯了几个很大的错误。

错误一:当时独创的“模板及模型”概念虽然开始很美好,但是随着模型的不断增多,通过模板配置来新增模型的方式显得很笨拙,当所有模型的数据全部冗余在 content 表,最终表现出来的是性能的急剧下滑。

同时,通过模板来定义模型,导致模型的权限设计变得极其的复杂或甚至不可用,导致JPress 0.x 版本迟迟未能完成权限的相关功能。

错误二:JPress 0.x 版本一直在模仿WordPress,甚至在思考如何去兼容WordPress的模板,导致及没有更多的创新,但是现在想想,其实这个世界根本不再需要一个新的WordPress,与其更好,不如不同。

这两年停了下来,自己有一些时间通过第一性原理去思考产品逻辑,用户到底需要的是什么?我个人认为是:
1、团队协作
2、精益运营
3、知识付费
4、中国生态

在未来,JPress也会围绕着几个核心去打造产品。

比如“中国生态”,决定了JPress会发力微信公众号和小程序的对接以及相关运营功能,我个人参加了很多的中国顶级的运营社群,其核心目的就是和各个运营大咖交流,能够把微信公众号、小程序的运营方法落实到JPress来,最终回馈给用户。这个不能学习WordPress...

比如“精益运营”,决定了JPress必须推出UTM(User Tracking Module)相关功能,通过UTM方便运营人员精细了解每个用户的行为,虽然现在JPress 1.0 只是很粗糙的版本,但是后续会越发强大。在这部分,我个人精读了《增长黑客》、《数据思维》、《吸金广告》、《疯传》等书,吸取了非常多精华思维,最终都会落实到JPress这个开源的产品里。

JPress这次发布,带来了4个全新的模板,这个4个模板不仅仅提供了JPress的模板,也提供了原生产品原型、设计原稿(psd)和html模板,这些都可以免费进行商用。今年,JPress团队会大力发布精品模板,在可用的中文模板数量上,我们争取在最短的时间内超越WordPress。

JPress这次发布,带来了全新的个人中心,用户可以注册、登录、修改个人信息、投稿和对评论进行管理。

JPress这次发布,带来了全新的权限设计,不仅如此,全新的权限设计集合JPress Module功能,用户开发新的 Module 的时候,不需要再思考权限的功能。后台菜单、url权限等都是自动的。

JPress这次发布,带来了一个小型的代码模块生成工具,通过简单的配置、运行main方法就可以生成新的Module。

JPress这次发布,是带了了全功能的发布,也就是说,所有的功能已经全部完成,在beta到正式版的这个阶段,JPress要做的只是优化代码、精细化缓存机制、增加更多的高质量模板、完善文档和视频教程。

以下是JPress的部分截图,欢迎留言和参与代码贡献。

最后,JPress要说的是,JPress是基于比WordPress更加宽松的开源协议LGPL开源的,并非是中国目前那些所谓的企业自定义开源协议。

希望用的开心。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:JPress 1.0 发布了,WordPress 的 Java 替代版
加载中

精彩评论

开源中国首席CE0
开源中国首席CE0
没有延续性就没有生命力。不是社区驱动的开源真的脆弱很多,作者说不玩就不玩了,观我欧爱死插讷多少这样的项目。还是希望作者不要一个人焊,将来不玩了、舍弃了,也好有社区接手。
理工男海哥
理工男海哥
JPress演示网站: www.jpress.io
杜福忠
杜福忠
:heartpulse: 顶~ 我们公司也一直在用了

最新评论(35

Role
Role
大力支持,好项目JFinal生态之一:clap::clap::clap::muscle:
理工男海哥
理工男海哥

引用来自“小树鹿鸣”的评论

怎么调试,现在跑起来,添加了文章后,都是乱码,数据是utf8_general_ci, 在idea 》starter-tomcat 启动了tomcat,后台跑了一大堆的服务,断点打了,也不顶用,怎么调试?

引用来自“理工男海哥”的评论

数据库建议用 utf8mb4 ,如果出现乱码,配置 jboot.propertie 的url添加下jdbc的编码配置

引用来自“小树鹿鸣”的评论

启动一个tomcat 启动了好几个service 是怎么原理,代码如何调试?
tomcat启动后,会去初始化JPress,JPress的某些配置需要读取数据库,读取数据库数据依赖service
小树鹿鸣
小树鹿鸣

引用来自“小树鹿鸣”的评论

怎么调试,现在跑起来,添加了文章后,都是乱码,数据是utf8_general_ci, 在idea 》starter-tomcat 启动了tomcat,后台跑了一大堆的服务,断点打了,也不顶用,怎么调试?

引用来自“理工男海哥”的评论

数据库建议用 utf8mb4 ,如果出现乱码,配置 jboot.propertie 的url添加下jdbc的编码配置
启动一个tomcat 启动了好几个service 是怎么原理,代码如何调试?
理工男海哥
理工男海哥

引用来自“小树鹿鸣”的评论

怎么调试,现在跑起来,添加了文章后,都是乱码,数据是utf8_general_ci, 在idea 》starter-tomcat 启动了tomcat,后台跑了一大堆的服务,断点打了,也不顶用,怎么调试?
数据库建议用 utf8mb4 ,如果出现乱码,配置 jboot.propertie 的url添加下jdbc的编码配置
小树鹿鸣
小树鹿鸣
怎么调试,现在跑起来,添加了文章后,都是乱码,数据是utf8_general_ci, 在idea 》starter-tomcat 启动了tomcat,后台跑了一大堆的服务,断点打了,也不顶用,怎么调试?
杜福忠
杜福忠
:heartpulse: 顶~ 我们公司也一直在用了
左华栋
左华栋

引用来自“Zzzzzzzz神”的评论

超越 WordPress ?怕是活在梦里,java这种静态语言不能动态加载模块,根本不适合做这种东西

引用来自“理工男海哥”的评论

@Zzzzzzzz神 java不能动态加载模块?不懂别误导新人。

引用来自“Zzzzzzzz神”的评论

不仅仅是模块,还有插件,类,静态语言不可能动态访问的,还有dl()函数,php是内置模板引擎的,你这个肯定得引入模板引擎,这样对模板肯定就固化,而且你这功能比WP少太多了吧,可以可视化编辑吗?

引用来自“理工男海哥”的评论

@Zzzzzzzz神 可以直接修改模板文件的,实时生效的。截图上有,至于可视化,其实也是通过js修改html,本质是一样的。
这货对 java 一无所知,就知道php那套,然后觉得java 这个不如,那个不行。 回复都笑死我了,跑这里来丢人。。。
这些node 都能实现的东西,他以为java 还实现不了。
理工男海哥
理工男海哥

引用来自“Zzzzzzzz神”的评论

超越 WordPress ?怕是活在梦里,java这种静态语言不能动态加载模块,根本不适合做这种东西

引用来自“理工男海哥”的评论

@Zzzzzzzz神 java不能动态加载模块?不懂别误导新人。

引用来自“Zzzzzzzz神”的评论

不仅仅是模块,还有插件,类,静态语言不可能动态访问的,还有dl()函数,php是内置模板引擎的,你这个肯定得引入模板引擎,这样对模板肯定就固化,而且你这功能比WP少太多了吧,可以可视化编辑吗?
@Zzzzzzzz神 可以直接修改模板文件的,实时生效的。截图上有,至于可视化,其实也是通过js修改html,本质是一样的。
理工男海哥
理工男海哥

引用来自“开源中国首席CE0”的评论

没有延续性就没有生命力。不是社区驱动的开源真的脆弱很多,作者说不玩就不玩了,观我欧爱死插讷多少这样的项目。还是希望作者不要一个人焊,将来不玩了、舍弃了,也好有社区接手。
@开源中国首席CE0 会公司化运作,放心吧
开源中国首席菜菜
开源中国首席菜菜

引用来自“Zzzzzzzz神”的评论

超越 WordPress ?怕是活在梦里,java这种静态语言不能动态加载模块,根本不适合做这种东西

引用来自“银杏果果”的评论

java是可以动态加载模块的,去了解下ClassLoader。

引用来自“Zzzzzzzz神”的评论

java是常驻内存,可视化编辑怎么重启服务?用插件吗?还是shell脚本,html改变得话你怎么监听java服务?,而且好像只看到后台,前端得显示呢。

引用来自“银杏果果”的评论

前端展示甚至可以完全脱离后台,仅需要进行数据交互,既然java后台能进行动态加载模块并运行,前端显示那都不是事。你去了解Jetty这种java web容器的热部署功能就能窥得一二了。

引用来自“Zzzzzzzz神”的评论

难道这东西要搞前后端分离么,那不就更复杂了,纯数据交互要验证得东西太多,而且这种CMS,前后端分离对用户来说会麻烦一点吧,要部署两次,实现肯定能实现,但是静态语言做这种东西肯定没有php这种天生都动态语言来得方便,要不然java怎么会每次更新都加入大量动态特性。
osgi了解一下。
返回顶部
顶部