我在这次里面负责数据库的部分,建好数据库的表,定义好数据库接口和实现接口,他们再调用这些接口就可以了。
首先是按照大佬给的框架进行分层:分为entity层,dao层(定义接口),mapper(来实现接口),以下皆以搜索所用到的为例;
如果想要使用数据库中的表,首先连接上数据库将application.yml中的数据库改成自己的数据库,然后在entity中按照表中的东西建好实体类,如下:
package com.example.demo.share.enitiy;
public class Share {
private String tscode;//股票代码
private String name;//股票公司
private String market;//所属版块
private String industry;//股票公司类型
public Share() {
}
public Share(String tscode, String name, String market, String industry) {
this.tscode = tscode;
this.name = name;
this.market = market;
this.industry = industry;
}
@Override
public String toString() {
return "Share{" +
"tscode='" + tscode + '\'' +
", name='" + name + '\'' +
", market='" + market + '\'' +
", industry='" + industry + '\'' +
'}';
}
public String gettscode() {
return tscode;
}
public void settscode(String tscode) {
this.tscode = tscode;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getMarket() {
return market;
}
public void setMarket(String market) {
this.market = market;
}
public String getIndustry() {
return industry;
}
public void setIndustry(String industry) {
this.industry = industry;
}
}
定义好后就可以写关于搜索的接口,这个放在dao层里,如下:
package com.example.demo.share.Dao;
import com.example.demo.share.enitiy.Share;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface SharesMapper {
boolean isShareExit(@Param("stock3") String stock3, @Param("st") String st);
Share selectShareById(@Param ( "stock3" ) String stock3,@Param ( "st" ) String st);
Share selectShare1();
}
接着是对接口进行实现,这个放在resources中的mapper里面,如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo.share.Dao.SharesMapper">
<select id="isShareExit" parameterType="String" resultType="boolean">
#判断是否有所查询的内容
select count(*) from shares.${stock3} where ${stock3}.ts_code = ${st}
<select>
<select id="selectShareById" parameterType="String" resultType="com.example.demo.share.enitiy.Share">
#查询shareId3表中的数据并且返回
select * from ${stock3} where ${stock3}.ts_code=${st};
<select>
</mapper>
完成这些之后,就可以调用这个接口了,例如这样: