spring jdbc 常用api

来源:互联网 发布:淘宝客优惠券哪里来的 编辑:程序博客网 时间:2024/06/10 01:28

一、新建java project,搭建spring 环境

    添加所需jar包:(1)spring-framework-3.1.1.RELEASE\dist目录下的所有jar

                                (2)commons-logging.jar,log4j.jar

                                (3)数据库mysql

                                (4)datasource,例如c3p0

     applicationContext.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:context="http://www.springframework.org/schema/context"xmlns:aop="http://www.springframework.org/schema/aop"    xmlns:tx="http://www.springframework.org/schema/tx"xsi:schemaLocation="http://www.springframework.org/schema/beans           http://www.springframework.org/schema/beans/spring-beans-3.0.xsd           http://www.springframework.org/schema/context           http://www.springframework.org/schema/context/spring-context-3.0.xsd           http://www.springframework.org/schema/tx        http://www.springframework.org/schema/tx/spring-tx-3.0.xsd       http://www.springframework.org/schema/aop            http://www.springframework.org/schema/aop/spring-aop-3.0.xsd"><context:property-placeholder location="classpath:jdbc.properties" /><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"destroy-method="close">                                             <!--数据源配置--><property name="driverClass" value="${jdbc.driverClassName}" /><property name="jdbcUrl" value="${jdbc.url}" /><property name="user" value="${jdbc.username}" /><property name="password" value="${jdbc.password}" /></bean><bean id="jdbcTemplate" class=" org.springframework.jdbc.core.JdbcTemplate">     <!--jdbcTemplate配置--><property name="dataSource" ref="dataSource" /></bean><bean id="userDao" class="com.lqh.dao.UserDao">                               <!--Dao配置--><property name="jdbcTemplate" ref="jdbcTemplate" /></bean></beans>

    jdbc.properties配置

jdbc.driverClassName=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/springJDBC?useUnicode=true&characterEncoding=UTF-8jdbc.username=rootjdbc.password=roothibernate.dialect=org.hibernate.dialect.MySQLDialecthibernate.show_sql=true

    log4j.properties配置

log4j.rootLogger=DEBUG, Consolelog4j.appender.Console=org.apache.log4j.ConsoleAppenderlog4j.appender.Console.layout=org.apache.log4j.PatternLayoutlog4j.appender.Console.layout.ConversionPattern=(%r ms) [%t] %-5p: %c#%M %x: %m%nlog4j.logger.org.springframework=ERRORlog4j.logger.com.mchange=ERROR

    实体类User代码:

package com.lqh.model;/** * @author zdkscb * */public class User {private int id;private String username;private String password;private String nickname;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String getNickname() {return nickname;}public void setNickname(String nickname) {this.nickname = nickname;}public int getId() {return id;}public void setId(int id) {this.id = id;}public User() {super();}public User(int id, String username, String password, String nickname) {super();this.id = id;this.username = username;this.password = password;this.nickname = nickname;}}

    Dao类代码:

public class UserDao {        private JdbcTemplate jdbcTemplate;    Logger logger = Logger.getLogger(this.getClass());        public JdbcTemplate getJdbcTemplate() {        return jdbcTemplate;    }    public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {        this.jdbcTemplate = jdbcTemplate;    }        //参数RowCallbackHandler用来提取ResultSet结果,每次提取一条    public List<User> findAllUsersByRowCallbackHandler() {                String sql = "select * from t_user";        logger.debug("entry findAllUsers...sql:" + sql);                final List<User> users = new ArrayList<User>();        jdbcTemplate.query(sql, new RowCallbackHandler() {                        @Override            public void processRow(ResultSet rs) throws SQLException {                User user = new User();                user.setUsername(rs.getString("username"));                user.setNickname(rs.getString("nickname"));                                users.add(user);                            }        });                logger.debug("findAllUsers success! 共" + users.size() + "条记录");        return users;    }    //Issue a single SQL update operation (such as an insert, update or delete statement) via a prepared statement, binding the given arguments.    //?占位符,使用PrepareStatement绑定参数,进行更新操作    public void save(User user) {                logger.debug("save user start! username:" + user.getUsername() + ", password:" + user.getPassword() + ", nickname:" + user.getNickname());        String sql = "insert into t_user values(?, ?, ?, ?)";        Object[] params = new Object[]{null, user.getUsername(), user.getPassword(), user.getNickname()};        jdbcTemplate.update(sql, params);        logger.debug("save user success!");    }    }



原创粉丝点击