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);
}
}
分享到:
相关推荐
NULL 博文链接:https://jiaozhiguang-126-com.iteye.com/blog/1673077
spring mvc+jdbctemplate非注解例子包含aop 连接池等.使用的jar包需要spring2.5以上
NULL 博文链接:https://rayfuxk.iteye.com/blog/2286519
才看了《spring 3.x》第一章内容,写的一个例子;感觉写得挺经典的。 于是骄傲地分享出来。 除了隐藏jdbc.properties里配置;其余都无保留的分享出来了。这里其实一个关于分库分表的配置文件。 使用技术细节:...
这个本人经常精心调试出来的示例,import 进来就可以使用,例子简单,附有数据库脚本 Struts2+Spring+EasyUI+JDBCTemplate学习源码
JdbcTemplate主要提供以下五类方法;JdbcTemplate类支持的回调类;并附例子
这是一个SpringMvc, JDBC Template的例子,希望对你有用
springMVC+springJDBCTemplate实现的一个添加数据的例子
Sping封装的JDBC应用小例子 Sping封装的JDBC应用小例子
使用spring jdbc template简化jdbc数据库操作实例代码,简化操作,包括详细测试例子。
11.4.1. 使用JdbcTemplate进行批量操作 11.4.2. 使用SimpleJdbcTemplate进行批量操作 11.5. 通过使用SimpleJdbc类简化JDBC操作 11.5.1. 使用SimpleJdbcInsert插入数据 11.5.2. 使用SimpleJdbcInsert来获取自动...
Struts+spring jdbctemplate写的一个登陆的例子,
spring4.0的jdbctemplate与springmvc全注解的整合登陆例子.里面已经包括需要的jar包.使用的是j2ee6如果没有请升级你的eclipse或myeclipse
struts2.3.4+spring3.1.1+jdbcTemplate为了学习而搭建的小例子,里面用到了spring3.1原生的Cache,日志暂时没加入,整个例子全部使用注解
* 包括jsp,servlet,html,javascript,css等,以及springmvc+jdbcTemplate和 struts2+hibernate+spring, struts2+ibatis+spring 实现的登陆,CRUD,jfreechart图表显示等例子,用来演示两个mvc框架的基本使用,...
使用JdbcTemplate操作数据库 Spring的JdbcTemplate是自动配置的,你可以直接使用@Autowired或构造函数(推荐)来注入到你自己的bean中来使用。...下面就来一起完成一个增删改查的例子: 准备数据库
编译器IDEA,运用 spring整合jdbc实现增删改查的一个例子。其中运用了JdbcTemplate对象,涉及数据库的相关操作
简单的ppt和例子。1、轻松实现软件各层之间的解耦:利用依赖注入技术,降低组件之间的耦合度。 2、轻松实现如权限拦截、运行期监控等功能:利用Spring提供了AOP技术。 3、 提供单例模式支持,开发人员不再需要自己...
异常通知处理例子: 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...
- chapter3-2-3:[多数据源配置(一):JdbcTemplate](http://blog.didispace.com/springbootmultidatasource/) - chapter3-2-4:[多数据源配置(二):Spring-data-jpa]...