JDBC基础学习笔记_05_jdbc的程序优化_Dao
来源:互联网 发布:java poi 下载 编辑:程序博客网 时间:2024/05/29 17:45
一.什么是Dao?
dao是数据访问对象,用来封装对数据库的访问,用它将数据库中的表转换为DTO类,就是转化为我们上一节封装的用户类和地址类。
二.建一个接口:负责插入功能,更新功能和删除功能
package com.langzimingjian.dao;import java.sql.Connection;import com.langzimingjian.entity.User;public interface UserDao {/** * 保存用戶信息的save方法 */public void save(Connection connection, User user) throws Exception;public void update(Connection connection,long id, User user)throws Exception;public void delete(Connection connection,User user) throws Exception;}
三建个类实现接口:
<pre name="code" class="java">package com.langzimingjian.dao.impi;import java.sql.Connection;import java.sql.PreparedStatement;import com.langzimingjian.dao.UserDao;import com.langzimingjian.entity.User;public class UserDaoimpi implements UserDao {/** * 保存用戶信息 */public void save(Connection connection, User user) throws Exception {// TODO Auto-generated method stubPreparedStatement ps = connection.prepareStatement("insert into tbl_user(name,password,email)values(?,?,?)");ps.setString(1, user.getName());ps.setString(2, user.getPassword());ps.setString(3, user.getEmail());ps.execute();}/** * 根據指定的id更新用戶信息 */public void update(Connection connection, long id, User user)throws Exception {// TODO Auto-generated method stubString updateSql = "update tbl_user set name=?,password=?,email=?where id=?";PreparedStatement ps = connection.prepareStatement(updateSql);ps.setString(1, user.getName());ps.setString(2, user.getPassword());ps.setString(3, user.getEmail());ps.setLong(4, id);ps.execute();}/** * 刪除指定的用戶信息 */public void delete(Connection connection, User user) throws Exception {// TODO Auto-generated method stubPreparedStatement ps = connection.prepareStatement("delete form tbl_user where id = ?");ps.setLong(1, user.getId());ps.execute();}}
新建一个测试类:
package com.langzimingjian.test;import java.sql.Connection;import com.langzimingjian.dao.UserDao;import com.langzimingjian.dao.impi.UserDaoimpi;import com.langzimingjian.entity.User;import com.langzimingjian.utils.ConnectionFactory;public class UserDaoTest {public static void main(String[] args) {Connection connection = null;try {connection = ConnectionFactory.getInstance().makeConnection();connection.setAutoCommit(false);UserDao userDao = new UserDaoimpi();User katelin = new User();katelin.setName("katelin");katelin.setPassword("123456789");katelin.setEmail("katelin@qq.com");userDao.save(connection, katelin);connection.commit();} catch (Exception e) {// TODO: handle exceptiontry {connection.rollback();if(connection!= null){connection.close();}} catch (Exception e2) {// TODO: handle exception}}}}
测试结果:
成功。看完之后感觉套路很深,明天从新看下原码,看下mvc。
0 0
- JDBC基础学习笔记_05_jdbc的程序优化_Dao
- JDBC基础学习笔记_05_jdbc的程序优化_DTC相关
- JDBC基础学习笔记_05_jdbc的程序优化_单立Connection并编写调用配置文件
- JDBC基础学习笔记_02JDBC编程的mysql数据准备并编写程序
- JDBC学习笔记-----jdbc性能优化
- JDBC学习笔记-----jdbc性能优化
- JDBC学习笔记-----jdbc性能优化
- JDBC学习笔记-----jdbc性能优化
- JDBC学习笔记-----jdbc性能优化
- jdbc学习笔记-----jdbc性能优化
- JDBC基础学习笔记_01JDBC基础简介
- JDBC学习笔记——JDBC性能优化
- JDBC学习笔记——JDBC性能优化
- java学习笔记:JDBC基础——JDBC创建的六个步骤
- 【JDBC】day04_事务_批处理_自动主键_DAO
- JDBC基础学习笔记_04_jdbc事务处理
- JDBC学习笔记 -- day01 入门程序
- java的JDBC学习笔记
- HDU 2609 How many (最小表示法)
- #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL gcc编译不能通过
- 杭电5138
- hibernate中session的三种状态
- UML概述
- JDBC基础学习笔记_05_jdbc的程序优化_Dao
- wordspace is use or cannot be created,choose a dfifferent one
- Leap Motion 用EmguCV 显示图像并对齐手指
- shell 升级版 实践出真知
- Application,Session和Cookies的区别
- Android 退出应用程序,所有活动,活动的管理
- XML之 ------ 基础知识详解
- java面试题和答案
- Java基础面试题笔记(1)