1.导入Spring和c3p0的jar包

2.配置beans.xml文件

<?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:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd"> <!-- 配置链接池 -->
<bean class="com.mchange.v2.c3p0.ComboPooledDataSource" id="c">
<property name="driverClass" value="com.mysql.jdbc.Driver"></property>
<property name="jdbcUrl" value="jdbc:mysql://127.0.0.1:3306/mydb?characterEncoding=GBK"></property>
<property name="user" value="root"></property>
<property name="password" value=""></property> <!--依次为数据库连接池最大连接数、最小连接数、初始连接数-->
<property name="maxPoolSize" value="15"></property>
<property name="minPoolSize" value="5"></property>
<property name="initialPoolSize" value="5"></property> </bean> </beans>

3.编写代码

实体类Nation

package com.itnba.maya.test;

public class Nation {
private String code;
private String name;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Nation [code=" + code + ", name=" + name + "]";
} }

main函数

修改:

package com.itnba.maya.test;

import java.sql.Connection;import javax.sql.DataSource;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.JdbcTemplate;import com.mchange.v2.c3p0.ComboPooledDataSource; public class Test {
public static void main(String[] args) throws Exception{
ApplicationContext context=new ClassPathXmlApplicationContext("beans.xml");
DataSource ds= (DataSource) context.getBean("c"); JdbcTemplate j =new JdbcTemplate();//造一个工具
j.setDataSource(ds);
String sql="update nation set name=? where code=?";
j.update(sql, "维吾尔族", "n001");
  }
}

单个数据更新

package com.itnba.maya.test;

import java.sql.Connection;
import javax.sql.DataSource;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.JdbcTemplate; import com.mchange.v2.c3p0.ComboPooledDataSource; public class Test {
public static void main(String[] args) throws Exception{
ApplicationContext context=new ClassPathXmlApplicationContext("beans.xml");
DataSource ds= (DataSource) context.getBean("c"); JdbcTemplate j =new JdbcTemplate();//造一个工具
j.setDataSource(ds); String sql = "insert into nation values(?,?)";
j.update(sql, "n006","侗族");
  }
}

多个数据更新

package com.itnba.maya.test;

import java.sql.Connection;
import java.util.*;
import javax.sql.DataSource;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.JdbcTemplate; import com.mchange.v2.c3p0.ComboPooledDataSource; public class Test {
public static void main(String[] args) throws Exception{
ApplicationContext context=new ClassPathXmlApplicationContext("beans.xml");
DataSource ds= (DataSource) context.getBean("c"); JdbcTemplate j =new JdbcTemplate();//造一个工具
j.setDataSource(ds); String sql = "insert into nation values(?,?)";
//批量更,用里面是object[]的集合
List<Object[]> batchArgs=new ArrayList<Object[]>();
batchArgs.add(new Object[]{"n007","蒙古族"});
batchArgs.add(new Object[]{"n008","朝鲜族"});
j.batchUpdate(sql, batchArgs);
  }
}

查询单行:

package com.itnba.maya.test;

import java.sql.Connection;
import javax.sql.DataSource; import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper; import com.mchange.v2.c3p0.ComboPooledDataSource; public class Test {
public static void main(String[] args) throws Exception{
ApplicationContext context=new ClassPathXmlApplicationContext("beans.xml");
DataSource ds= (DataSource) context.getBean("c"); JdbcTemplate j =new JdbcTemplate();//造一个工具
j.setDataSource(ds);
//查询单个
String sql="select * from nation where code=?";
RowMapper<Nation> rowMapper= new BeanPropertyRowMapper<Nation>(Nation.class);
Nation nation = j.queryForObject(sql, rowMapper,"n001");
System.out.println(nation);
}
}

查询多行:

package com.itnba.maya.test;

import java.sql.Connection;
import java.util.List;
import javax.sql.DataSource;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper; import com.mchange.v2.c3p0.ComboPooledDataSource; public class Test {
public static void main(String[] args) throws Exception{
ApplicationContext context=new ClassPathXmlApplicationContext("beans.xml");
DataSource ds= (DataSource) context.getBean("c"); JdbcTemplate j =new JdbcTemplate();//造一个工具
j.setDataSource(ds);
//查询多行
String sql="select * from nation";
RowMapper<Nation> rowMapper= new BeanPropertyRowMapper<Nation>(Nation.class);
List<Nation> list=j.query(sql, rowMapper);
for(Nation a:list){
System.out.println(a);
}
}
}

查询统计函数

package com.itnba.maya.test;
import java.sql.Connection;
import javax.sql.DataSource;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;import org.springframework.jdbc.core.JdbcTemplate;import com.mchange.v2.c3p0.ComboPooledDataSource; public class Test {
public static void main(String[] args) throws Exception{
ApplicationContext context=new ClassPathXmlApplicationContext("beans.xml");
DataSource ds= (DataSource) context.getBean("c"); JdbcTemplate j =new JdbcTemplate();//造一个工具
j.setDataSource(ds);
//查询统计函数
String sql="select count(*) from nation ";
long l=j.queryForObject(sql, Long.class);
System.out.println(l);
}
}

不用?用 : 的方式查询

