讀取數據的create_time是null的疑問
工具類
import com.alibaba.druid.pool.DruidDataSourceFactory;
import javax.sql.DataSource;
import java.io.FileInputStream;
import java.net.URLDecoder;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;
public class DBUtils {
/**
* 取得DataSource數據源對象
* @return DataSource數據源對象
*/
public static DataSource getDataSource() {
Properties properties = new Properties();
String pFile = DBUtils.class.getResource("/druid-config.properties").getPath();
DataSource dataSource = null;
try {
pFile = new URLDecoder().decode(pFile, "UTF-8");
properties.load(new FileInputStream(pFile));
dataSource = DruidDataSourceFactory.createDataSource(properties);
} catch (Exception e) {
e.printStackTrace();
}
return dataSource;
}
/**
* 關閉數據庫連接
* @param conn 數據庫連接
*/
public static void closeConnection(Connection conn) {
try {
if (conn != null && !conn.isClosed()) {
conn.close();
}
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}新聞類
import java.util.Date;
/**
* 新聞類
*/
public class News {
private Integer id; // 新聞id
private String title; // 新聞標題
private String content; // 新聞內容
private Date createTime; // 創建時間
public News() {
}
public News(Integer id, String title, String content, Date createTime) {
this.id = id;
this.title = title;
this.content = content;
this.createTime = createTime;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
@Override
public String toString() {
return "News [" +
"id=" + id +
", title='" + title + '\'' +
", content='" + content + '\'' +
", createTime=" + createTime +
']';
}
}查找新聞類
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanListHandler;
import pers.leo.jdbc.common.DBUtils;
import pers.leo.jdbc.entity.News;
import javax.sql.DataSource;
import java.sql.SQLException;
import java.util.List;
public class SearchCommand implements Command {
@Override
public void execute() {
DataSource dataSource = DBUtils.getDataSource();
QueryRunner qr = new QueryRunner(dataSource);
String sql = "SELECT * FROM news";
try {
List<News> newsList = qr.query(
sql,
new BeanListHandler<>(News.class),
new Object[]{}
);
for (News n: newsList
) {
System.out.println(n);
}
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}資料庫news表

idea的console內容

添加至數據庫的功能正常, 但讀取的create_time不知道為什麼沒有導入到News類中呢, 求老師解惑!
32
收起
正在回答
2回答
同学自己解决了问题,棒棒哒。继续加油。
祝:学习愉快~
慕桂英0504842
2020-08-06 19:31:56
經過測試之後, 發現似乎是News類的create_time名稱必須與News資料表一致, 因為修改過後能正常呈現了。

java工程师2020版
- 参与学习 人
- 提交作业 9410 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星