怎么使用beetlsql的自定义方法?

发布于 2021-11-26 20:16:34 字数 184 浏览 908 评论 5

@闲大赋 你好,想跟你请教一个问题:

1 beetlsql里面怎么使用自定义方法? 按照demo里的操作方式,提示 “该方法未注册”呢 ! 郁闷!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

白龙吟 2021-12-01 11:58:09

收到收到,多谢老板!

旧城烟雨 2021-12-01 10:51:35

代码生成用的模板跟beetlsql不一样,因此,你需要用代码生成的GroupTemplte

SourceGen.gt.regtisterFunction("xxx",new YourFunction())

高跟鞋的旋律 2021-11-30 09:27:22

代码生成用的模板跟beetlsql不一样,因此,你需要用代码生成的GroupTemplte

SourceGen.gt.regtisterFunction("xxx",new YourFunction())

然后再调用sqlManager.genxxx 方法生成代码

旧城烟雨 2021-11-30 06:06:40
package com.xxx;


import org.beetl.core.Context;
import org.beetl.core.Function;


public class YearFunction implements Function
{
    public String call(Object[] paras, Context ctx) {
 return "2015";
    }
} 

上面是按照文档写的function,开始时不叫YearFunction,包名也不叫xxx,不要鄙视我。

FN.db.year=com.xxx.YearFunction

这是放在src/main/resources 下的 btsql-ext.properties 里面的配置内容

package ${package};
${imports}
/*
* ${comment}
* gen by beetlsql ${date(),"yyyy-MM-dd"}
*/
public class ${className} ${!isEmpty(ext)?"extends "+ext} {
	@for(attr in attrs){
		@if(!isEmpty(attr.comment)){
			private ${attr.type} ${attr.name} ;//${attr.comment}
		@}else{
			private ${attr.type} ${attr.name} ;
		@}
	@}

	@for(attr in attrs){
		@db.year();
	@}
}

这是模板文件,调用了那个方法,期望是打印出attrs.size~个2015,可实际上却打印了该方法未注册...

package com.test;
import java.math.*;
import java.util.Date;
import java.sql.Timestamp;

/*
* 
* gen by beetlsql 2016-05-14
*/
public class User  {
			private Integer id ;
			private Integer age ;
			private Integer roleid ;//用户角色
			private String name ;
			private String username ;//用户名称
			private Timestamp date ;

<html><head><title>beetlException</title><style><!-- *{margin:0;padding:0}.main{position:absolute;margin:auto;width:100%;z-index:9999999999999999999;}H1{font-family:Consolas,Arial,sans-serif;color:white;background-color:#a0a0a0;font-size:24px;padding-left:10px}H3{font-family:Consolas,sans-serif;color:#333;font-size:13px;font-weight:lighter;margin-top:5px;font-style:italic}BODY{font-family:Consolas,Arial,sans-serif;color:black;background-color:white}xmp{margin:auto;overflow:auto;width:100%;display: block;white-space: pre-wrap;font-family:simsun,sans-serif;background:white;color:black;font-size:13px;font-weight:lighter;color:#666;line-height:25px;}A{color:black}A.name{color:black}HR{color:#525d76}.t1{margin-top:0;}a.powered:hover{color:#dd1122}--></style></head><body><div class='main'><h1>>>该方法未注册(FUNCTION_NOT_FOUND):db.year 位于17行 资源:package ${package};
${imports}
/*
* ${comment}
* gen by beetlsql ${date(),"yyyy-MM-dd"}
*/
public class ${className} ${!isEmpty(ext)?"extends "+ext} {
	@for(attr in attrs){
		@if(!isEmpty(attr.comment)){
			private ${attr.type} ${attr.name} ;//${attr.comment}
		@}else{
			private ${attr.type} ${attr.name} ;
		@}
	@}

	@for(attr in attrs){
		@db.year();
	@}
}
</h1><HR size='1' noshade='noshade' class='t1'><xmp style='padding-left:20px'>14|@}
15|
16|@for(attr in attrs){
17|@db.year();
18|@}
19|}
</xmp><HR size='1' noshade='noshade'><h3><a href="http://ibeetl.com" class="powered">Powered by ibeetl.com</a></h3><div></body></html>

 

偏爱自由 2021-11-27 21:15:43

具体点

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文