创建测试类TestStock

main
jml 1 week ago
parent 773cfdee61
commit f221b828df

@ -1,75 +1,33 @@
package com.ssm.entity;
import java.util.Date;
public class Stock {
private Integer id;
private Integer userId; // 对应用户ID和user表关联
private String stockName; // 股票名称
private String stockCode; // 股票代码
private Integer holdNum; // 持有数量
private Double buyPrice; // 买入成本
private String createTime; // 买入日期
private Integer userId;
private String stockName;
private String stockCode;
private Integer holdNum;
private Double buyPrice;
private Date createTime; // 新增的字段
// 无参构造必须MyBatis需要
public Stock() {}
// Getter & Setter
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getUserId() {
return userId;
}
public void setUserId(Integer userId) {
this.userId = userId;
}
public String getStockName() {
return stockName;
}
public void setStockName(String stockName) {
this.stockName = stockName;
}
public String getStockCode() {
return stockCode;
}
public void setStockCode(String stockCode) {
this.stockCode = stockCode;
}
public Integer getHoldNum() {
return holdNum;
}
public void setHoldNum(Integer holdNum) {
this.holdNum = holdNum;
}
public Double getBuyPrice() {
return buyPrice;
}
public void setBuyPrice(Double buyPrice) {
this.buyPrice = buyPrice;
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime;
}
public Integer getId() { return id; }
public void setId(Integer id) { this.id = id; }
public Integer getUserId() { return userId; }
public void setUserId(Integer userId) { this.userId = userId; }
public String getStockName() { return stockName; }
public void setStockName(String stockName) { this.stockName = stockName; }
public String getStockCode() { return stockCode; }
public void setStockCode(String stockCode) { this.stockCode = stockCode; }
public Integer getHoldNum() { return holdNum; }
public void setHoldNum(Integer holdNum) { this.holdNum = holdNum; }
public Double getBuyPrice() { return buyPrice; }
public void setBuyPrice(Double buyPrice) { this.buyPrice = buyPrice; }
public Date getCreateTime() { return createTime; }
public void setCreateTime(Date createTime) { this.createTime = createTime; }
// toString方法方便打印测试结果
@Override
public String toString() {
return "Stock{" +
@ -79,7 +37,7 @@ public class Stock {
", stockCode='" + stockCode + '\'' +
", holdNum=" + holdNum +
", buyPrice=" + buyPrice +
", createTime='" + createTime + '\'' +
", createTime=" + createTime +
'}';
}
}

@ -14,6 +14,15 @@
<select id="findStockAccountById" resultType="com.ssm.entity.StockAccount" parameterType="int">
SELECT * FROM stockaccount WHERE id = #{id}
</select>
<!-- 查询所有股票 -->
<select id="findAllStock" resultType="com.ssm.entity.Stock">
SELECT * FROM stock
</select>
<!-- 根据ID查询股票 -->
<select id="findStockById" resultType="com.ssm.entity.Stock" parameterType="int">
SELECT * FROM stock WHERE id = #{id}
</select>
</mapper>

@ -3,15 +3,13 @@
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- namespace要和测试类中调用的路径一致 -->
<mapper namespace="com.ssm.mapper.StockMapper">
<!-- 查询所有股票持仓数据resultType和实体类对应 -->
<select id="selectAll" resultType="com.ssm.entity.Stock">
<!-- 这里的id必须和测试类调用的findAllStock完全一致 -->
<select id="findAllStock" resultType="com.ssm.entity.Stock">
SELECT * FROM stock
</select>
<!-- 可选扩展根据用户ID查询该用户的所有持仓 -->
<select id="selectByUserId" resultType="com.ssm.entity.Stock">
SELECT * FROM stock WHERE user_id = #{userId}
<select id="findStockById" resultType="com.ssm.entity.Stock" parameterType="int">
SELECT * FROM stock WHERE id = #{id}
</select>
</mapper>

@ -5,34 +5,26 @@ import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.InputStream;
import java.util.List;
public class TestStock {
public static void main(String[] args) {
try {
// 1. 加载MyBatis配置文件
InputStream in = Resources.getResourceAsStream("config.xml");
// 2. 获取SqlSessionFactory
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
// 3. 打开会话
SqlSession session = factory.openSession(true);
// 4. 查询所有股票数据
List<Stock> stockList = session.selectList("com.ssm.mapper.StockMapper.selectAll");
public static void main(String[] args) throws Exception {
// 加载配置
SqlSessionFactory factory = new SqlSessionFactoryBuilder()
.build(Resources.getResourceAsStream("config.xml"));
// 5. 打印结果
System.out.println("✅ 股票持仓查询成功,共 " + stockList.size() + " 条数据:");
for (Stock stock : stockList) {
try (SqlSession session = factory.openSession()) {
// 1. 查询所有股票
List<Stock> list = session.selectList("com.ssm.mapper.StockMapper.findAllStock");
System.out.println("===== 组员A查询所有股票 =====");
for (Stock stock : list) {
System.out.println(stock);
}
// 关闭会话
session.close();
} catch (Exception e) {
e.printStackTrace();
System.out.println("❌ 股票模块测试失败,请检查配置");
// 2. 根据ID查询股票
Stock stock = session.selectOne("com.ssm.mapper.StockMapper.findStockById", 1);
System.out.println("\n===== 组员A按ID查询股票 =====");
System.out.println(stock);
}
}
}

@ -9,7 +9,7 @@
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3307/ssm_ffms1?useSSL=false&amp;serverTimezone=UTC&amp;allowPublicKeyRetrieval=true"/>
<property name="url" value="jdbc:mysql://localhost:3306/ssm_ffms1?useSSL=false&amp;serverTimezone=UTC&amp;allowPublicKeyRetrieval=true"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>

@ -1,4 +1,4 @@
driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3307/ssm_ffms1?serverTimezone=Asia/Shanghai&useSSL=false&allowPublicKeyRetrieval=true
url=jdbc:mysql://localhost:3306/ssm_ffms1?serverTimezone=Asia/Shanghai&useSSL=false&allowPublicKeyRetrieval=true
user=root
password=root
Loading…
Cancel
Save