以下是一个简单的Spring JDBC示例,包括配置数据源、使用JdbcTemplate执行查询操作:

1. 创建数据库表:
   CREATE TABLE my_table (
       id INT PRIMARY KEY,
       name VARCHAR(255)
   );
   INSERT INTO my_table (id, name) VALUES (1, 'John');
   INSERT INTO my_table (id, name) VALUES (2, 'Jane');

2. 配置数据源: 在Spring配置文件中配置数据源。这里使用DriverManagerDataSource作为简单的内存数据库。
   <?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:context="http://www.springframework.org/schema/context"
          xsi:schemaLocation="http://www.springframework.org/schema/beans
          http://www.springframework.org/schema/beans/spring-beans.xsd
          http://www.springframework.org/schema/context
          http://www.springframework.org/schema/context/spring-context.xsd">

       <context:annotation-config />

       <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
           <property name="driverClassName" value="org.h2.Driver" />
           <property name="url" value="jdbc:h2:mem:testdb" />
           <property name="username" value="sa" />
           <property name="password" value="" />
       </bean>
   </beans>

3. 创建DAO类: 创建一个DAO类,使用JdbcTemplate执行数据库查询操作。
   import org.springframework.jdbc.core.JdbcTemplate;
   import org.springframework.stereotype.Repository;

   @Repository
   public class MyDao {

       private final JdbcTemplate jdbcTemplate;

       public MyDao(JdbcTemplate jdbcTemplate) {
           this.jdbcTemplate = jdbcTemplate;
       }

       public String findNameById(int id) {
           return jdbcTemplate.queryForObject("SELECT name FROM my_table WHERE id = ?", String.class, id);
       }
   }

4. 创建应用程序类: 创建一个简单的应用程序类,使用Spring IoC容器加载配置和执行查询操作。
   import org.springframework.context.ApplicationContext;
   import org.springframework.context.support.ClassPathXmlApplicationContext;

   public class MainApp {

       public static void main(String[] args) {
           ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");

           MyDao myDao = context.getBean(MyDao.class);

           // 查询id为1的记录的name字段
           String name = myDao.findNameById(1);

           System.out.println("Name: " + name);
       }
   }

5. 运行应用程序: 运行MainApp类,将输出查询结果: