Tag: metadata

如何检查CachedRowSet中是否存在列名?

我正在查询可能会发生变化的视图中的数据。 在我执行crs.get******()之前,我需要知道列是否存在。我发现我可以查询这样的元数据,以便在我从中请求数据之前查看列是否存在。 ResultSetMetaData meta = crs.getMetaData(); int numCol = meta.getColumnCount(); for (int i = 1; i < numCol+1; i++) if(meta.getColumnName(i).equals("name")) return true; 是否有更简单的方法来检查列是否存在? 编辑:它必须是数据库不可知的。 这就是我引用CachedRowSet而不是数据库的原因。

将数据库类型映射到具体的Java类

背景 将列数据类型映射到其对应的Java类。 问题 查询从数据库返回元信息: SELECT rb.object_schema, rb.object_name, rb.column_name FROM dictionary.resource_bundle rb 例如,此查询返回(自引用): dictionary, resource_bundle, column_name 其中’dictionary’是模式名称,’resource_bundle’是object_name,’column_name’是column_name。 做一些像这样的事情会很棒: SELECT rb.object_schema, rb.object_name, rb.column_name, rb.column_type FROM dictionary.resource_bundle rb 并让此查询返回: dictionary, resource_bundle, column_name, varchar 然后使用JDBC发现varchar 映射到java.lang.String 。 问题 在PostgreSQL中,在给定模式名称,对象名称(保证是表或视图)和列名称的情况下,如何确定用于存储数据的类型? 以数据库中立的方式(利用JDBC),如何确定数据库对给定数据类型使用的映射? 谢谢!

使用Java将dpi元数据写入jpeg图像

我试图以编程方式在Java中设置jpeg图像的dpi元数据。 图像的来源是扫描仪,因此我从TWAIN获得水平/垂直分辨率以及图像原始数据。 我想保存此信息以获得更好的打印效果。 这是我到目前为止的代码。 它将原始图像(byteArray)保存为JPEG文件,但忽略了我通过IIOMetadata指定的X / Ydensity信息。 我有什么建议我做错了吗? 任何其他解决方案(第三方库等)也将受到欢迎。 import java.awt.image.BufferedImage; import java.awt.image.WritableRaster; import java.io.File; import javax.imageio.IIOImage; import javax.imageio.ImageIO; import javax.imageio.ImageTypeSpecifier; import javax.imageio.metadata.IIOMetadata; import javax.imageio.plugins.jpeg.JPEGImageWriteParam; import javax.imageio.stream.ImageOutputStream import org.w3c.dom.Element; import com.sun.imageio.plugins.jpeg.JPEGImageWriter; public boolean saveJpeg(int[] byteArray, int width, int height, int dpi, String file) { BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); WritableRaster wr = bufferedImage.getRaster(); […]