1. 程式人生 > >使用UUID生成主鍵向Oracle中新增資料

使用UUID生成主鍵向Oracle中新增資料

用UUID生成主鍵,然後控制資料新增到Oracle中,具體程式碼如下
/*
 *@(#)PrimaryKeyByUUID.java 2015年5月4日
 *
 *Copyright 2015 Cbo,All rights reserved.
 */
package com.test.uuid;

import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.util.UUID;

import com.test.bean.BankInfo;
import com.test.util.DBConnection;

/**
 *用UUID生成主鍵插入資料庫
 *@author co
 *@date 2015年5月4日
 */
public class PrimaryKeyByUUID {

	/**
	 * 測試
	 * @param args
	 */
	public static void main(String[] args) {
		BankInfo bank=getBank();
		try{
			insertToDB(bank);
		}catch(Exception e){
			e.printStackTrace();
		}
	}
	/**
	 * 插入資料庫
	 * @param bank
	 * @throws Exception
	 */
	@SuppressWarnings("static-access")
	public static void insertToDB(BankInfo bank) throws Exception{
		String sql="insert into cjb_bank_info (bank_no,bank_name,bank_location,open_date,dcs) "
				+ "values (?,?,?,?,?)";
		Connection conn=new DBConnection().getConnection();
		PreparedStatement pre=conn.prepareStatement(sql);
		pre.setString(1, getUUID());
		pre.setString(2, bank.getBankName());
		pre.setString(3, bank.getBankLocation());
		pre.setDate(4, new Date(bank.getOpenDate().getTime()));
		pre.setString(5, bank.getDcs());
		pre.execute();
		pre.close();
		conn.close();
	}   
	/**
	 * 獲取UUID生成的值
	 * @return
	 */
	
	public static String getUUID(){ 
        String s = UUID.randomUUID().toString(); 
        //去掉“-”符號 
        return s.substring(0,8)+s.substring(9,13)+s.substring(14,18)+s.substring(19,23)+s.substring(24); 
    } 
	
	public static BankInfo getBank(){
		BankInfo bank=new BankInfo();
		bank.setBankName("中國光大銀行");
		bank.setBankLocation("北京西二旗");
		bank.setOpenDate(new java.util.Date());
		bank.setDcs("金融IC卡操作");
		return bank;
	}

}

其中的實體類為bankInfo(銀行資訊),連線資料庫即可實現;

jdbc得連線和實體類省略。

相關推薦

使用UUID生成Oracle新增資料

用UUID生成主鍵,然後控制資料新增到Oracle中,具體程式碼如下/* *@(#)PrimaryKeyByUUID.java 2015年5月4日 * *Copyright 2015 Cbo,All rights reserved. */ package com.t

【JEECG示例文件】使用Kettle從mysqloracle抽取資料

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

陣列新增資料但length列印為0?

最近寫專案時, 遇到了一個問題, 我明明 向陣列中push了資料, 但是列印的時候為[]陣列,但是空數組裡面有一條資料,length為1, 但是打印出來length發現長度為0 看程式碼 先來看這種情況 很正常對吧, 往陣列中push一組資料, 長度為1 往下看

python mysql 新增 資料

python 向 mysql 中新增資料 import pymysql import json #第一步:連線到mysql資料庫(ishop1資料庫) conn = pymysql.connect(h

ajax非同步獲取資料後動態表格新增資料(行)

因為某些原因,專案中突然需要做自己做個ajax非同步獲取資料後動態向表格中新增資料的頁面,網上找了半天都沒有 看到現成的,決定自己寫個例子 1、HTML頁面 <html xmlns="http://www.w3.org/1999/xhtml"> <hea

使用MySQL Workbench建立資料庫,建立新的表,新增資料

初學資料庫,記錄一下所學的知識。我用的MySQL資料庫,使用MySQL Workbench管理。下面簡單介紹一下如何使用MySQL Workbench建立資料庫,建立新的表,為表新增資料。 點選上圖中的“加號”圖示,新建一個連線, 如上圖,先輸入資料庫的賬號

使用HibernateOracle插入資料

Hibernate是ORMapping的實現,通過一個類實現資料庫操作例項:hibernate.cfg.xml:Hibernate環境配置檔案 程式程式碼<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE hibe

Java程式碼TkMyBatis通用Mapper新增資料時同時獲取自增ID,與適用uuid 做主時獲取 id

