Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
fuyue82
o2oa
提交
a7002208
o2oa
项目概览
fuyue82
/
o2oa
与 Fork 源项目一致
Fork自
浙江兰德纵横网络技术股份有限公司 / o2oa
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
o2oa
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a7002208
编写于
10月 23, 2020
作者:
O
o2null
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'fix/ScriptObject' into 'wrdp'
修复ctl -ddl See merge request o2oa/o2oa!1899
上级
ca51376a
24172087
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
142 addition
and
67 deletion
+142
-67
o2server/x_console/src/main/java/com/x/server/console/action/Ddl.java
...onsole/src/main/java/com/x/server/console/action/Ddl.java
+49
-67
o2server/x_console/src/main/java/com/x/server/console/action/Ddl2.java
...nsole/src/main/java/com/x/server/console/action/Ddl2.java
+93
-0
未找到文件。
o2server/x_console/src/main/java/com/x/server/console/action/Ddl.java
浏览文件 @
a7002208
...
...
@@ -3,13 +3,6 @@ package com.x.server.console.action;
import
java.io.File
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Objects
;
import
com.x.base.core.container.factory.PersistenceXmlHelper
;
import
com.x.base.core.project.config.Config
;
import
com.x.base.core.project.logger.Logger
;
import
com.x.base.core.project.logger.LoggerFactory
;
import
com.x.base.core.project.tools.ListTools
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.openjpa.jdbc.conf.JDBCConfiguration
;
...
...
@@ -19,6 +12,12 @@ import org.apache.openjpa.persistence.EntityManagerImpl;
import
org.apache.openjpa.persistence.OpenJPAEntityManagerFactory
;
import
org.apache.openjpa.persistence.OpenJPAPersistence
;
import
com.x.base.core.container.factory.PersistenceXmlHelper
;
import
com.x.base.core.project.config.Config
;
import
com.x.base.core.project.logger.Logger
;
import
com.x.base.core.project.logger.LoggerFactory
;
import
com.x.base.core.project.tools.ClassLoaderTools
;
public
class
Ddl
{
private
static
Logger
logger
=
LoggerFactory
.
getLogger
(
Ddl
.
class
);
...
...
@@ -26,66 +25,49 @@ public class Ddl {
/* 初始化完成 */
public
boolean
execute
(
String
type
)
throws
Exception
{
// List<String> containerEntityNames = new ArrayList<>();
// containerEntityNames.addAll((List<String>)
// Config.resource(Config.RESOURCE_CONTAINERENTITYNAMES));
// List<String> classNames =
// ListTools.includesExcludesWildcard(containerEntityNames,
// Config.dumpRestoreData().getIncludes(),
// Config.dumpRestoreData().getExcludes());
// File persistence = new File(Config.dir_local_temp_classes(),
// "META-INF/persistence.xml");
// PersistenceXmlHelper.writeForDdl(persistence.getAbsolutePath());
// String[] arguments = new String[4];
// arguments[0] = "-schemaAction";
// arguments[1] = StringUtils.equals(type ,"create")? "build":"add";
// arguments[2] = "-sql";
// arguments[3] = Config.dir_local_temp_sql(true) + "/" + type + ".sql";
// MappingTool.main(arguments);
// return true;
String
flag
=
"build"
;
if
(
StringUtils
.
equalsIgnoreCase
(
type
,
"createDB"
))
{
flag
=
"createDB"
;
}
else
if
(
StringUtils
.
equalsIgnoreCase
(
type
,
"dropDB"
))
{
flag
=
"dropDB"
;
}
else
if
(
StringUtils
.
equalsIgnoreCase
(
type
,
"drop"
))
{
flag
=
"drop"
;
// } else if (StringUtils.equalsIgnoreCase(type, "deleteTableContents")) {
// flag = "deleteTableContents";
}
List
<
String
>
containerEntityNames
=
new
ArrayList
<>();
containerEntityNames
.
addAll
((
List
<
String
>)
Config
.
resource
(
Config
.
RESOURCE_CONTAINERENTITYNAMES
));
List
<
String
>
classNames
=
ListTools
.
includesExcludesWildcard
(
containerEntityNames
,
Config
.
dumpRestoreData
().
getIncludes
(),
Config
.
dumpRestoreData
().
getExcludes
());
File
persistence
=
new
File
(
Config
.
dir_local_temp_classes
(),
"persistence_sql.xml"
);
PersistenceXmlHelper
.
writeForDdl
(
persistence
.
getAbsolutePath
());
OpenJPAEntityManagerFactory
emf
=
OpenJPAPersistence
.
createEntityManagerFactory
(
"enhance"
,
persistence
.
getName
());
EntityManagerImpl
em
=
(
EntityManagerImpl
)
emf
.
createEntityManager
();
String
[]
arguments
=
null
;
String
[]
args
=
null
;
Options
opts
=
new
Options
();
if
(
StringUtils
.
equals
(
flag
,
"build"
)
||
StringUtils
.
equals
(
flag
,
"drop"
)
||
StringUtils
.
equals
(
flag
,
"createDB"
)
||
StringUtils
.
equals
(
flag
,
"dropDB"
))
{
arguments
=
new
String
[
4
];
File
file
=
new
File
(
Config
.
dir_local_temp_sql
(
true
),
flag
+
".sql"
);
arguments
[
0
]
=
"-schemaAction"
;
arguments
[
1
]
=
flag
;
arguments
[
2
]
=
"-sql"
;
arguments
[
3
]
=
file
.
getAbsolutePath
();
args
=
opts
.
setFromCmdLine
(
arguments
);
MappingTool
.
run
((
JDBCConfiguration
)
em
.
getConfiguration
(),
args
,
opts
,
null
);
logger
.
print
(
"file : {}."
,
file
.
getAbsolutePath
());
}
else
if
(
StringUtils
.
equals
(
flag
,
"deleteTableContents"
))
{
// arguments = new String[2];
// arguments[0] = "-schemaAction";
// arguments[1] = flag;
// args = opts.setFromCmdLine(arguments);
// MappingTool.run((JDBCConfiguration) em.getConfiguration(), args, opts, null);
// logger.print("delete all table contents.");
}
em
.
close
();
emf
.
close
();
new
Thread
(()
->
{
try
{
ClassLoader
cl
=
ClassLoaderTools
.
urlClassLoader
(
true
,
true
,
true
,
true
,
true
,
Config
.
dir_local_temp_classes
().
toPath
());
Thread
.
currentThread
().
setContextClassLoader
(
cl
);
String
flag
=
"build"
;
if
(
StringUtils
.
equalsIgnoreCase
(
type
,
"createDB"
))
{
flag
=
"createDB"
;
}
else
if
(
StringUtils
.
equalsIgnoreCase
(
type
,
"dropDB"
))
{
flag
=
"dropDB"
;
}
else
if
(
StringUtils
.
equalsIgnoreCase
(
type
,
"drop"
))
{
flag
=
"drop"
;
}
List
<
String
>
containerEntityNames
=
new
ArrayList
<>();
containerEntityNames
.
addAll
((
List
<
String
>)
Config
.
resource
(
Config
.
RESOURCE_CONTAINERENTITYNAMES
));
File
persistence
=
new
File
(
Config
.
dir_local_temp_classes
(),
"META-INF/persistence_sql.xml"
);
PersistenceXmlHelper
.
writeForDdl
(
persistence
.
getAbsolutePath
());
OpenJPAEntityManagerFactory
emf
=
OpenJPAPersistence
.
createEntityManagerFactory
(
"enhance"
,
persistence
.
getName
());
EntityManagerImpl
em
=
(
EntityManagerImpl
)
emf
.
createEntityManager
();
String
[]
arguments
=
null
;
String
[]
args
=
null
;
Options
opts
=
new
Options
();
if
(
StringUtils
.
equals
(
flag
,
"build"
)
||
StringUtils
.
equals
(
flag
,
"drop"
)
||
StringUtils
.
equals
(
flag
,
"createDB"
)
||
StringUtils
.
equals
(
flag
,
"dropDB"
))
{
arguments
=
new
String
[
4
];
File
file
=
new
File
(
Config
.
dir_local_temp_sql
(
true
),
flag
+
".sql"
);
arguments
[
0
]
=
"-schemaAction"
;
arguments
[
1
]
=
flag
;
arguments
[
2
]
=
"-sql"
;
arguments
[
3
]
=
file
.
getAbsolutePath
();
args
=
opts
.
setFromCmdLine
(
arguments
);
MappingTool
.
run
((
JDBCConfiguration
)
em
.
getConfiguration
(),
args
,
opts
,
null
);
logger
.
print
(
"file : {}."
,
file
.
getAbsolutePath
());
}
else
if
(
StringUtils
.
equals
(
flag
,
"deleteTableContents"
))
{
}
em
.
close
();
emf
.
close
();
}
catch
(
Exception
e
)
{
logger
.
error
(
e
);
}
}).
start
();
return
true
;
}
...
...
o2server/x_console/src/main/java/com/x/server/console/action/Ddl2.java
0 → 100644
浏览文件 @
a7002208
package
com.x.server.console.action
;
import
java.io.File
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Objects
;
import
com.x.base.core.container.factory.PersistenceXmlHelper
;
import
com.x.base.core.project.config.Config
;
import
com.x.base.core.project.logger.Logger
;
import
com.x.base.core.project.logger.LoggerFactory
;
import
com.x.base.core.project.tools.ListTools
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.openjpa.jdbc.conf.JDBCConfiguration
;
import
org.apache.openjpa.jdbc.meta.MappingTool
;
import
org.apache.openjpa.lib.util.Options
;
import
org.apache.openjpa.persistence.EntityManagerImpl
;
import
org.apache.openjpa.persistence.OpenJPAEntityManagerFactory
;
import
org.apache.openjpa.persistence.OpenJPAPersistence
;
public
class
Ddl2
{
private
static
Logger
logger
=
LoggerFactory
.
getLogger
(
Ddl2
.
class
);
/* 初始化完成 */
public
boolean
execute
(
String
type
)
throws
Exception
{
// List<String> containerEntityNames = new ArrayList<>();
// containerEntityNames.addAll((List<String>)
// Config.resource(Config.RESOURCE_CONTAINERENTITYNAMES));
// List<String> classNames =
// ListTools.includesExcludesWildcard(containerEntityNames,
// Config.dumpRestoreData().getIncludes(),
// Config.dumpRestoreData().getExcludes());
// File persistence = new File(Config.dir_local_temp_classes(),
// "META-INF/persistence.xml");
// PersistenceXmlHelper.writeForDdl(persistence.getAbsolutePath());
// String[] arguments = new String[4];
// arguments[0] = "-schemaAction";
// arguments[1] = StringUtils.equals(type ,"create")? "build":"add";
// arguments[2] = "-sql";
// arguments[3] = Config.dir_local_temp_sql(true) + "/" + type + ".sql";
// MappingTool.main(arguments);
// return true;
String
flag
=
"build"
;
if
(
StringUtils
.
equalsIgnoreCase
(
type
,
"createDB"
))
{
flag
=
"createDB"
;
}
else
if
(
StringUtils
.
equalsIgnoreCase
(
type
,
"dropDB"
))
{
flag
=
"dropDB"
;
}
else
if
(
StringUtils
.
equalsIgnoreCase
(
type
,
"drop"
))
{
flag
=
"drop"
;
// } else if (StringUtils.equalsIgnoreCase(type, "deleteTableContents")) {
// flag = "deleteTableContents";
}
List
<
String
>
containerEntityNames
=
new
ArrayList
<>();
containerEntityNames
.
addAll
((
List
<
String
>)
Config
.
resource
(
Config
.
RESOURCE_CONTAINERENTITYNAMES
));
List
<
String
>
classNames
=
ListTools
.
includesExcludesWildcard
(
containerEntityNames
,
Config
.
dumpRestoreData
().
getIncludes
(),
Config
.
dumpRestoreData
().
getExcludes
());
File
persistence
=
new
File
(
Config
.
dir_local_temp_classes
(),
"persistence_sql.xml"
);
PersistenceXmlHelper
.
writeForDdl
(
persistence
.
getAbsolutePath
());
OpenJPAEntityManagerFactory
emf
=
OpenJPAPersistence
.
createEntityManagerFactory
(
"enhance"
,
persistence
.
getName
());
System
.
out
.
println
(
"!!!!!!!!!!!!!!!!!!!!!!!!"
+
emf
);
EntityManagerImpl
em
=
(
EntityManagerImpl
)
emf
.
createEntityManager
();
String
[]
arguments
=
null
;
String
[]
args
=
null
;
Options
opts
=
new
Options
();
if
(
StringUtils
.
equals
(
flag
,
"build"
)
||
StringUtils
.
equals
(
flag
,
"drop"
)
||
StringUtils
.
equals
(
flag
,
"createDB"
)
||
StringUtils
.
equals
(
flag
,
"dropDB"
))
{
arguments
=
new
String
[
4
];
File
file
=
new
File
(
Config
.
dir_local_temp_sql
(
true
),
flag
+
".sql"
);
arguments
[
0
]
=
"-schemaAction"
;
arguments
[
1
]
=
flag
;
arguments
[
2
]
=
"-sql"
;
arguments
[
3
]
=
file
.
getAbsolutePath
();
args
=
opts
.
setFromCmdLine
(
arguments
);
MappingTool
.
run
((
JDBCConfiguration
)
em
.
getConfiguration
(),
args
,
opts
,
null
);
logger
.
print
(
"file : {}."
,
file
.
getAbsolutePath
());
}
else
if
(
StringUtils
.
equals
(
flag
,
"deleteTableContents"
))
{
// arguments = new String[2];
// arguments[0] = "-schemaAction";
// arguments[1] = flag;
// args = opts.setFromCmdLine(arguments);
// MappingTool.run((JDBCConfiguration) em.getConfiguration(), args, opts, null);
// logger.print("delete all table contents.");
}
em
.
close
();
emf
.
close
();
return
true
;
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录