在使用JOOQ前,这些问题不能不清楚

在使用JOOQ前,这些问题不能不清楚,第1张

在使用JOOQ前,这些问题不能不清楚

一、使用JOOQ,根据用户名查询记录.

以下是从网上随机找的一个例子.

1。public class DruidConnection {

。。。

2。public class DruidUtil {

。。。

3。

import java.util.Map;
import java.util.Set;
 
import org.jooq.Condition;
import org.jooq.DSLContext;
import org.jooq.Record;
import org.jooq.Result;
import org.jooq.SelectQuery;
import org.jooq.Table;
import org.jooq.UpdateQuery;
import org.jooq.impl.DSL;
 
import com.fendo.gui.util.DruidUtil;
 

public class JooqDao {
 
    private DSLContext dslContext= null; 
    
    
    private DSLContext getdslContext()  
    {  
    	//获取连接
        dslContext = DSL.using(DruidUtil.getConnection());  
        return dslContext;  
    }
    
    
    public void select(String add)  
    {  
        DSLContext getdslContext = getdslContext();  
        Table table = DSL.table("user");  
        SelectQuery selectQuery = getdslContext.selectQuery(table);//获取查询对象  
        Condition eq = DSL.field("name").eq(add);//查询条件  
        selectQuery.addConditions(eq);//添加查询条件  
        Result fetch = selectQuery.fetch();  
        for (Object aResult : fetch) {  
            Record record = (Record) aResult;  
            System.out.println(record);  
            System.out.println(record.getValue("name"));  
        }  
      }  


原文链接:https://blog.csdn.net/u011781521/article/details/79730016

统计了下,该例子有接近500行。DruidConnection,DruidUtil获取连接,归还资源, 这些还需要自己 *** 心。

二、以下是另一个的例子(ORM Bee)

import java.util.List;

import org.teasoft.bee.osql.Op;
import org.teasoft.bee.osql.PreparedSql;
import org.teasoft.bee.osql.chain.Select;
import org.teasoft.exam.comm.Printer;
import org.teasoft.honey.osql.chain.SelectImpl;
import org.teasoft.honey.osql.core.BeeFactory;


public class QueryCompare {
	private static PreparedSql preparedSql = BeeFactory.getHoneyFactory().getPreparedSql();
	public static void main(String[] args) {
				Select t = new SelectImpl();
		        t.select() //查所有列
//		        t.select("name")  //也可以查具体的列
				.from("orders")
				.where()
				.op("name", Op.eq, "bee")
				.isNotNull("createtime")
		        ;
		        
		        List list1= preparedSql.select(t.toSQL());
		        Printer.print(list1);
	}

}

可以看出,该例子更加简单。

不需要自己管理数据库连接,只需要在bee.properties配置了url,数据库用户名和密码,其它就交由ORM Bee框架处理。 表达式,也是 类似sql的field_name='value'这种风格。

另外,Bee实现了自动解析复杂查询。只需要将前端查询的条件传到后端,剩下的由Bee框架来处理。ORM Bee复杂查询后端实现自动化处理,后端只需要要类似以下两条语句。

  1. Condition condition=SearchProcessor.parseSearch(search);

  2. List list17 = suidRich.select(new Users(), condition);

详细教程,参考: (二十三)ORM Bee复杂查询后端实现自动化处理

-----------------------------------------------------------------

为适应互联网时代软件需求量大,需求变更频繁,性能要求高等要求,ORM Bee应运而生!

Bee,互联网新时代的Java ORM框架,更快、更简单、更自动,开发速度快,运行快,更智能! 

Bee,一个简单,易用,功能强大(编码少、开发速度快,运行快)的 JAVA ORM 框架。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5686129.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存