一 . MyBatis mapper.xml檔案中在xml    1.   加入 這句 :useGeneratedKeys="true" keyProperty="ID"        keyProperty="資料庫中的主鍵欄位名對應的實體類欄位名" ;【填實體類欄位

mysql使用uuid()函式生成方法(java環境)

1.SELECT UUID(); //結果如下,問題:使用不方便,無法在資料庫中複製貼上 180da4bb-b2ed-11e7-beee-54e1ad432105 2.    SELECT REPLA

hibernate oracle自增長sequence跳號無序的問題

1. 配置序列產生器相關屬性 hibernate註解設定資料庫主鍵自增長時,如果oracle表中的主鍵ID沒有按照正常的sequence自增長(+1)存入資料庫。可以在序列產生器中加上allocationSize(步長)屬性的設定,即:在@SequenceGenerator

MyBatis 3 自動生成 針對不同的資料庫(oracle/sqlserver/mysql)

MyBatis自動生成的主鍵很多資料庫支援自動生成主鍵的資料型別。不過這通常(並不總是)是個私有的特性。SQL Map 通過<insert>的子元素<selectKey>來支援自動生成的鍵值。它同時支援預生成(如Oracle)和後生成兩種型別(如

jpa使用oracle序列

實體類配置 @Id  @GeneratedValue(strategy=GenerationType.SEQUENCE,generator="mseq")  @SequenceGenerator(name="mseq",sequenceName="metadata_

oracle插入時如何自動生成

oracle中自動生成主鍵方式例子如下: 1)先建立表: create table student( sno int not null, sname varchar(20), sex char(4), constraint PK_SNO primary key(sno) ); 2)建立序列: create

Hibernate 註解序列生成執行完select seq_t_user.nextval後不執行insert等語句導致 執行save()或update()方法無效

hiberna 不能 nal 自動提交 ext 無效 pen mave ransac 題主解決方法: 1)在DAO中獲取session的時候采用sessionFactory.getCurrentSession();不用

zbb20170928 spring hibernate mysql 保存數據時自動生成 設置

ring integer 主鍵 mys unique 技術分享 ner img rate @Id @GeneratedValue @Column(name = "id", unique = true, nullable = false) public In

spring3: 對JDBC的支持 之 Spring提供的其它幫助 SimpleJdbcInsert/SimpleJdbcCall/SqlUpdate/JdbcTemplate 生成/批量處理

4.3 復合 AC lex con add 兩個 HR sel 7.4 Spring提供的其它幫助 7.4.1 SimpleJdbc方式 Spring JDBC抽象框架提供SimpleJdbcInsert和SimpleJdbcCall類,這兩個類通過利用J

一個類,有新增元素(add)和獲取元素數量(size)方法。 啟動兩個線程。線程1容器新增數據。線程2監聽容器元素數量,當容器元素數量為5時,線程2輸出信息並終止

override tac trace add syn countdown print import 數據 方式一: /** * 兩個線程要是可見的所以要加上votalile */public class Test_01 { public static void

C++---使用VS在C++程式設計出現 fatal error C1010: 在查詢預編譯頭時遇到意外的檔案結尾。是否忘記了新增“#include "stdafx.h"”?

啦啦啦,好久沒寫部落格啦... 對於C++初學者來說適應一個新的編譯器還是需要蠻長一段時間的,現在我就給你們說說標題所說的這個問題吧... 第一步:選單--〉專案--〉設定,出現“專案設定”對話方塊,左邊展開專案,在“原始檔”中找到出錯的檔案。 第二步:在右邊選擇“C/C++”屬性頁,在Category

談談企業資訊系統資料庫設計是使用id還是uuid邏輯或業務

  企業資訊系統泛指企業ERP、OA、MES等企業管理軟體,這些系統都有共性:業務層面較技術層面更加複雜,體現在資料庫上就是業務表往往欄位很多,超過4-5個欄位的業務主鍵隨處可見。從10餘年的企業資訊化系統建設及當下分散式應用出發,談談在企業資訊化系統中應該如何設計資料表主鍵。 一、資料

.NetCore 使用AppMetricsInfluxDB新增監控資料並通過Grafana影象分析

考慮到分散式部署監控環境是所有的請求情況,所以這一塊一般在閘道器GateWay裡面加比較省事,聚合在一起的,如果放在api服務中,如果只有1個還好,一旦部署Node多是很痛苦的事情 這天需要新增的Nuget包如下: 在配置新增 { "Logging": { "LogLevel"