gpt4 book ai didi

java - 为什么DynamicReports中没有varchar数据类型

转载 作者:行者123 更新时间:2023-12-01 09:42:30 28 4
gpt4 key购买 nike

我正在使用 DynamicReports 生成 PDF、XLS、DOC 格式的报告。但我的数据库列采用“varchar”数据类型。因此,当我在生成 DynamicReports 时使用这些字段时,除了 varchar 之外还有其他所有数据类型。我需要 varchar 数据类型,因为我的列由逗号、句号、此类数字组成。那么是否有任何选项可以将数据类型转换或获取为 varchar。

这是我的代码:

public class DynamicReport {
public static void main(String[] args) {
Connection connection = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/marketing_database","root","root");
} catch (SQLException e) {
e.printStackTrace();
return;
} catch (ClassNotFoundException e) {
e.printStackTrace();
return;
}

JasperReportBuilder report = DynamicReports.report();//a new report
StyleBuilder plainStyle = stl.style().setFontName("FreeUniversal");

StyleBuilder boldStyle = stl.style(plainStyle).bold().setBorder(stl.pen1Point());

report
.columns(
Columns.column("Contact Person", "Contact_Person", DataTypes.stringType()))
.title(//title of the report
Templates.createTitleComponent("Fonts"),
Components.text("FreeUniversal").setStyle(boldStyle)
.setHorizontalAlignment(HorizontalAlignment.CENTER))
.pageFooter(Components.pageXofY())//show page number on the page footer
.setDataSource("SELECT Contact_Person FROM marketing_database.lead",
connection);

try {
report.show();
report.toPdf(new FileOutputStream("c:/report.pdf"));
} catch (DRException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}

如有任何帮助,我们将不胜感激

最佳答案

由于动态报表基于 Java,因此您可以将 String 数据类型用于 VARCHAR 数据库类型,如 @AlexK 和 @KarthikeyanVaithilingam 建议的那样。

CHAR, VARCHAR, and LONGVARCHAR could have been mapped to either String or char[], but String is more appropriate for normal use. Also, the String class makes conversions between String and char[] easy: There is a method for converting a String object to a char[] and also a constructor for turning a char[] into a String object.

Source

关于java - 为什么DynamicReports中没有varchar数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38345951/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com