小编paf*_* k.的帖子

为什么BOOLEAN类型列在关系数据库设计中存在问题?

在过去的几年里,我一直主要使用Oracle,并且习惯于将单字符varchar列用作布尔值.

我也可以看到(每个堆栈溢出答案),MySQL的建议类型是TINYINT.

现在我接受了我的小方案项目 - 使用DerbyDB,它支持BOOLEAN列,但直到10版左右才开始.

所以,问题是,为什么在设计关系数据库时合并BOOLEAN列如此困难?我是否遗漏了某些内容,或者它只是将待办事项列表推到了不重要的位置,因为您可以同时使用其他列类型?

mysql sql oracle derby

13
推荐指数
2
解决办法
2015
查看次数

是否可以创建指向内存中对象的URL?

我正在尝试扩展我的库以进行集成Swing,JPA并将JPA配置设置为可自动(和可移植),这意味着以编程方式添加<class>元素.(我知道它可以通过Hibernate AnnotationConfiguration或EclipseLInk 完成ServerSession,但是 - 可移植性).我也想避免Spring仅仅为了这个目的而使用.

我可以动态创建persistence.xml,并使用<class>指定包中的元素(通过Reflections库)填充它.当我尝试将此persistence.xml提供给JPA提供程序时,问题就开始了.我能想到的唯一方法是设置一个URLClassLoader,但是我想不出一种方法,首先不会让我把文件写到磁盘上,因为它有能力获得有效的URL.设置套接字通过URL(localhost:xxxx)服务文件似乎......我不知道,邪恶?

有谁知道如何解决这个问题?我知道避免使用一个库听起来很多工作,但我只想知道它是否可以完成.

编辑(尝试更清楚):

动态生成XML保存在String对象中.我不知道如何使它可用于持久性提供程序.另外,我想避免将文件写入磁盘.

出于我的问题的目的,持久性提供程序只是一个扫描类路径的类META-INF/persistence.xml.可以使一些实现接受动态创建XML,但是没有通用接口(特别是对于文件的关键部分,<class>标签).

我的想法是建立一个习俗ClassLoader- 如果你有任何其他的我会感激,我不会在这个上面.

我能找到的唯一容易扩展/可配置的是a URLClassLoader.它适用于URL对象,我不知道是否可以创建一个没有实际首先将XML写入磁盘.

这就是我正在设置的方式,但它是通过写入persistenceXmlFile = new File("META-INF/persistence.xml")磁盘来实现的:

Thread.currentThread().setContextClassLoader(
    new URLResourceClassLoader(
        new URL[] { persistenceXmlFile.toURI().toURL() },
        Thread.currentThread().getContextClassLoader()
    ) …
Run Code Online (Sandbox Code Playgroud)

java jpa classloader

11
推荐指数
1
解决办法
1898
查看次数

如何逃避所有正则表达式的特殊字符,但不是一次性(通过Pattern.quote()),只是一个一个

这就是问题:用户会看到一个文本字段,可以输入过滤器.过滤器,用于过滤未过滤的数据.遇到Oracle Forms洗脑的用户除了%之外没有任何特殊字符,我想这或多或少代表Java中的".*"正则表达式.

如果用户表现良好,给定的人会输入"CTHULH%"之类的东西,在这种情况下我可以构建一个模式:

Pattern.compile(inputText.replaceAll("%", ".*"));
Run Code Online (Sandbox Code Playgroud)

但如果用户人员来自Innsmouth,那么他会输入".+\[a - #$%^&*("用几个简单的击键来破坏我的方案.这不可行):

Pattern.compile(Pattern.quote(inputText).replaceAll("%", ".*"));
Run Code Online (Sandbox Code Playgroud)

因为它会在开头放置\ Q,在字符串末尾放置\ E,渲染我的% - >.*开关.

问题是:我是否必须在模式代码中查找每个特殊字符并通过在前面添加"\\"来自行转义,或者这可以自动完成吗?或者我是如此深入到问题中,我忽略了一些明显的解决方法?

java regex

5
推荐指数
2
解决办法
1003
查看次数

标签 统计

java ×2

classloader ×1

derby ×1

jpa ×1

mysql ×1

oracle ×1

regex ×1

sql ×1