一、使用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;/**     * @title: JooqDao.java   * @package com.fendo.gui.jooq   * @description: Jooq简单的增删改查  * @author: fendo  * @date: 2018年2月27日 上午9:27:02   * @version: V1.0
*/
public class JooqDao {private DSLContext dslContext= null; /*** *@title getdslContext   *@description: 获取DSLContext对象  *@author: fendo  *@date: 2018年2月27日 上午9:30:55  *@return  *@throws*/private DSLContext getdslContext()  {  //获取连接dslContext = DSL.using(DruidUtil.getConnection());  return dslContext;  }/*** *@title select   *@description: 简单实体查询 - 根据用户名*@author: fendo  *@date: 2018年2月27日 上午10:01:35  *@param add  *@throws*/public void select(String add)  {  DSLContext getdslContext = getdslContext();  Table<Record> table = DSL.table("user");  SelectQuery<Record> selectQuery = getdslContext.selectQuery(table);//获取查询对象  Condition eq = DSL.field("name").eq(add);//查询条件  selectQuery.addConditions(eq);//添加查询条件  Result<Record> 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;/*** @author Kingstar* @since  1.11*/
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<String[]> 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<Users> list17 = suidRich.select(new Users(), condition);

详细教程,参考:

(二十三)ORM Bee复杂查询后端实现自动化处理

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

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

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

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

在使用JOOQ前,这些问题不能不清楚相关推荐

  1. CSS3 选择器——属性选择器

    上一节在<CSS3选择器--基本选择器>中主要介绍了CSS3选择器的第一部分,这节主要和大家一起来学习CSS3选择器的第二部分--属性选择器.属性选择器早在CSS2中就被引入了,其主要作用 ...

  2. ​css3属性选择器总结

    css3属性选择器总结 (1)E[attr]只使用属性名,但没有确定任何属性值 <p miaov="a1">111111</p> <p miaov=& ...

  3. HTML5属性选择器以什么开头,CSS3 选择器 属性选择器介绍

    属性选择器早在CSS2中就被引入了,其主要作用就是对带有指定属性的HTML 元素设置样式.使用CSS3属性选择器,你可以只指定元素的某个属性,或者你还可以同时指定元素的某个属性和其对应的属性值. 从上 ...

  4. 关于CSS的学习内容三

    关于CSS的学习内容三 35.HTML5发展史 36.HTML5的浏览器兼容 37.HTML5语法 38.HTML新增语义化标签 39.Video和audio的应用 40.HTML5智能表单----- ...

  5. CSS3 选择器——笔记+实战案例(基本选择器、组合选择器、属性选择器、伪类选择器)...

    使用CSS3 选择器--笔记 CSS通过选择器控制HTML元素,CSS选择器对网页对象可以实现一对一.一对多或者多对一的匹配. 一.CSS3选择器分类 CSS选择器在CSS2.1选择器的基础上新增了属 ...

  6. HTML和CSS简单整理

    前言:hello 家人们,本文章用于自己整理笔记使用,逻辑会有点混乱,不建议小白入手从上往下查看,有什么指导欢迎评论区畅聊 (。・∀・)ノ゙ 基本结构 结构 – html 表现 – css 行为 – ...

  7. css3 和 html5 笔记

    1.css3 ie下大部分不兼容 ie9以下 浏览器低版本不兼容 需要写 -webket-transition:1s -moz-transition: 1s -o-transition:1s tran ...

  8. CSS选择器分类大全

    选择器(选择符)就是根据不同需求把不同的标签选出来这就是选择器的作用. 简单来说,就是选择标签用的. 分类:基础选择器.复合选择器 目录 一.基础选择器 二.复合选择器 三.CSS3选择器补充: (一 ...

  9. 如何在 Kaggle 首战中进入前 10%(转)

    如何在 Kaggle 首战中进入前 10%(转) 来源:https://dnc1994.com/2016/04/rank-10-percent-in-first-kaggle-competition/ ...

最新文章

  1. 什么?你的团队没有100人,那就不要用微服务了!
  2. 折半查找python实现
  3. java ee程序设计师_软件设计师:Java EE开发四大常用框架[1]
  4. 漫谈Google的Native Client(NaCl)技术(二)–技术篇(兼谈LLVM)
  5. Jsp基本page指令、注释、方法声明,书写规范及注意事项
  6. android通过adb截取屏幕、录制屏幕 screencap screenrecord
  7. 道路测量xy坐标表示什么_cad里面什么叫绝对极坐标,相对极坐标,怎么区分他们?...
  8. html5创建桌面快捷方式,iOS APP创建桌面快捷方式
  9. 网易云课堂 计算机编程,网易云课堂教你如何学好计算机编程技术
  10. dw整个网站html文件怎么放一起,Dreamweaver模板如何批量做网页
  11. OJ 1038 宋小胖买切糕
  12. 【如何7天写完一篇发明专利】
  13. read.html5.qq.com,如何通过第三方QQ登录网站首页
  14. 微信分享带图片,描述(php版)
  15. github开源企业级应用框架介绍CIIP
  16. gitlab删除项目时 ,没有删除选项
  17. Google免费企业邮局设置攻略
  18. 《AI Utopia or Dystopia (DAC‘20)》阅读笔记
  19. 关于图片预加载loading及加载失败的相关问题
  20. 20221215今天的世界发生了什么

热门文章

  1. 关于Unity 中的destory 删除与预制体的克隆(怎样避免删除预制体)
  2. 虚拟机显示网络不可用
  3. ERP BOM 展开方式
  4. html中repeat的作用,background-repeat属性怎么用
  5. R数据分析:变量间的非线性关系,多项式,样条回归和可加模型
  6. python中字符串转数组、数组转字符串
  7. 苹果的福利被“羊毛党”薅废了
  8. 计算机网络实验四:配置网络路由
  9. jQuery 实现淡入淡出效果
  10. 谈谈那些年玩RPG游戏时的疯狂举动