接着上一篇spring-jdbc访问数据库


JDBCTest.java:

    /**
	 * 测试NamedParameterJdbcTemplate
	 * 好处:参数可以起名字,不需要使用"?"按顺序排列
	 */
	@Test
	public void testNamedParameterJdbcTemplate(){
		String sql = "INSERT INTO user(name,money) VALUES(:name,:money)";
		Map<String,Object> paramMap = new HashMap<>();
		paramMap.put("name","用户100");
		paramMap.put("money", "0");
		int num = this.namedParameterJdbcTemplate.update(sql, paramMap);
		System.out.println("NamedParameterJdbcTemplate:" + num);
		
	}
	
	/**
	 * 使用具名参数。
	 * 好处:直接传对象
	 */
	@Test
	public void testNamedParameterJdbcTemplateObject(){
		String sql = "INSERT INTO user(name,money) VALUES(:name,:money)";

		User user = new User();
		user.setName("用户101");
		user.setMoney(0);
		
		SqlParameterSource paramSource = new BeanPropertySqlParameterSource(user);
		int num = this.namedParameterJdbcTemplate.update(sql, paramSource);
		System.out.println("NamedParameterJdbcTemplate:" + num);
		
	}


bean.xml增加配置:

	<!-- 配置 NamedParameterJdbcTemplate -->
	<bean id="namedParameterJdbcTemplate" 
		class="org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate">
			<constructor-arg ref="dataSource"></constructor-arg>
	</bean>


你可能感兴趣的文章