jpa oracle mysql,JPA-Oracle-Mysql連接數據庫配置
//...省略datasouce
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
`
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
persistence-oracle.xml配置文件<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
version="2.1">
org.hibernate.jpa.HibernatePersistenceProvider
META-INF/orm-oracle.xml
orm-oracle.xml實體類映射文件<?xml version="1.0" encoding="UTF-8"?>
xmlns="http://xmlns.jcp.org/xml/ns/persistence/orm" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence/orm http://xmlns.jcp.org/xml/ns/persistence/orm/orm_2_1.xsd">
實體類package cn.com.taiji.com.domain;
import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
/**
*@ClassName: ServiceMenu
*@Description: 服務目錄
*@author ranxing
*@date 2017年8月2日 下午2:59:57
*
*/
@Entity
@Table(name="rkrm$_ywfwinfo")
@NamedQuery(name="ServiceMenu.findAll", query="SELECT t FROM ServiceMenu t")
public class ServiceMenu implements Serializable {
/**
*
*/
private static final long serialVersionUID = -1332680945578333683L;
public ServiceMenu(){
}
@Id
private String fwlxid ;
private String fwlxname;
private String fwloc;
private String fwlxdesc;
@Lob
private String fwinfo;
private String dwid;
private String ywlxid;
private String creator;
private String ctime;
private String fromfwlxid;
public String getFwlxid() {
return fwlxid;
}
public void setFwlxid(String fwlxid) {
this.fwlxid = fwlxid;
}
public String getFwlxname() {
return fwlxname;
}
public void setFwlxname(String fwlxname) {
this.fwlxname = fwlxname;
}
public String getFwloc() {
return fwloc;
}
public void setFwloc(String fwloc) {
this.fwloc = fwloc;
}
public String getFwlxdesc() {
return fwlxdesc;
}
public void setFwlxdesc(String fwlxdesc) {
this.fwlxdesc = fwlxdesc;
}
public String getFwinfo() {
return fwinfo;
}
public void setFwinfo(String fwinfo) {
this.fwinfo = fwinfo;
}
public String getDwid() {
return dwid;
}
public void setDwid(String dwid) {
this.dwid = dwid;
}
public String getYwlxid() {
return ywlxid;
}
public void setYwlxid(String ywlxid) {
this.ywlxid = ywlxid;
}
public String getCreator() {
return creator;
}
public void setCreator(String creator) {
this.creator = creator;
}
public String getCtime() {
return ctime;
}
public void setCtime(String ctime) {
this.ctime = ctime;
}
public String getFromfwlxid() {
return fromfwlxid;
}
public void setFromfwlxid(String fromfwlxid) {
this.fromfwlxid = fromfwlxid;
}
}
ServiceMenuRepository實體類相關連接數據庫接口
一般我都習慣手寫sqlpackage cn.com.taiji.com.repository;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
import cn.com.taiji.com.domain.ServiceMenu;
@Transactional//這個注解很重要哦
public interface ServiceMenuRepository extends
JpaRepository,
JpaSpecificationExecutor,
PagingAndSortingRepository{
/* 弄幾個栗子,並不是這個實體的方法
/**
* 查詢出未刪除的所有數據字典記錄集合
* @return
*/
@Query("select c from Infolink c where c.deleteFlog=1 ")
List findAllInfolinks();
//and b.infosort_id = ?1
@Query(" select c from Infolink c , InfosortInfolink b where b.infolinkId = c.infolinkId and c.infolinkId = ?1 ")
List findLinkById(String infolinkId);
//and b.infosort_id = ?1
@Modifying
@Query(" update Infolink c set c.deleteFlog = 0 where c.infolinkId= ?1 ")
void updateFlag( String infolinkId);
*/
}
一個查詢至於拼接過程看需求自己弄吧類似普通sql拼接@PersistenceContext
private EntityManager em;
@Inject
LogZJTaskInfoRepository logZJTaskInfoRepository;
@Inject
ServiceInfoRepository serviceInfoRepository;
//...以上省略 這個sql不是上面實體里面的只是例子,2個表的查詢寫法
// 大於2個表的方式,還不如使用級聯就行了,當然我不會..
// length()是oracle中clob字段的非空
// 只要配置正確mysql和oracle是通用的,除了特殊字段需要自己處理,
// 正常的都一樣查詢,mysql會自己查詢為limit,oracle會為ROWNUM
StringBuilder jpql = new StringBuilder ("select c from LogZJTaskInfo c , TimeInfo d where c.zyid = d.zyid "
+ "and length(d.timeinfo)>0 ") ;
Query query = em.createQuery(jpql.toString());
query.setFirstResult(page*pageSize); // query
query.setMaxResults(pageSize);
// query.setParameter("appointPeopleId", searchParameters.get("userId")); //登錄人Id
List list = query.getResultList();
map.put("List", list);
// 來個單一查詢 通用方法傳id就行
ServiceInfo si = serviceInfoRepository.findOne((String) object);
jpa oracle mysql,JPA-Oracle-Mysql連接數據庫配置相关推荐
- ttbf 慢 php,連接數據庫不同方式會影響TTBF快慢
正在研究php框架,突然發現一個奇特的問題:框架中php代碼連接數據庫使用PDO和mysqli,盡然會導致頁面加載速度上產生很大的差距.一開始還以為是框架本身造成的這種現象,所以在本地寫了一個基礎的測 ...
- rodbc 连接oracle,R語言 使用RODBC連接oracle數據庫
使用R語言有多種包可以連接oracle數據庫,我今天在這里講一下使用使用RODBC連接oracle數據庫. 1. 如果你的本地是windows系統的話,你需要安裝oracle客戶端. 2. 然后需要在 ...
- 數據庫ORACLE轉MYSQL存儲過程遇到的坑~(總結)
ORACLE數據庫轉MySQL數據庫遇到的坑 總結 最近在做Oracle轉mysql的工程,遇到的坑是真的多,尤其是存儲過程,以前都沒接觸過類似的知識,最近也差不多轉完了就總結一下.希望能幫到一些人( ...
- mysql使用从c3p0_使用c3p0連接池操作mysql數據庫中文亂碼解決辦法
今天在一台新的CentOS機器上使用c3p0連接池操作mysql數據庫出現中文亂碼問題,具體表現為:查詢時無中文亂碼問題,寫數據時中文亂碼,查看了機器上數據庫字符集也是UTF8,應該不會出現中文亂碼才 ...
- python3.5 连接mysql_python3.5 連接mysql本地數據庫
前期准備工作: 安裝python的模塊,網上大部分讓安裝mysqldb模塊,但是會報錯,原因是python3.5不被其支持: 請看該鏈接 我們也可以這樣解決: 直接執行:sudo pip3 insta ...
- 远程连接oracle01017,連接Oracle遠程數據庫錯誤:ORA-12541,ORA-12514,ORA-01017的解決方法!...
1.出現如下錯誤:ORA-12541:TNS:no listener,如下圖所示: 錯誤原因是我們沒有開啟Listener監聽器服務,解決方法是在服務中開啟這個服務,如下圖所示. 2.出現如下錯誤:O ...
- oracle.manageddataaccess idataparameter,.net 通過ODP.NET Managed 連接Oracle數據庫
1. Oralce官網 下載 安裝 ODTforVS2015_121025 重啟VS 2.項目引用 Oracle.ManagedDataAccess.dll 3.數據庫連接字符串: use ...
- unity3d排行榜mysql_Unity3D 連接MySql數據庫
Unity3D 連接MySql數據庫 一.在Mac OS X中架設MySql數據庫 下載mysql for Mac http://dev.mysql.com/downloads/mysql/5.0.h ...
- mysql數據庫的增刪改查_MySQL數據庫之基礎增刪改查操作
作者: 守望幸福 最后修改日期:2014-7-27 所操作的MySQL數據庫名:firstdb 所用的兩個表結構如下: student表 number name socre born_d ...
最新文章
- 2021年大数据常用语言Scala(十四):基础语法学习 数组 重点掌握
- 从TimeQuest角度看set_max_delay
- Entity Framework Code First关系映射约定
- 8、MySQL注释:单行注释和多行注释
- python英文词云代码_使用python实现个性化词云的方法
- 初级开发人员的缺点_在您作为初级开发人员的第一年获得此建议
- c++实现卷积码编码和维特比译码_鑫艾勒维特家用别墅电梯:安全至上,无可替代...
- vant状态页组件van-empty - 使用篇
- DataV数据可视化功能特性
- html中隐藏内容蜘蛛会抓取吗,蜘蛛会抓取识别JS、CSS、JSON,对SEO有什么影响
- python集合类型中的元素是有序的_python基础篇:很有意思的数据类型,集合(set) 常用去去重...
- 第35课 函数对象分析(函数操作符()重载)
- Luogu1501[国家集训队] Tree II
- 新装的电脑没有打开图片的软件怎么办?教你打开Windows照片查看器
- 【QT】找茬外挂制作
- SEO优化基础知识大全 SEO新手入门必备知识
- CG CTF RE Py交易
- 肺疫面前,段子手出动,但是玩笑也要分场合
- springboot整合阿里云短信验证(无需签名和模板,通过阿里云api测试实现短信验证)
- 移动端小说APP体验报告
热门文章
- ADS的go to命令
- aDev第13期#个性化推荐技术#总结(Part III, Final: 稳国柱@豆瓣)
- MySQL Access denied错误的缘故情由
- Silverlight WCF 初尝小结
- 【转载】说说大型高并发高负载网站的系统架构
- card2phone android,Installing application on SD-card in Android sdk 2.2
- lua如何打印行号_Lua 字符串处理
- 【STM32】利用 C 语言 strchar() 函数查找字符串中指定字符的位置
- ((sizeof(n)+sizeof(int)-1)~(sizeof(int)-1))
- [python]开发IC utility 一些常用的方法和函数和语法规则