📄 idgenerator.java
字号:
package com.allanlxf.jdbc.orm.id;
public class IdGenerator
{
private static Object lock = new Object();
private static int currentId;
public static int nextId(int type)
{
if(type == 1)
{
return getIdFromMemory();
}
}
private static int getIdFromMemory()
{
synchronized(lock)
{
return ++currentId;
}
}
private static int getIdFromTable()
{
synchronized(lock)
{
int id = -1;
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("select currentId from id_holder");
rs.next();
int = rs.getInt(1);
rs.close();
st.executeUpdate("update id_holder set currentId = currentId + 1");
st.close();
return id;
}
}
private static int getIdFromSequence()
{
int id = -1;
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("select acc_seq.nextval from dual");
rs.next();
int = rs.getInt(1);
rs.close();
st.close();
return id;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -