存档

2015 年 12 月 - 4 文章

标签服务实现漫谈

标签服务是一个较为通用的基础业务服务,比如博客系统对文章加标签、社交网络中为好友添加印象、收藏的歌曲贴标签方便整理等等。 其主要提供两类接口: 标签实体的管理/查询:负责标签实体的 CRUD 标签关联的管理/查询:将外部业务实体与标签建立/删除关联,根据外部业务实体 id 查询标签集 RDB 实现 基于关系型数据库的实现是最容易的,并且上大多数应用也是这样做的。 建立 tag 表,其中包含了 tag 的基础属性,例如 name、description 等 建立 tag_rel 关联表,其中主要包含了 object_id、tag_id 管理服务(创建/更新/删除)的实现非常容易;根据 object_id 查询其对应的标签集也很容易实现: SELECT tag_rel.tag_id, tag_rel.object_id, tag.name FROM tag_rel LEFT JOIN tag ON tag_rel.tag_id = tag.tag_id WHERE tag_rel.object_id = '2db775c1d2174a8c67fc39b86c3fc168' 问题 ....

More...

Java 开源博客 Solo 1.2.0 发布 - 一键启动

Solo 1.2.0 正式发布了,感谢一直以来关注 B3log 开源的朋友! 在这个版本中,我们引入了一个新的特性 —— 独立模式: * 不需要安装数据库、Servlet 容器 * 只需要安装好 Java 环境,一个命令就可以启动 这应该是史上最容易跑起来的博客系统了,欢迎大家下载体验,也欢迎来 Star/Fork ! ### 特性简介 * 基于标签的文章分类 * 博客/标签 Atom/RSSSitemap 输出 * [评论回复及邮件提醒](https://github.c....

More...

禁止浏览器自动填充表单字段

###场景 我们的登录表单一般都是 input text + input password: 登录 登录后如果用户选择了保存登录密码,那后续界面中如果有形如: 这样的两个 input(text+password)接在一起,那浏览器就会自动填充登录时的输入。 要用程序清空自动填充有两个方案: ###使用 autocomplete 属性 在不需要自动填充的 input 上设置 autocomplete 属性: 这个方案对于某些版本的浏览器可能不行。 ###使用假的 input 让浏览器去填充 在页面 `` 后加入: 这个方案原理是让浏览器去填充用户实际上看不到的 input。虽然看上去代码比较 low,但是很实用。 参考:Disabling Chrome Autofill

More...

Java 开源博客 Solo 1.3.0 发布 - Docker 支持

Solo 1.3.0 正式发布了,感谢一直以来关注 B3log 开源的朋友! 可以通过一个命令启动(不需要安装数据库、部署容器),也可以通过 war 方式部署容器,连接 MySQL。这应该是史上最容易跑起来的博客系统了,欢迎大家下载体验,也欢迎来 Star/Fork ! 在 1.3.0 中,我们正式支持了 Docker 方式启动,并已经同步至 Docker 镜像中央库。 ### 特性简介 * 基于标签的文章分类 * 博客/标签 Atom/RSSSitemap 输出 * [评论回复及邮件提醒](https://github.com/b3log/solo/wiki/Comment_r....

More...