1.创建Maven项目,项目名(springdemo13),操作如图所示
2.配置Maven,修改pom.xml文件,内容如下
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>1.0.0</modelVersion> <groupId>shequ</groupId> <artifactId>springdemo13</artifactId> <version>0.0.1-SNAPSHOT</version> <properties> <java.version>1.7</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> </properties> <repositories> <repository> <id>codelds</id> <url>https://code.lds.org/nexus/content/groups/main-repo</url> </repository> </repositories> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.10</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>4.1.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.1.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.1.4.RELEASE</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.34</version> </dependency> </dependencies> <build/> </project>
3.在src/main/java下创建实体Bean Forum,包名(com.mycompany.shequ.bean),如图所示
4.实体Bean Forum的内容如下
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; } }
5.在src/main/java下创建接口ForumDao,包名(com.mycompany.shequ.dao),如图所示
6.接口ForumDao的内容如下
package com.mycompany.shequ.dao; import java.util.List; import com.mycompany.shequ.bean.Forum; public interface ForumDao { public List<Forum> query() throws Exception ; }
7.在src/main/java下创建接口ForumDao的实现类ForumDaoImpl,包名(com.mycompany.shequ.dao.impl),如图所示
8.接口ForumDao的实现类ForumDaoImpl的内容如下
package com.mycompany.shequ.dao.impl; import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; import java.util.ArrayList; import java.util.List; import javax.sql.DataSource; import com.mycompany.shequ.bean.Forum; import com.mycompany.shequ.dao.ForumDao; public class ForumDaoImpl implements ForumDao{ private DataSource dataSource; public void setDataSource(DataSource dataSource) { this.dataSource = dataSource; } public List<Forum> query() throws Exception { Connection conn = dataSource.getConnection(); String sql = "select * from hnsq_forum"; Statement smt = conn.createStatement(); ResultSet rs = smt.executeQuery(sql); List<Forum> forumList = new ArrayList<Forum>(); while(rs.next()){ Forum forum = new Forum(); forum.setFid(rs.getInt("fid")); forum.setName(rs.getString("name")); forumList.add(forum); } return forumList; } }
9.在src/main/resources下创建database目录,存储spring数据源spring-datasource.xml文件,如图所示
10.数据源spring-databsource.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>
11.在src/main/resources下创建dao目录,存储相应的bean文件,文件名称spring-forum.xml,如图所示
12.spring-forum.xml的内容如下
<?xml version="1.0" encoding="UTF-8"?> <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.xsd"> <bean id="forumDao" class="com.mycompany.shequ.dao.impl.ForumDaoImpl"> <property name="dataSource" ref="dataSource" /> </bean> </beans>
13.在src/main/resources下创建spring核心配置文件spring-module.xml,如图所示
14.spring核心配置文件spring-module.xml的内容如下
<?xml version="1.0" encoding="UTF-8"?> <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.xsd"> <!-- Using mysql datasource --> <import resource="database/spring-datasource-mysql.xml" /> <import resource="dao/spring-forum.xml" /> </beans>
15.在src/test/java目录下创建测试类ForumDaoImplTest,包名(com.mycompany.shequ.dao.impl),如图所示
16.测试类ForumDaoImplTest的内容如下
package com.mycompany.shequ.dao.impl; import java.util.List; 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 queryTest(){ ApplicationContext context = new ClassPathXmlApplicationContext("spring-module.xml"); ForumDao forumDao = (ForumDao) context.getBean("forumDao"); try { List<Forum> forumList = forumDao.queryDepartment(); for (Forum forum : forumList) { System.out.println(forum.getFid()); System.out.println(forum.getName()); } } catch (Exception e) { e.printStackTrace(); } } }
17.在测试类ForumDaoImplTest的queryTest方法上右键执行,输出结果如图所示
本文转自 素颜猪 51CTO博客,原文链接:http://blog.51cto.com/suyanzhu/1909311