Spring
MySQL数据库建立
create table one_user(user_id integer primary key auto_increment,username
varchar(20),credits int,pwd varchar(25),last_login_time datetime,last_login_ip varchar(32));
create table one_user_logs(logs_id int(11) primary key auto_increment,user_id int(11),login_time datetime,login_ip varchar(32));
Spring 对JDBC封装
JDBC操作数据库的过程
1.加载驱动
2.建立数据库连接
3.预处理SQL
4.执行SQL
5.执行完毕后,关闭数据库连接
Spring 对 JDBC 进行了一个封装
封装之后的好处:
对外提供了统一的数据库操作接口
减少了固定的操作过程(固定过程已经写好)
异常已经帮2我们处理(程序员可以自己决定是否处理)
JdbcTemplate
JdbcTemplate主要提供以下五类方法:
execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句;
update方法及batchUpdate方法:update方法用于执行新增、修改、删除等语句;batchUpdate方法用于执行批处理相关语句;
query方法及queryForXXX方法:用于执行查询相关语句;
call方法:用于执行存储过程、函数相关语句。
Spring web项目
http://v.qq.com/x/cover/taundj15qd6wtvy/b1403nlbbv9.html
com.spring.dao(数据访问层的接口)
com.spring.dao.impl(dao接口的实现类)
com.spring.service(服务层的接口包)
com.spring.service.impl(服务层接口的实现类)
junit.com.spring.service(采用JUnit对service层的功能进行测试)
使用Spring封装的JDBC 操作数据库
1.在spring 配置文件中配置连接数据库的信息,生成一个 DataSource
2.创建一个 JdbcTemplage 模板 bean
3.在dao 中声明一个 JdbcTemplate 对象,并且采用注入的方式注入存在的 JdbcTemplate 对象
缺少Bean异常
No qualifying bean of type 'com.spring.dao.UserDAO' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}