- 浏览: 1040541 次
- 性别:
- 来自: 南京
文章分类
- 全部博客 (501)
- dwr (6)
- javascript (84)
- oracle (66)
- jsp/servlet (18)
- ant (3)
- 基础知识 (12)
- EXT (10)
- My SQL (10)
- java (71)
- spring (37)
- 学习的对象 (2)
- Linux (24)
- 面试 (1)
- HTML/CSS (11)
- tomcat (11)
- 收藏夹 (2)
- Power Designer (2)
- struts.xml配置文件 (1)
- sturts2 (3)
- myeclipse (8)
- eclipse (7)
- Maven (34)
- SVN (3)
- SAP JCO (2)
- JBOSS (11)
- webservice (8)
- word (1)
- 敏捷开发 (1)
- sybase (4)
- Nexus (3)
- EhCache (3)
- log4j (3)
- Cookie (4)
- Session (4)
- CXF (7)
- AXIS (2)
- SSO (1)
- LDAP (1)
- velocity (2)
- Jquery (5)
- redis (2)
- http (4)
- dojo (1)
- Linux资源监控软件mnon的安装与运用 (1)
- notepad++ (1)
- EA (1)
- UML (1)
- JasperReports (1)
- 权限 (0)
- freemarker (4)
- Spring MVC (1)
- JMS (1)
- activeMQ (1)
- hession (3)
- 安全 (1)
- ibatis (2)
- log (1)
- nginx (1)
最新评论
-
winhbb:
我刚好遇到了一个问题(在可以依赖注入的场合有效):有两个模块A ...
解决Maven项目相互依赖/循环依赖/双向依赖的问题 -
nanjiwubing123:
long3ok 写道你好 XmlOutputFormatter ...
用XStream转换复杂XML -
zhoujianboy:
另外一个方法实现eclipse tomcat 热部署:http ...
eclipse下实现maven项目在tomcat容器热部署方法 -
long3ok:
你好 XmlOutputFormatter 请问这个类是在什么 ...
用XStream转换复杂XML -
ganbo:
总结的好,文章给力。
解决Maven项目相互依赖/循环依赖/双向依赖的问题
NamedParameterJdbcTemplate内部包含了一个JdbcTemplate,所以JdbcTemplate能做的事情NamedParameterJdbcTemplate都能干,NamedParameterJdbcTemplate相对于JdbcTemplate主要增加了参数可以命名的功能。
public Object queryForObject(String sql, Map paramMap, RowMapper rowMapper)
public Object queryForObject(String sql, SqlParameterSource paramSource, RowMapper rowMapper)
SqlParameterSource的两个主要实现MapSqlParameterSource
和BeanPropertySqlParameterSource
public int update(String sql, SqlParameterSource paramSource, KeyHolder generatedKeyHolder)保存数据获得主键。
实例说明:
【转载】http://zmx.iteye.com/blog/373736
public Object queryForObject(String sql, Map paramMap, RowMapper rowMapper)
public Object queryForObject(String sql, SqlParameterSource paramSource, RowMapper rowMapper)
SqlParameterSource的两个主要实现MapSqlParameterSource
和BeanPropertySqlParameterSource
public int update(String sql, SqlParameterSource paramSource, KeyHolder generatedKeyHolder)保存数据获得主键。
实例说明:
/** * 一、NamedParameterJdbcTemplate提供了命名参数,用:x代替了? * NamedParameterJdbcTemplate传参数可以用map或者SqlParameterSource * 用map的好处是:x,x的值可以自由取,但是所有参数的值都必须要放到map中去,其中的key为:后面的名称,value是你传的值 * 用SqlParameterSource的好处是不用一个个的赋值,但是:x中的x的值必须和对象的属性名称一样 * 二、使用KeyHolder keyholder=new GeneratedKeyHolder(); namedjdbctemp.update(sql, ps,keyholder);这个参数可以获得主键生成值 */ public class StuDaoImple implements StuDaointer{ private NamedParameterJdbcTemplate namedjdbctemp; public StuDaoImple(){ namedjdbctemp=new NamedParameterJdbcTemplate(SQLConnUtil.getDataSource()); }// SQLConnUtil为JDBC工具类,提供了得到数据源的静态方法 /* * 这里会用到NamedParameterJdbcTemplate两个好处: * 1,不用一个个的为参数赋值。 * 2,可以轻易的得到主键自动增长值 */ public void addStu(Stu stu) { String sql="insert into stu values(:sname,:ssex,:sbrith)"; //:后面的名称必须和stu属性名称一样 SqlParameterSource ps=new BeanPropertySqlParameterSource(stu); KeyHolder keyholder=new GeneratedKeyHolder(); namedjdbctemp.update(sql, ps,keyholder); //加上KeyHolder这个参数可以得到添加后主键的值 int m=keyholder.getKey().intValue(); System.out.println(m); //Map map=keyholder.getKeys();//这样可以得到联合主键的值 //keyholder.getKeyList();//这样可以得到一些主主键值,若一次添加好几条记录 } public int count() { String sql="select count(*) from stu"; //可以通过NamedParameterJdbcTemplate得到JdbcTemplate int m=namedjdbctemp.getJdbcOperations().queryForInt(sql); return m; } /* * 这里会用到NamedParameterJdbcTemplate另一个好处: * 位置参数 */ public void delStu(int sid) { String sql="delete stu where s_id=:id"; Map map=new HashMap(); map.put("id", sid); namedjdbctemp.update(sql, map); } public List getAllStu() { String sql="select s_id as sid,s_name as sname,s_sex as ssex,s_brith as sbrith from stu"; List list=namedjdbctemp.getJdbcOperations().query(sql,new BeanPropertyRowMapper(Stu.class)); return list; } public List getAllStu(Stu stu) { String sql="select s_id as sid,s_name as sname,s_sex as ssex,s_brith as sbrith from stu where s_id=:sid"; SqlParameterSource ps=new BeanPropertySqlParameterSource(stu); return namedjdbctemp.query(sql, ps, new BeanPropertyRowMapper(Stu.class)); } public Stu getOneStu(Stu stu) { String sql="select s_id as sid,s_name as sname,s_sex as ssex,s_brith as sbrith from stu where s_id=:sid"; SqlParameterSource ps=new BeanPropertySqlParameterSource(stu); return (Stu)namedjdbctemp.queryForObject(sql, ps, new BeanPropertyRowMapper(Stu.class)); } public String getStuName(Stu stu) { String sql="select s_name as sname from stu where s_name=:sname"; SqlParameterSource ps=new BeanPropertySqlParameterSource(stu); return (String)namedjdbctemp.queryForObject(sql, ps, String.class); } public void updStu(Stu stu) { String sql="update stu set s_name=:sname,s_sex=:ssex,s_brith=:sbrith where s_id=:sid"; SqlParameterSource ps=new BeanPropertySqlParameterSource(stu); namedjdbctemp.update(sql, ps); } }
【转载】http://zmx.iteye.com/blog/373736
发表评论
-
Spring MVC 3.1新特性 生产者、消费者请求限定
2015-06-15 07:42 667参考地址: http://www.iteye.com/to ... -
CSRF TOKEN
2015-02-14 18:02 1108package com.uncle5.pubrub.web.c ... -
Spring MVC Controller单例陷阱
2014-06-27 08:51 643Spring MVC Controller默认是 ... -
[Spring] Hessian权限认证,加密前面
2014-03-06 09:52 1571Hessian的一些基本简介已经在上一节已经全部介绍了,上一节 ... -
FieldRetrievingFactoryBean 和 MethodInvokingFactoryBean
2014-01-09 18:36 982spring提供了filed的值注入和method的返回值注入 ... -
Spring中ApplicationContext的事件机制(二 内定事件)
2014-01-09 11:08 12284在Spring中已经定义了五个标准事件,分别介绍如下: 1) ... -
当spring 容器初始化完成后执行某个方法 .
2014-01-08 17:40 1398在某些应用中,我们希望,当spring 容器将所有的bea ... -
spring学习之springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序
2013-09-12 10:43 1168spring mvc处理方法支持如下的返回方式:ModelA ... -
JSR-303
2013-09-12 00:22 892JSR-303 是JAVA EE 6 中的一项子规范,叫做Be ... -
EHCACHE分布式缓存
2013-09-06 17:26 1272从1.2版本开始,Ehcache可 ... -
springMVC+freemarker整合
2013-09-06 16:39 1383springMVC整合大家都比较熟悉了吧主要有以下几个步骤: ... -
Spring MVC 学习笔记 Viewresol和View
2013-09-06 15:34 893Spring MVC使用ViewResolver来根据cont ... -
Spring的PropertyPlaceholderConfigurer应用
2013-09-06 15:04 3171Spring 利用PropertyPlaceholderCon ... -
SpringSecurity3_Logout
2013-08-22 16:07 2540Logout¶•退出登录的链接 <a href=&quo ... -
spring的default-lazy-init参数 .
2013-04-23 20:08 950spring在启动的时候,会默认加载会默认加载整个对象实例图, ... -
Spring MVC 如何防止XSS、SQL注入攻击
2013-04-16 15:40 1631在Web项目中,通常需要处理XSS,SQL注入攻击,解决这个问 ... -
Spring JMS
2013-01-08 10:48 918http://blog.csdn.net/shiqiang12 ... -
给spring jdbctemplate加上一层“绮丽外衣”-动态SQL&&SQL语句以文件存放
2013-01-07 16:00 3272给spring jdbctemplate加上一层“华丽外衣”- ... -
cron表达式(quartz中时间表达式)
2012-12-20 15:54 909http://sosuny.iteye.com/blog/46 ... -
spring 3中新增的@value注解
2012-11-26 22:31 3351在spring 3.0中,可以通过使用@value,对一些如x ...
相关推荐
我的使用Spring的NamedParameterJdbcTemplate完成DAO操作实例 博文链接:https://zmx.iteye.com/blog/373736
12.2.4. 不使用回调的基于Spring的DAO实现 12.2.5. 基于Hibernate3的原生API实现DAO 12.2.6. 编程式的事务划分 12.2.7. 声明式的事务划分 12.2.8. 事务管理策略 12.2.9. 容器资源 vs 本地资源 12.2.10. 在应用...
12.2.4. 不使用回调的基于Spring的DAO实现 12.2.5. 基于Hibernate3的原生API实现DAO 12.2.6. 编程式的事务划分 12.2.7. 声明式的事务划分 12.2.8. 事务管理策略 12.2.9. 容器资源 vs 本地资源 12.2.10. 在应用...
12.2.4. 不使用回调的基于Spring的DAO实现 12.2.5. 基于Hibernate3的原生API实现DAO 12.2.6. 编程式的事务划分 12.2.7. 声明式的事务划分 12.2.8. 事务管理策略 12.2.9. 容器资源 vs 本地资源 12.2.10. 在应用服务器...
12.2.4. 不使用回调的基于Spring的DAO实现 12.2.5. 基于Hibernate3的原生API实现DAO 12.2.6. 编程式的事务划分 12.2.7. 声明式的事务划分 12.2.8. 事务管理策略 12.2.9. 容器资源 vs 本地资源 12.2.10. 在应用...
12.2.4. 不使用回调的基于Spring的DAO实现 12.2.5. 基于Hibernate3的原生API实现DAO 12.2.6. 编程式的事务划分 12.2.7. 声明式的事务划分 12.2.8. 事务管理策略 12.2.9. 容器资源 vs 本地资源 12.2.10. 在应用...
3. New Features and Enhancements in Spring Framework 4.0 ............................................ 17 3.1. Improved Getting Started Experience .........................................................
3. New Features and Enhancements in Spring Framework 4.0 ............................................ 17 3.1. Improved Getting Started Experience .........................................................
经过历时一年的重大调整改版而成的,本书延续了上一版本追求深度,注重原理,不停留在技术表面的写作风格,力求使读者在熟练使用Spring的各项功能的同时,还能透彻理解Spring的内部实现,真正做到知其然知其所以然。...
经过历时一年的重大调整改版而成的,本书延续了上一版本追求深度,注重原理,不停留在技术表面的写作风格,力求使读者在熟练使用Spring的各项功能的同时,还能透彻理解Spring的内部实现,真正做到知其然知其所以然。...
package com.flong.commons.persistence.dao.impl; import java.util.ArrayList; import java.util.List; import java.util.Map; import org.apache.commons.collections.CollectionUtils; import org.apache.log4...
提供对 spring NamedParameterJdbcTemplate、Hibernate、Mybatis 的支持 在 ParameterMapper(包括 map 和 java bean)中提供包装的 http 请求参数(自 2.0.0 起) 为http请求提供service/dao的异步调用 提供页面/...