1.spring封装的HibernateTemplate类的一些操作方法。

2.session提供的根据主键ID进行添、删、查、改的基本方法。

 由session得到的hql语句

由session得到的criteria语句。

 session.createSQLQuery(sql).executeUpdate(); 传入的是sql语句,由于较复杂的语句,执行的是update操作,或delete操作。

今天就谈谈hql语句的使用:

  A.对单一的表操作,见网址:http://www.cnblogs.com/focusChen/articles/2401892.html,建议的是:要想获得表中一部分字段,你可以想把对象取出来,然后根据选择取出要用的属性,不要使返回的集合的元素是Object[]类型。

     B.连接查询(包括内连接,左连接,右连接)(join后面加了 fetch好像查询效率变高):

      内连接:inner join  如: select *********  from  A  a inner join a.b b  inner join b.c c   或者用where建立:select *********  from  A  a , B b, C c where a.b=b and b.c=c

      左外连接 left outer join  如:select ********* from  A  a left outer join a.b b left outer join b.c c

      右外连接 left outer join  如:select ********* from  A  a right outer join a.b b right outer join b.c c

     1.按照传统查询,不论是取得多个表的所有值,还是部分值,返回list集合的元素是Object[] 类型,就是List<Object[]>。这样也能取得值。

    如果觉得麻烦,可以这样做,让Object[]变为一个对象。见网址:http://www.cnblogs.com/feiguo/p/3690601.html.(首选)

   2.返回的是某一方的对象,即返回的list集合的元素是某一方对象。就是List<某一方对象>。见网址:http://www.cnblogs.com/hongten/archive/2011/06/19/2084696.html。通过该对象导航获得其他对象属性值。

   

  可供參考網址:http://wenku.baidu.com/view/5620a8265acfa1c7aa00cccd.html

  

    

ssh2中的添,删,查,改。的更多相关文章

  1. WindowsForm 增 删 查 改

    首先是连接数据库  在数据库里写代码 建立一个数据库下面是代码 create database JinXiaoCun go use JinXiaoCun go create table users ( ...

  2. Django实现数据库中表格的增删查改

    1.urls.py """Django_demo1 URL Configuration The `urlpatterns` list routes URLs to vie ...

  3. 4.在MVC中使用仓储模式进行增删查改

    原文链接:http://www.c-sharpcorner.com/UploadFile/3d39b4/crud-using-the-repository-pattern-in-mvc/ 系列目录: ...

  4. JDBC+Servlet+jsp(增删查改)

    先在mysql新增数据库和表先,把下面的几句代码复制去到mysql运行就可以创建成功了!  创建数据库 create database jdbc01 character set utf8 collat ...

  5. JDBC终章- 使用 DBUtils实现增删查改- C3P0Utils数据源/QueryRunner runner连接数据源并执行sql

    JDBC终章- 使用 DBUtils实现增删查改 1.数据库结构 Create Table CREATE TABLE `user` ( `id` ) NOT NULL AUTO_INCREMENT, ...

  6. Django笔记&教程 5-1 基础增删查改

    Django 自学笔记兼学习教程第5章第1节--基础增删查改 点击查看教程总目录 第四章介绍了模型类models.Model和创建模型,相当于介绍了数据库表和如何创建数据库表. 这一章将介绍如何使用模 ...

  7. C#中如何创建xml文件 增、删、改、查 xml节点信息

    XML:Extensible Markup Language(可扩展标记语言)的缩写,是用来定义其它语言的一种元语言,其前身是SGML(Standard Generalized Markup Lang ...

  8. Android中API建议的方式实现SQLite数据库的增、删、改、查的操作

    package com.examp.use_SQLite.dao; import java.util.ArrayList; import java.util.List; import android. ...

  9. SQL Sever数据库中 T-sql语句的使用(增、删、改、查)

    SQL中的增.删.改.查 一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [into] <表名> [列名] values <列值> 例:insert ...

随机推荐

  1. vmware 安装tools

    kali linux 更换成国内源后 安装tools命令 apt install open-vm-tools-desktop fuse -y 需重启  reboot

  2. spring boot:多个filter/多个interceptor/多个aop时设置调用的先后顺序(spring boot 2.3.1)

    一,filter/interceptor/aop生效的先后顺序? 1,filter即过滤器,基于servlet容器,处于最外层, 所以它会最先起作用,最后才停止 说明:filter对所有访问到serv ...

  3. matplotlib直方图

    import matplotlib.pyplot as plt import matplotlib as mpl from matplotlib.font_manager import FontPro ...

  4. CPU:Central Processing Unit

    CPU执行计算任务时都需要遵从一定的规范,程序在被执行前都需要先翻译为CPU可以理解的语言.这种规范或语言就是指令集(ISA,Instruction Set Architecture). CPU 架构 ...

  5. layui 的基本使用介绍

    全局配置 layui.config({ dir: '/res/layui/' //layui.js 所在路径(注意,如果是script单独引入layui.js,无需设定该参数.),一般情况下可以无视 ...

  6. altium designer使用小技巧,记录

    1.在自建库文件中添加component File--open----schlib或pcblib---Tools---new component---绘制---保存. 2.编辑component 左边 ...

  7. 数据结构(C++)——链栈

    结点结构 typedef char ElemType; typedef struct LkStackNode{ ElemType data; LkStackNode *next; }*Stack,SN ...

  8. vue学习笔记(六) ----- vue组件

    一.模块化与组件化 模块化的定义 模块化在Node中是一个规范,定义一些模块的相关的规则,从代码角度上来说,方便做区别,如果不使用模块化,写在js文件中不利于后期维护和扩展,从代码的层面上就把相关的功 ...

  9. 【DeepLearning】GoogLeNet

    InceptionV1 论文原文:Going deeper with convolutions    中英文对照 InceptionBN 论文原文:Batch Normalization: Accel ...

  10. Centos7安装Gitlab11

    一.基础介绍 1.简介 一个基于GIT的源码托管解决方案 基于rubyonrails开发 集成了nginx postgreSQL redis sidekiq等组件 2.安装要求 2g内存以上,有点占内 ...