-
浏览器发起请求在UJCMS搜索框中输入搜索关键字,点击搜索按钮,即可向服务器发起一个请求。
URL地址为:https://demo.ujcms.com/search?q=%E4%B8%AD%E5%9B%BD
Controller这个请求由程序的com.ujcms.cms.core.web.frontend.SearchController#search方法处理。
该方法没有做太多事情,只是返回到对应的搜索模板sys_s...
-
为了使MyBatis查询更加方便,UJCMS使用了查询解析器。相关代码的包名:com.ujcms.commons.query
单表查询只检索本表字段。
# t.username_ like ?
Like_username
# t.price_ = ?
EQ_price_Int
Many-to-One 查询# 符合规则的
# join ujcms_user user_ on t.user_id_ = user_.id_
# user_.usernmae like ?
Like_u...
-
一般情况下,全文搜索是通过中文分词模糊匹配的。比如搜索那家饭店的口味比较好,文章中出现饭店 口味等词的内容都会搜索出来。这和主流的搜索引擎(如百度、谷歌等)表现是一致的。
实际应用中,有些客户希望像数据库那样的通配查询,如like '%饭店%'。虽然这不是lucene的工作方式,但如果一定要实现这样的效果...
-
系统中默认禁止jsp的访问。允许jsp访问容易导致一些漏洞,最为常见的攻击方式是通过上传jsp文件获取webshell。
在com.jspxcms.core.ShiroConfig中定义了对jsp jspx后缀的过滤。
@Bean
public FilterRegistrationBean jspDispatcherFilterRegistrationBean() {
FilterRegistrationBean filterRegistra...
-
首先要确定多数据源是指什么。
如果多数据源是指系统中的表分别放到不同数据库里(比如,栏目表cms_node放到A数据库,文章表cms_info放到B数据库),这种情况是不支持的。
如果是系统中的表放到一个数据库里,但还希望通过二次开发从其它数据库里读取一些数据,这种情况是可以的。
Jspxcms系统中使用的框架是spring-bo...
-
Tomcat部署目录Tomcat部署非常简单,直接把程序复制到{Tomcat安装目录}/webapps目录下即可。该目录下会有很多默认的文件夹,如docs examples host-manager manager ROOT,这些都是Tomcat的文档、演示以及管理平台,实际使用中都不需要,如果配置不当甚至还会有安全隐患。所以在部署前,要先删除这些文件夹。
webapps下有...
-
系统后台的列表页通常都有查询功能,如果通过写sql语句进行查询非常费时,特别是在查询条件较多的情况下。如果查询条件发生变化,则需要修改sql语句,非常麻烦。
jspxcms使用页面动态查询来解决这个问题,直接解析查询表单的名称来生成sql查询条件,只要修改页面就可以实现查询,而不需要修改java代码和写sql语句。
/WE...
-
Shiro是一个很简洁的安全框架,类似的Spring Security则要复杂许多。虽然spring-boot集成的是Spring Security,但我们还是选择了Shiro。
Shiro官网:http://shiro.apache.org/
Shiro单点登录cas集成:http://shi
-
webapp目录
jsp jsp文件。如果需要可以直接访问的jsp页面,可以放在这个文件夹下,放到其他文件夹下的jsp是无法直接访问的。访问路径不需要加上jsp路径,例如/jsp/abc.jsp文件的访问路径为abc.jsp。static 静态资源文件。
cssimgjsvendor 第三方组件
-
系统中有定时任务功能,里面有一些系统已经定义好的任务类型。如果系统自带的任务类型里没有自己需要的,可以开发一个任务类型。
本着无侵入的二次开发设计思想,开发一个自己的任务类型也可以做到不修改系统原有代码和文件。
定时任务配置文件Jspxcms8.0及以后版本:
/src/main/resour