社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
项目目录如下所示:
Goods.java
package cn.ll.vo;
public class Goods {
private int id;
private String description;
private Float current_price;
private Float original_price;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public Float getCurrent_price() {
return current_price;
}
public void setCurrent_price(Float current_price) {
this.current_price = current_price;
}
public Float getOriginal_price() {
return original_price;
}
public void setOriginal_price(Float original_price) {
this.original_price = original_price;
}
}
GoodsDao.java
package cn.ll.dao;
import cn.ll.vo.Goods;
import java.util.List;
public interface GoodsDao {
public List<Goods> selectGoods();
}
GoodsDaoImpl.java
package cn.ll.dao.impl;
import cn.ll.dao.GoodsDao;
import cn.ll.vo.Goods;
import org.mybatis.spring.SqlSessionTemplate;
import java.util.List;
public class GoodsDaoImpl implements GoodsDao {
private SqlSessionTemplate sqlSession;
public void setSqlSession(SqlSessionTemplate sqlSession) {
this.sqlSession = sqlSession;
}
@Override
public List<Goods> selectGoods() {
List<Goods> goodsList = sqlSession.selectList("cn.ll.vo.GoodsMapper.selectGoods");
return goodsList;
}
}
在接口实现类中设置一个SqlSessionTemplate属性,并设定其set方法
<?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="cn.ll.vo.GoodsMapper">
<select id="selectGoods" resultType="cn.ll.vo.Goods">
select * from theme
</select>
</mapper>
此处selectGoods用于将theme数据表中的所有数据取出,数据类型为Goods类组成的List类型。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:c="http://www.springframework.org/schema/c"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="localhost:3306/exercise"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="mapperLocations" value="classpath:cn/ll/vo/goods.mapper.xml"/>
</bean>
<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index="0" ref="sqlSessionFactory"/>
</bean>
<bean id="goodsDaoImpl" class="cn.ll.dao.impl.GoodsDaoImpl">
<property name="sqlSession" ref="sqlSessionTemplate"/>
</bean>
</beans>
首先声明一个bean对数据源进行配置,配置数据源驱动,数据库url,数据库账号密码等
然后配置一个sqlSessionFactory工厂类,添加其dataSource数据源属性和映射文件所在位置属性mapperLocations
最后为GoodsDao的实现类GoodsDaoImpl中注入sqlSession属性
import cn.ll.dao.impl.GoodsDaoImpl;
import cn.ll.vo.Goods;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import java.util.List;
public class Test {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
GoodsDaoImpl goodsDao = (GoodsDaoImpl)context.getBean("goodsDaoImpl");
List<Goods> goodsList = goodsDao.selectGoods();
for(Goods g:goodsList){
System.out.println(g.getDescription());
}
}
}
此处将数据表theme中的description字段内容全部输出。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!