新手-----controller中的render跳转

controller里面,从界面中可以请求到这个controller,并且执行对应的方法。但是就是render不到这个界面去。

QQ截图20210228115800.png


评论区

JFinal

2021-02-28 12:16

日志一定要开启,然后异常才会输出,进而才能知道原因,一般是路径错误

dqpb

2021-02-28 12:20

@JFinal 请问日志要怎么开启,我配置了那个日志的配置文件,但是我设置的是只显示执行的sql语句,不知道怎么配置显示报错信息。

JFinal

2021-02-28 12:25

@dqpb 主要是添加 log4j.properties 文件,下载首页右侧的 jfinal demo, 将里头的 log4j.properties 文件放到自己项目的合适位置即可

注意要添加 log4j 依赖

dqpb

2021-02-28 12:27

dqpb

2021-02-28 12:45

@JFinal 这个controller中render跳转的地址,会拼接上controller上@Path()注解里面的路径吗?我报的错误就是多了一个注解里面的那个 /customer,路径多了这一层。

JFinal

2021-02-28 13:46

@dqpb 稍微看看文档,内容很少

dqpb

2021-02-28 14:06

@JFinal 我把html文件直接放在webapp目录下,没有设置baseViewPath,然后是通过scan()扫描包的方式配置的请求映射,最后面这个跳转界面的时候,最终跳转的界面的路径前面多了一个 /customer。这个/customer就是我配置Controller时 @Path()里面的值,本来正常的页面跳转路劲应该时 /src/main/webapp/XXX.html的。但是不知道为什么变成了 /src/main/webapp/customer/XXX.html。

JFinal

2021-02-28 14:42

@dqpb @Path 注解一共有两个参数,其中第二个参数是 viewPath,例如
@Path("/customer", "/")

当你省略第二个参数的时候,默认值将使用第一个参数,所以
@Path("/customer")
将等价于:
@Path("/customer", "/customer")

所以,你的 render 中的路径会多出来一个 customer

@Path 注解是从原先的 configRoute(Routes me) 中的
me.add("/customer", controllerClass, "/customer")
演化过来的,所以配置规则也沿用了以前

这个在文档中有详细的说明:
https://jfinal.com/doc/2-3

文档中有如下一句话:
@Path 注解可以配置 controllerPath 与 viewPath 两个参数,当 viewPath 省略时默认与第一个参数值相同。上例中的两个 Controller,第一个只配置了 controllerPath,第二个还配置了 viewPath。

dqpb

2021-02-28 14:55

@JFinal 问题解决了,感谢大佬。

JFinal

2021-02-28 16:37

@dqpb 注意看文档,节省大量时间,都是最基本的用法

dqpb

2021-03-02 13:08

@JFinal 请问站长,那个Enjoy的sql模板,那个sqlTemplate里面是只能执行查询语句吗?不可以执行其他的数据操作sql语句吗?

dqpb

2021-03-02 13:41

@JFinal 已经解决了,我看文档跳着看,错过了怎么执行数据操作语言。

热门反馈

扫码入社