=====================dao================================

package com.jb.xs.Dao.impl;

import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import org.springframework.stereotype.Service;

import com.jb.entity.PubComp;
import com.jb.entity.PubUser;
import com.jb.xs.Dao.TestCaseDao;

@Service
public class TestCaseDaoImpl implements TestCaseDao {
 private EntityManager em = null;

@Override
 //更新的方法
 public void update(PubComp pc) {
  em.merge(pc);//按对象更新

//createQuery不能执行添加(insert)的语句,具体原因还没不清楚
  em.createQuery(" update PubComp set aname='22222' where aguid='0.5689057'").executeUpdate();//按语句更新

//注意createNativeQuery可以执行增删改查的语句

em.createNativeQuery(
      "insert into sysbilllock(aguid,mtbl,guid_tbl,guid_locker,remark) values('"
      + JTool.getGuid() + "','" + mtbl + "','" + rowguid + "','" +
      lockerguid + "','')") .executeUpdate();
 
 }
 
 @Override
 public Object getMaxLvl() {
  // em.find("select p from PubComp");
  return em.createQuery("select max(p.status) from PubComp p ");
 }
 
 @PersistenceContext
 public void setEntityManager(EntityManager em) {
  this.em = em;
 }

@Override
 public void delete(PubComp pc) {
  Object obj = em.merge(pc);
  em.remove(obj);// 删除的方法
 }
 
 @Override
 public void delete(PubUser u) {
  em.remove(u);// 删除的方法
 }

@Override
 public List<PubComp> getPubComp(String sql) {
  // em.find("select p from PubComp");
  return (List<PubComp>) em.createQuery(sql)
    .getResultList();
 }

@Override
 public void save(PubComp pc) {
  em.persist(pc);
 }
 @Override
 public void save(PubUser u) {
  em.persist(u);
 }

@Override
 public void update(String jql) {
  //em.merge(pc);
  em.createQuery(" update PubComp set aname='ssdff' where aguid='0.5689057'").executeUpdate();
  em.createQuery(" insert into PubComp(aguid,acode) value ('主键','编号') ").executeUpdate();
  
 }

}

jpa 支持(sql)JDBC标准语句的更多相关文章

  1. 关于Oracle SQL/82标准和SQL/92标准

    在ORACLE9i之前,oracle语法基础是SQL/86标准,9i及之后的版本中支持SQL/92标准.基表信息:products.purchases和product_types SQL> se ...

  2. 【Swift 4.0】扩展 WCDB 支持 SQL 语句

    前言 入坑 wcdb 有两个月了,整体来说还是很不错的,具体优点可以参考文档说明,由于官方明确说明不支持 SQL 只好自己写一个扩展支持一下了

  3. Oracle JDBC 标准连接实例

    Oracle JDBC 标准连接实例 // 创建一个数据库连接 Connection con = null; // 创建预编译语句对象,一般用PreparedStatement不用Statement ...

  4. 将EXCEL中的列拼接成SQL insert插入语句

    工作中经常需要将EXCEL文件中的数据导入到各种数据库,但是对于不熟悉数据库的人来说,如果直接使用命令执行导入,这无疑是一个难题,也是一个风险.这里我们直接在EXCEL文件中拼接成标准的SQL ins ...

  5. SQL 2008执行语句遇到内存不足(1)——error 701

    原文:SQL 2008执行语句遇到内存不足(1)--error 701 转自:http://blogs.msdn.com/b/apgcdsd/archive/2011/01/17/sql-2008-e ...

  6. 面试必须要知道的SQL语法,语句

    面试必须要知道的SQL语法,语句 收藏 asc 按升序排列desc 按降序排列下列语句部分是Mssql语句,不可以在access中使用.SQL分类: DDL—数据定义语言(Create,Alter,D ...

  7. 45、SQL逻辑查询语句执行顺序

    一 SELECT语句关键字的定义顺序 SELECT DISTINCT <select_list> FROM <left_table> <join_type> JOI ...

  8. 基于Spring Boot,使用JPA调用Sql Server数据库的存储过程并返回记录集合

    在上一篇<基于Spring Boot,使用JPA操作Sql Server数据库完成CRUD>中完成了使用JPA对实体数据的CRUD操作. 那么,有些情况,会把一些查询语句写在存储过程中,由 ...

  9. 第四篇:记录相关操作 SQL逻辑查询语句执行顺序

    http://www.cnblogs.com/linhaifeng/articles/7372774.html 一 SELECT语句关键字的定义顺序 SELECT DISTINCT <selec ...

随机推荐

  1. [反汇编练习] 160个CrackMe之021

    [反汇编练习] 160个CrackMe之021. 本系列文章的目的是从一个没有任何经验的新手的角度(其实就是我自己),一步步尝试将160个CrackMe全部破解,如果可以,通过任何方式写出一个类似于注 ...

  2. C的结构体使用

    C的结构体演示 #include <stdio.h> struct A //建立结构体A { char *name; int s1; struct A *next; }; void mai ...

  3. ecshop lib包含lib文件

    在lbi文件中增加lbi方法 方法1. {include file='library/name.lbi '} 方法2. <?php echo $this->fetch('library/n ...

  4. TCP握手

    1.TCP的三次握手四次挥手 第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认. 第二 ...

  5. JVM——类加载器的双亲委派模型

    类加载器双亲委派模型,如下图所示: 双亲委派模型的工作过程 如果一个类加载器收到了类加载的请求,它首先不会自己去尝试加载这个类,而是把这个请求委派给父类加载器去完成,每一个层次的类加载器都是如此,因此 ...

  6. Linux/Unix shell 脚本监控磁盘可用空间

    Linux下监控磁盘的空闲空间的shell脚本,对于系统管理员或DBA来说,必不可少.下面是给出的一个监控磁盘空间空间shell脚本的样本,供大家参考. 1.监控磁盘的空闲空间shell脚本 robi ...

  7. 什么是REST?以及RESTful的实现

    什么是REST? REST (REpresentation State Transfer) 描述了一个架构样式的网络系统,比如 web 应用程序.它首次出现在 2000 年 Roy Fielding ...

  8. Cannot run program "/home/mohemi/Program/adt-bundle-linux-x86_64-20130729/sdk//tools/emulator": error=2, 没有那个文件或目录

    在64位的Ubuntu下,安装ADT64位的,打开android模拟器出现以下报错: Starting emulator for AVD 'Android' Failed to start emula ...

  9. 堪称最好的A*算法

    原文地址:http://theory.stanford.edu/~amitp/GameProgramming/ 相关链接:http://www-cs-students.stanford.edu/%7E ...

  10. web-3g-(163)网易-邮箱-记事本-数据库设计

    ylbtech-DatabaseDesgin:ylbtech-cnblogs(博客园)-数据库设计-2,Admin(用户后台) DatabaseName:cnblogs(博客园) Model:Admi ...