package com.itnba.maya.test;

import java.sql.Connection;
import java.util.*; import javax.sql.DataSource; import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; import com.mchange.v2.c3p0.ComboPooledDataSource; public class Test {
public static void main(String[] args) throws Exception{
ApplicationContext context=new ClassPathXmlApplicationContext("beans.xml");
DataSource ds= (DataSource) context.getBean("c"); NamedParameterJdbcTemplate j=new NamedParameterJdbcTemplate(ds);
String sql="select * from nation where code=:a";
Map<String, String> paramSource = new HashMap<String,String>();
paramSource.put("a", "n001");
RowMapper<Nation> rowMapper= new BeanPropertyRowMapper<Nation>(Nation.class);
Nation nation = j.queryForObject(sql, paramSource, rowMapper);
System.out.println(nation);
} }

用Spring和c3p0工具简单的实现增删改查的更多相关文章

  1. 最简单的mybatis增删改查样例

    最简单的mybatis增删改查样例 Book.java package com.bookstore.app; import java.io.Serializable; public class Boo ...

  2. salesforce 零基础开发入门学习(六)简单的数据增删改查页面的构建

    VisualForce封装了很多的标签用来进行页面设计,本篇主要讲述简单的页面增删改查.使用的内容和设计到前台页面使用的标签相对简单,如果需要深入了解VF相关知识以及标签, 可以通过以下链接查看或下载 ...

  3. 【Mybatis】简单的mybatis增删改查模板

    简单的mybatis增删改查模板: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE map ...

  4. 【转载】salesforce 零基础开发入门学习(六)简单的数据增删改查页面的构建

    salesforce 零基础开发入门学习(六)简单的数据增删改查页面的构建   VisualForce封装了很多的标签用来进行页面设计,本篇主要讲述简单的页面增删改查.使用的内容和设计到前台页面使用的 ...

  5. SQL简单语句(增删改查)

    简单的SQL语句增删改查操作 说明: 在mysql里面亲测结果正确    用到的表(学生表:studnets) 1.创建一个学生表,(学号,姓名,性别,家庭住址) mysql> create t ...

  6. KbmMemTable的简单应用(增删改查示例)

    //kbmMemTable unit Unit1;   interface   uses   Windows, Messages, SysUtils, Variants, Classes, Graph ...

  7. Asp.net简单三层+Sqllite 增删改查

    新建项目à新建一个空白解决方案 在Model新建一个实体类 using System; using System.Collections.Generic; using System.Linq; usi ...

  8. JDBC工具类 访问数据库 增删改查CRUD的通用方法

    1 package com.zmh.util; 2 3 import java.sql.*; 4 import java.util.ArrayList; 5 import java.util.Hash ...

  9. ASP.net+SQL server2008简单的数据库增删改查 VS2012

    工具:VS2012 数据库:SQL server 简单说明:根据老师上课给的代码,进行了简单的改正适用于VS2012环境,包括注册.登录.查询.修改.删除功能,多数参考了网上的代码 百度云源代码连接t ...

随机推荐

  1. 10款最佳SQL Server服务器监控工具

    转自:http://server.51cto.com/sSecurity-587355.htm 推荐 | 10款最佳SQL Server服务器监控工具 服务器是网络中最重要的资源之一,SQL Serv ...

  2. __BEGIN_DECLS __END_DECLS

    http://hi.baidu.com/xiaoxiaolq/blog/item/1edc2af30dd4915a342acc5e.html对__BEGIN_DECLS 和 __END_DECLS 的 ...

  3. XMPP环境搭建 (mac环境下 安装自己独立的mysql与服务器(openfire),实现即时聊天功能)

    1简单概览 [一]XMPP简介 http://xmpp.org 即时通讯技术 IM - Instant Messaging ⽀支持⽤用户在线实时交谈.交谈双⽅方都需要⼀一个聊天窗⼝口,其中⼀一个⽤用户 ...

  4. day11 函数和命名空间

    # def my_sum(*args):# sum_2=0# for i in args:# sum_2+=i# return sum_2### ret=my_sum(1,2,3,4)# print( ...

  5. 08 Spring框架 AOP (一)

    首先我们先来介绍一下AOP: AOP(Aspect Orient Programming),面向切面编程,是面向对象编程OOP的一种补充.面向对象编程是从静态角度考虑程序的结构,面向切面编程是从动态的 ...

  6. 分组函数NTILE函数

    这个分组函数 并不是 group by的分组.

  7. 【leetcode刷题笔记】Majority Element

    Given an array of size n, find the majority element. The majority element is the element that appear ...

  8. Windows10安装mysql数据库

    安装以及配置,参考下面链接 https://www.cnblogs.com/qjoanven/p/7898006.html 碰到的问题: 1. 安装的时候出现 mysql Install/Remove ...

  9. python的正则表达式捕获组命名问题

  10. 举例讲解Linux中tcpdump工具的应用

    先来看一个比较基本的用法: tcpdump -i eth0 其中,eth0为参数值,表示需要抓包的网口,这是个必需参数哦. tcpdump的具体参数及意义: -i:指定tcpdump监听的网络接口 - ...