我有一个从dbms作业调用的存储过程.即
DBMS_SCHEDULER.RUN_JOB ('Procedure_JB', FALSE);
Run Code Online (Sandbox Code Playgroud)
一个java代码存储过程,在完成一些操作之后,异步启动Procedure_JB.然后这个Procedure_JB调用Procedure_PRogram,然后程序将调用存储过程.
如何将参数传递给我的存储过程?
我正在做一个项目.我试图将核心实现为独立的jar文件,可以从命令行甚至是Windows服务运行.核心负责跟踪几个文件并发送一些通知电子邮件.问题是,保持GUI完全独立的最佳想法是什么?
GUI需要与核心进行交互
我用Delphi和C开发了这个软件.C用于编写核心逻辑并使用Windows消息和回调,我在C dll/service上注册了Delphi GUI.我很困惑如何在java中实现它.
PS:我在这里讨论它的原因是在用Java编码时学习和探索这种软件的更好设计.我不是要求Observer Pattern文档或客户端服务器架构.可能还有其他可能的方法,我不知道.所以我期待任何想法,设计或框架.
我试图获取方法,无论该方法采用什么参数(截至目前没有方法重载,将来也不会).我能提出的唯一可能的解决方案是
private Method getMethod(Class<?> clas, String methodName) {
try {
Method[] methods = clas.getMethods();
for (Method method : methods) {
if (method.getName().equalsIgnoreCase(methodName)) {
return method;
}
}
} catch (SecurityException e) {
e.printStackTrace();
}
return null;
}
Run Code Online (Sandbox Code Playgroud)
我想问的是,有没有办法获取方法,无论其参数如何?我在看,clas.getMethod ("methodName", parameters)
如果我null
在那里提供它将尝试获取一个没有参数的方法.哪个不是没有案例.
有任何想法吗 ?
编辑
感谢大家的投入.就我而言,我知道无论如何都只有一种方法.我使用的原因ignoreCase
是因为输入将来自开发人员(在其他团队中),他将提供名称作为硬编码字符串.因此,为了防止事情泄漏,我采用了安全的方法.
我正在尝试从 to 转换java.sql.timestamp
,OffsetDateTime
以便我可以ISO8601
在我的 rest api 中返回标准字符串。我正在使用此代码转换timestamp
为OffsetDateTime
public static OffsetDateTime sqlTimetampeToOffsetDateTime(Timestamp ts, String timeZone)
{
if (ts == null)
{
return null;
}
Calendar cal = Calendar.getInstance();
cal.setTime(ts);
ZoneOffset offset = ZoneOffset.of(timeZone);
return OffsetDateTime.of(
cal.get(Calendar.YEAR),
cal.get(Calendar.MONTH)+1,
cal.get(Calendar.DAY_OF_MONTH),
cal.get(Calendar.HOUR_OF_DAY),
cal.get(Calendar.MINUTE),
cal.get(Calendar.SECOND),
cal.get(Calendar.MILLISECOND)*1000000,
offset);
}
Run Code Online (Sandbox Code Playgroud)
但是,代码在ZoneOffset offset = ZoneOffset.of(timezone)
for value处失败Europe/Copenhagen
。
我使用以下代码打印所有时区的列表,我确实Europe/Copenhagen
在该列表中看到
Set<String> allZones = ZoneId.getAvailableZoneIds();
LocalDateTime dt = LocalDateTime.now();
List<String> zoneList = new ArrayList<String>(allZones);
Collections.sort(zoneList);
for (String s …
Run Code Online (Sandbox Code Playgroud) 我正在按照本教程构建 SAM 应用程序:https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-getting-started-hello-world.html
\n当我这样做时sam build
,我收到以下错误
\xe2\x9d\xaf sam build\nBuilding codeuri: hello_world/ runtime: python3.8 metadata: {} functions: [\'HelloWorldFunction\']\n\nBuild Failed\nError: PythonPipBuilder:Validation - Binary validation failed for python, searched for python in following locations : [\'/usr/bin/python\'] which did not satisfy constraints for runtime: python3.8. Do you have python for runtime: python3.8 on your PATH?\n
Run Code Online (Sandbox Code Playgroud)\n我通过这样做检查了我的Python
\n\xe2\x9d\xaf which python\npython: aliased to python3\n
Run Code Online (Sandbox Code Playgroud)\n当我做 python 版本时,我得到了这个
\n\xe2\x9d\xaf python --version\nPython 3.8.2\n
Run Code Online (Sandbox Code Playgroud)\n那么缺少什么以及如何解决这个问题呢?
\n我的数据库有以下设置(我有多个数据库,因此它们是按spring.datasource
层次结构配置的。
spring:
datasource:
db-write:
url: jdbc:sqlserver://whatever.database.windows.net:1433;database=dbname;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;
username: 'myusername'
password: 'mynotsosecretpassword'
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
Run Code Online (Sandbox Code Playgroud)
然后我在这里配置我的数据源
spring:
datasource:
db-write:
url: jdbc:sqlserver://whatever.database.windows.net:1433;database=dbname;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;
username: 'myusername'
password: 'mynotsosecretpassword'
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
Run Code Online (Sandbox Code Playgroud)
dataSourceDbWrite
我正在根据我在方法中读取的属性在方法中配置我的 hikari 数据源dataSourcePropertiesDbWrite
。我相信我需要在特定层次结构中配置属性,以便该dataSourceDbWrite
方法可以轻松检测hikari
. 那是对的吗?
这个层次结构会是什么?
此外,我如何以及在哪里可以找到可以为 hikari 配置的属性?连接超时?连接池大小等?
我想实现一个功能,在部署时,我应该从数据库加载对象列表。该数据库已经完成了相应的实现,正在运行中使用。
鉴于我是 Spring 的新手,我正在尝试了解 Spring 的不同功能,我可以利用这些功能来实现此功能。如果我没有使用 Spring,我会
现在,春天来了,我很迷茫。我一直在阅读不同的文章并试图找到一些指导。首先,我应该用它@Component
来创建类单例吗?Spring会考虑线程安全吗?
其次,这堂课是Service
春季课吗?我必须用 注释它吗@Service
?
第三,我应该@PostConstruct
在启动时加载这个类吗?或者还有其他更好的选择?
我正在尝试在我的 spring-boot rest 应用程序中为 CRUD 操作设置 MongoDB 存储库。这是我到目前为止所拥有的
我的applicaiton.yml
档案
server:
data:
mongodb: localhost
port: 27017
database: dbname
Run Code Online (Sandbox Code Playgroud)
我的DbConfiguration
班级
@Configuration
@EnableMongoRepositories("com.package.path.to.repository")
@Import(value = MongoAutoConfiguration.class)
public class DbConfiguration extends AbstractMongoConfiguration {
private final Logger log = LoggerFactory.getLogger(DbConfiguration.class);
@Autowired
private Mongo mongo;
@Autowired
private MongoProperties mongoProperties;
@Bean
public ValidatingMongoEventListener validatingMongoEventListener() {
return new ValidatingMongoEventListener(validator());
}
@Bean
public LocalValidatorFactoryBean validator() {
return new LocalValidatorFactoryBean();
}
@Override
protected String getDatabaseName() {
return mongoProperties.getDatabase();
}
@Override
public Mongo mongo() throws Exception { …
Run Code Online (Sandbox Code Playgroud) 在我的工作笔记本电脑上,我使用我们的产品项目配置了 gcloud。当我这样做时gcloud config configurations list
,我只得到一行结果,它是活动的,它是我的工作项目。
现在,为了进行一些个人测试,我创建了一个与我的个人电子邮件 ID 关联的单独项目。我如何使用我的 gcloud cli 配置/连接这个项目?
我努力了
gcloud auth application-default login
打开浏览器,我使用个人电子邮件 ID 登录。网页向我显示OK
,控制台从未改变。
我也尝试过gcloud auth login <personal_email_id>@gmail.com
并得到相同的结果。
那么我如何将我的个人谷歌项目连接到与我的工作产品项目连接的同一个 gcloud 。有可能吗?
java ×5
spring ×2
spring-boot ×2
.net ×1
architecture ×1
aws-lambda ×1
aws-sam ×1
c# ×1
date ×1
gcloud ×1
gcloud-cli ×1
hikaricp ×1
java-11 ×1
java-8 ×1
mongodb ×1
mysql ×1
oracle10g ×1
plsql ×1
python ×1
reflection ×1
scheduler ×1
serverless ×1
spring-data ×1
spring-mvc ×1
timestamp ×1
zip ×1