package com.mycompany.shequ.bean; public class Forum { private int fid; private String name; public int getFid() { return fid; } public void setFid(int fid) { this.fid = fid; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
7.在src目录创建接口ForumDao,包名(com.mycompany.shequ.dao)如图所示
8.接口ForumDao的内容如下
package com.mycompany.shequ.dao; import com.mycompany.shequ.bean.Forum; public interface ForumDao { public Forum findByForumId(int fid); }
9.在src目录中创建RowMapper的实现类ForumRowMapper,包名(com.mycompany.shequ.dao.impl),如图所示
10.RowMapper的实现类ForumRowMapper的内容如下
package com.mycompany.shequ.dao.impl; import java.sql.ResultSet; import java.sql.SQLException; import org.springframework.jdbc.core.RowMapper; import com.mycompany.shequ.bean.Forum; public class ForumRowMapper implements RowMapper<Forum> { @Override public Forum mapRow(ResultSet rs, int rowNum) throws SQLException { Forum forum = new Forum(); forum.setFid(rs.getInt("fid")); forum.setName(rs.getString("name")); return forum; } }
11.在src目录中创建ForumDao的实现类ForumDaoImpl,包名(com.mycompany.shequ.dao.impl),如图所示
12.ForumDao的实现类ForumDaoImpl的内容如下
package com.mycompany.shequ.dao.impl; import javax.sql.DataSource; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.support.JdbcDaoSupport; import com.mycompany.shequ.bean.Forum; import com.mycompany.shequ.dao.ForumDao; public class ForumDaoImpl extends JdbcDaoSupport implements ForumDao { @Override public Forum findByForumId(int fid) { String sql = "select * from hnsq_forum where fid = ?"; Forum forum = (Forum)getJdbcTemplate().queryForObject(sql, new Object[]{fid}, new ForumRowMapper()); return forum; } }
13.在source目录中创建配置文件spring-datasource.xml,如图所示
14.配置文件spring-datasource.xml的内容如下
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost:3306/b_shequ_two" /> <property name="username" value="root" /> <property name="password" value="" /> </bean> </beans>
15.在source目录中创建配置文件applicationContext.xml,如图所示
16.配置文件applicationContext.xml的内容如下
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <import resource="spring-datasource.xml" /> <bean id="forumDao" class="com.mycompany.shequ.dao.impl.ForumDaoImpl"> <property name="dataSource" ref="dataSource" /> </bean> </beans>
17.在test目录中创建ForumDaoImplTest测试类,包名(com.mycompany.shequ.dao.impl),如图所示
18.ForumDaoImplTest测试类的内容如下
package com.mycompany.shequ.dao.impl; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.mycompany.shequ.bean.Forum; import com.mycompany.shequ.dao.ForumDao; public class ForumDaoImplTest { @Test public void testFindByForumId(){ ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); ForumDao forumDao = (ForumDao) context.getBean("forumDao"); Forum forum = forumDao.findByForumId(40); System.out.println(forum.getName()); } }
19.运行测试类中的testFindByForumId方法,运行结果如图所示
20.自定义的RowMapping完成.
本文出自 “素颜” 博客,请务必保留此出处http://suyanzhu.blog.51cto.com/8050189/1909107
原文地址:http://suyanzhu.blog.51cto.com/8050189/1909107