`
默翁1
  • 浏览: 27145 次
社区版块
存档分类
最新评论

jdbcTemplcate 操作数据库的几种方式

 
阅读更多

一.增加:

@Test
	public void handle5() throws SQLException{
		final String sql="insert into mw_person(name,age)values(?,?)";//常量的效率要远远高于变量
		jdbcTemplate.update(new PreparedStatementCreator() {
			
			@Override
			public PreparedStatement createPreparedStatement(Connection con)
					throws SQLException {
				PreparedStatement statement=con.prepareStatement(sql);
				statement.setString(1, "zhansaj");
				statement.setInt(2, 23);
				return statement;
			}
		});
	}

 

@Test
	public void handle6() throws SQLException{
		final String sql="insert into mw_person(name,age)values(?,?)";//常量的效率要远远高于变量
		jdbcTemplate.update(sql,"hsdj",34);
			
	}
 
@Test
	public void handle7() throws SQLException{
		final String sql="insert into mw_person(name,age)values(?,?)";//常量的效率要远远高于变量
		jdbcTemplate.update(sql,new PreparedStatementSetter() {
			@Override
			public void setValues(PreparedStatement ps) throws SQLException {
				//preparedStatementSetter 就是专门给sql语句(insert,update赋值)
				ps.setString(1, "默翁");
				ps.setInt(2, 72);
			}
		});	
	}
 
@Test
	public void handle8() throws SQLException{
		final String sql="insert into mw_person(name,age)values(?,?)";//常量的效率要远远高于变量
		jdbcTemplate.update(sql,new Object[]{"mark",23},new int[]{Types.VARCHAR,Types.INTEGER});
	}
 
	@Test
	public void handle9() throws SQLException{
		//在新增的时候有时需要返回主键
		final String sql="insert into mw_person(name,age)values(?,?)";//常量的效率要远远高于变量
		KeyHolder keyHolder=new GeneratedKeyHolder();
		jdbcTemplate.update(new PreparedStatementCreator() {
			
			@Override
			public PreparedStatement createPreparedStatement(Connection con)
					throws SQLException {
				PreparedStatement statement=con.prepareStatement(sql);
				statement.setString(1,"hjhsdj");
				statement.setInt(2, 14);
				return statement;
			}
		},keyHolder);
		int key=keyHolder.getKey().intValue();
		System.out.println("我添加的数据返回的主键是:"+key);
	}
 二.修改;

 

 

@Test
	public void handle10() throws SQLException{
		final String sql="update mw_person set name=?,age=? where name=?";//常量的效率要远远高于变量
		jdbcTemplate.update(sql,"xiaoer",10,"默翁");
	}
 三.删除

 

 

	@Test
	public void handle11() throws SQLException{
		final String sql="delete from mw_person where name=?";//常量的效率要远远高于变量
		jdbcTemplate.update(sql,"xiaoer");
	}
 四.查询

 

@Test
	public void handle12() throws SQLException{
		final String sql="select * from mw_person where name=?";//常量的效率要远远高于变量
		jdbcTemplate.query(new PreparedStatementCreator() {
			
			@Override
			public PreparedStatement createPreparedStatement(Connection con)
					throws SQLException {
				PreparedStatement statement=con.prepareStatement(sql);
				statement.setString(1, "修改");
				return statement;
			}
		},new RowCallbackHandler() {
			@Override
			public void processRow(ResultSet rs) throws SQLException {
				System.out.println(rs.getString("name")+"========"+rs.getInt("age"));
			}
		});
	}

 

@Test
	public void handle13() throws SQLException{
		final String sql="select * from mw_person";//常量的效率要远远高于变量
		jdbcTemplate.query(sql,new RowCallbackHandler() {
			@Override
			public void processRow(ResultSet rs) throws SQLException {
				System.out.println(rs.getString("name")+"========"+rs.getInt("age"));
			}
		});
	}

 

@Test
	public void handle14() throws SQLException{
		final String sql="select * from mw_person where name=?";//常量的效率要远远高于变量
		jdbcTemplate.query(sql,new Object[]{"修改"},new RowCallbackHandler() {
			@Override
			public void processRow(ResultSet rs) throws SQLException {
				System.out.println(rs.getString("name")+"========"+rs.getInt("age"));
			}
		});
	}

 

@Test
	public void handle15() throws SQLException{
		final String sql="select * from mw_person where name=?";//常量的效率要远远高于变量
		jdbcTemplate.query(sql,new PreparedStatementSetter() {
			@Override
			public void setValues(PreparedStatement ps) throws SQLException {
				ps.setString(1, "修改");
			}
		},new RowCallbackHandler() {
			@Override
			public void processRow(ResultSet rs) throws SQLException {
				System.out.println(rs.getString("name")+"========"+rs.getInt("age"));
			}
		});
	}

 

@Test
	public void handle16() throws SQLException{
		final String sql="select * from mw_person where name=?";//常量的效率要远远高于变量
		jdbcTemplate.query(sql,new RowCallbackHandler() {
			@Override
			public void processRow(ResultSet rs) throws SQLException {
				System.out.println(rs.getString("name")+"========"+rs.getInt("age"));
			}
		},"修改");
	}

 

分享到:
评论

相关推荐

    基于net的超市管理系统源代码(完整前后端+sqlserver+说明文档+LW).zip

    功能说明: 环境说明: 开发软件:VS 2017 (版本2017以上即可,不能低于2017) 数据库:SqlServer2008r2(数据库版本无限制,都可以导入) 开发模式:mvc。。。

    LABVIEW程序实例-公式节点.zip

    labview程序代码参考学习使用,希望对你有所帮助。

    大米商城开源版damishop(适合外贸)

    大米外贸商城系统 简称damishop 完全开源版,只需做一种语言一键开启全球133中语言自动翻译功能,价格实现自动汇率转换,集成微信支付宝 paypal以及国外主流支付方式,自带文章博客系统。 软件架构 基于MVC+语言包模式,增加控制台,API导入产品方便对接其他系统(带json示例数据)。 使用要求 PHP7.4+ MYSQL5.6+ REDIS(可选) 安装方法 composer install 打开安装向导安装 http://您的域名/install 特色 1、缓存层增加时间与批量like删除 2、API产品导入方便对接其他系统 3、增加控制台命令行,命令行生成语言翻译包 4、后台一键开启自动翻译模式,支持全球133中语言,由于google代理翻译需要收费,这个功能需要付费。 5、可选购物车与ajax修改购物车产品 6、一键结算checkout 7、增加网站前台自定义路由 方便seo 更新日志 v3.9.7 集成鱼码支付接口,方便个人站长即使收款到账使用 v3.9.3 更新内容 1:增加ueditor与旧编辑器切换 2:增加可视化布局插

    LABVIEW程序实例-通过全局变量接收数据.zip

    labview程序代码参考学习使用,希望对你有所帮助。

    LABVIEW程序实例-日历控件.zip

    labview程序代码参考学习使用,希望对你有所帮助。

    毕设和企业适用springboot人工智能客服系统类及旅游规划平台源码+论文+视频.zip

    毕设和企业适用springboot人工智能客服系统类及旅游规划平台源码+论文+视频

Global site tag (gtag.js) - Google Analytics