`
lichaozhangobj
  • 浏览: 98557 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jdbcTemplate 例子

    博客分类:
  • jdbc
阅读更多
public class JdbcTemplateTest {

	static JdbcTemplate jdbc = new JdbcTemplate(JdbcUtils.getDataSource());

	public static void main(String[] args) {
	}

	static int addUser(final User user) {
		
		//更灵活的使用connection
		jdbc.execute(new ConnectionCallback() {

			public Object doInConnection(Connection con) throws SQLException,
					DataAccessException {
				String sql = "insert into user(name,birthday, money) values (?,?,?) ";
				PreparedStatement ps = con.prepareStatement(sql,
						Statement.RETURN_GENERATED_KEYS);
				ps.setString(1, user.getName());
				ps.setDate(2, new java.sql.Date(user.getBirthday().getTime()));
				ps.setFloat(3, user.getMoney());
				ps.executeUpdate();

				ResultSet rs = ps.getGeneratedKeys();
				if (rs.next())
					user.setId(rs.getInt(1));
				return null;
			}
		});
		return 0;
	}

	static Map getData(int id) {
		String sql = "select id as userId, name, money, birthday  from user where id="
				+ id;
		return jdbc.queryForMap(sql);
	}

	static String getUserName(int id) {
		String sql = "select name from user where id=" + id;
		Object name = jdbc.queryForObject(sql, String.class);
		return (String) name;
	}

	static int getUserCount() {
		String sql = "select count(*) from user";
		return jdbc.queryForInt(sql);
	}

	static List findUsers(int id) {
		String sql = "select id, name, money, birthday  from user where id<?";
		Object[] args = new Object[] { id };
		int[] argTypes = new int[] { Types.INTEGER };
		List users = jdbc.query(sql, args, argTypes, new BeanPropertyRowMapper(
				User.class));
		return users;
	}

	static User findUser(String name) {
		String sql = "select id, name, money, birthday  from user where name=?";
		Object[] args = new Object[] { name };
		Object user = jdbc.queryForObject(sql, args, new BeanPropertyRowMapper(
				User.class));
		return (User) user;
	}

	static User findUser1(String name) {
		String sql = "select id, name, money, birthday  from user where name=?";
		Object[] args = new Object[] { name };
		Object user = jdbc.queryForObject(sql, args, new RowMapper() {

			public Object mapRow(ResultSet rs, int rowNum) throws SQLException {
				User user = new User();
				user.setId(rs.getInt("id"));
				user.setName(rs.getString("name"));
				user.setMoney(rs.getFloat("money"));
				user.setBirthday(rs.getDate("birthday"));
				return user;
			}
		});
		return (User) user;
	}
}

 

public class JdbcTemplateTest {

	public static JdbcTemplate jdbcTemplet = new JdbcTemplate(JdbcUtils
			.getDataSource());

	public static void main(String[] args) {
	}

	// 查询返回对象类型
	public static User getUser(String name) {
		String sql = "select id,name,password from user where name=?";
		Object[] args = new Object[] { name };
		Object user = jdbcTemplet.queryForObject(sql, args,
				new BeanPropertyRowMapper(User.class));
		return (User) user;
	}

	// 查询返回List类型
	@SuppressWarnings("unchecked")
	public static List<User> queryUserForList() {
		String sql = "select id,name,password from user";
		return jdbcTemplet.query(sql, new BeanPropertyRowMapper(User.class));
	}

	// 插入
	public static void insert() {
		String sql = "insert into user(name,password) values(?,?)";
		jdbcTemplet.update(sql, new Object[] { "wanger", "123456" });
	}

	// 删除
	public static void delete(int id) {
		String sql = "delete from user where id=?";
		jdbcTemplet.update(sql, new Object[] { 4 });
	}

	// 更新
	public static void update(User user) {
		String sql = "update user set name=?,password=? where id=?";
		Object[] args = new Object[] { "张三", "000000", 1 };
		int[] argTypes = new int[] { Types.VARCHAR, Types.VARCHAR,
				Types.INTEGER };
		jdbcTemplet.update(sql, args, argTypes);
	}

	// 插入日期类型
	public static void insert2() {
		String sql = "insert into date_table(time) values(?)";
		Date date = new Date();
		Object[] args = new Object[] { date };
//		int[] argTypes = new int[] { Types.TIMESTAMP };
//		jdbcTemplet.update(sql, args, argTypes);
		jdbcTemplet.update(sql, args);
	}
}

 

分享到:
评论
3 楼 LLeye 2013-07-26  
能不能发份完整的代码给我 865807345@qq.com
2 楼 Kim_T 2011-07-06  
574329244@qq.com

谢谢.
1 楼 Kim_T 2011-07-06  
能否提供完整代码,谢谢.

相关推荐

    Spring JdbcTemplate例子

    NULL 博文链接:https://jiaozhiguang-126-com.iteye.com/blog/1673077

    spring mvc+jdbctemplate非注解例子

    spring mvc+jdbctemplate非注解例子包含aop 连接池等.使用的jar包需要spring2.5以上

    Spring JdbcTemplate.batchUpdate 例子

    NULL 博文链接:https://rayfuxk.iteye.com/blog/2286519

    基于spring freemarker jdbctemplate jquery的一个完整的项目例子

    才看了《spring 3.x》第一章内容,写的一个例子;感觉写得挺经典的。 于是骄傲地分享出来。 除了隐藏jdbc.properties里配置;其余都无保留的分享出来了。这里其实一个关于分库分表的配置文件。 使用技术细节:...

    Struts2+Spring+EasyUI+JDBCTemplate学习源码

    这个本人经常精心调试出来的示例,import 进来就可以使用,例子简单,附有数据库脚本 Struts2+Spring+EasyUI+JDBCTemplate学习源码

    Spring JdbcTemplate方法详解

    JdbcTemplate主要提供以下五类方法;JdbcTemplate类支持的回调类;并附例子

    SpringMvc, JDBC Template的例子

    这是一个SpringMvc, JDBC Template的例子,希望对你有用

    springMVC例子

    springMVC+springJDBCTemplate实现的一个添加数据的例子

    Sping封装的JDBC应用小例子

    Sping封装的JDBC应用小例子 Sping封装的JDBC应用小例子

    使用spring jdbc template简化jdbc数据库操作实例代码

    使用spring jdbc template简化jdbc数据库操作实例代码,简化操作,包括详细测试例子。

    Spring中文帮助文档

    11.4.1. 使用JdbcTemplate进行批量操作 11.4.2. 使用SimpleJdbcTemplate进行批量操作 11.5. 通过使用SimpleJdbc类简化JDBC操作 11.5.1. 使用SimpleJdbcInsert插入数据 11.5.2. 使用SimpleJdbcInsert来获取自动...

    struts+spring

    Struts+spring jdbctemplate写的一个登陆的例子,

    Spring4.0从入门到精通springmvcjdbctemplatedemo

    spring4.0的jdbctemplate与springmvc全注解的整合登陆例子.里面已经包括需要的jar包.使用的是j2ee6如果没有请升级你的eclipse或myeclipse

    struts+spring+jdbc

    struts2.3.4+spring3.1.1+jdbcTemplate为了学习而搭建的小例子,里面用到了spring3.1原生的Cache,日志暂时没加入,整个例子全部使用注解

    simplejee-面向j2ee初学者的开源项目

    * 包括jsp,servlet,html,javascript,css等,以及springmvc+jdbcTemplate和 struts2+hibernate+spring, struts2+ibatis+spring 实现的登陆,CRUD,jfreechart图表显示等例子,用来演示两个mvc框架的基本使用,...

    demo后台.rar

    使用JdbcTemplate操作数据库 Spring的JdbcTemplate是自动配置的,你可以直接使用@Autowired或构造函数(推荐)来注入到你自己的bean中来使用。...下面就来一起完成一个增删改查的例子: 准备数据库

    springdbms.zip

    编译器IDEA,运用 spring整合jdbc实现增删改查的一个例子。其中运用了JdbcTemplate对象,涉及数据库的相关操作

    Spring入门

    简单的ppt和例子。1、轻松实现软件各层之间的解耦:利用依赖注入技术,降低组件之间的耦合度。 2、轻松实现如权限拦截、运行期监控等功能:利用Spring提供了AOP技术。 3、 提供单例模式支持,开发人员不再需要自己...

    spring.doc

    异常通知处理例子: 91 不用spring异常通知,另一种处理异常 96 4.2.2.2Aop注解形式(了解) 99 注解注入拓展: 103 5 Spring数据库 106 5.1 Spring+JDBC 106 5.1.1 Jdbc编程特点 106 5.1.2引入DataSource 106 5.1.3...

    spring boot 全面的样例代码

    - chapter3-2-3:[多数据源配置(一):JdbcTemplate](http://blog.didispace.com/springbootmultidatasource/) - chapter3-2-4:[多数据源配置(二):Spring-data-jpa]...

Global site tag (gtag.js) - Google Analytics