文章目录

  • MVC案例之DAO层实现
    • 操作步骤
      • 概述
      • 实际操作
    • 遇到的问题

MVC案例之DAO层实现

操作步骤

概述

  • 加入C3P0数据源

    • C3P0
    • 数据库驱动的jar包
  • 编写DAO,JdbcUtils工具类和CustomerDAO接口
  • 提供CustomerDAO接口的实现类:CustomerDAOJDBCImpl

实际操作

  • step1:
    导入包
  • step2:
    在src目录下新建c3p0-config.xml文件,并写入以下代码
<?xml version="1.0" encoding="utf-8"?>
<c3p0-config><!-- 命名的配置 --><named-config name="mvcapp"><!-- 连接数据库的4项基本参数 --><property name="driverClass">com.mysql.jdbc.Driver</property><property name="jdbcUrl">jdbc:mysql://localhost:3306/info</property><property name="user">root</property><property name="password">0025</property><!-- 如果池中数据连接不够时一次增长多少个 --><property name="acquireIncrement">5</property><!-- 初始化连接数 --><property name="initialPoolSize">10</property><!-- 最小连接数 --><property name="minPoolSize">10</property><!-- 最大连接数 --><property name="maxPoolSize">20</property><!-- JDBC的标准参数,用以控制数据源内加载的PrepareStatements数量 --><property name="maxStatements">200</property><!-- 连接池内单个连接所拥有的最大缓存statements数 --><property name="maxStatementsPerConnection">5</property></named-config>
</c3p0-config>

数据库的连接要用自己的奥

  • step3:
    编写JdbdUtils代码,并且编写测试类。
    JdbcUtils的代码
package db;import java.sql.Connection;
import java.sql.SQLException;import javax.sql.DataSource;import com.mchange.v2.c3p0.ComboPooledDataSource;/** Jdbc操作的工具类*/
public class JdbcUtils {//释放Connection连接public static void releaseConnection(Connection connecton) {}private static DataSource dataSource=null;static {dataSource =new ComboPooledDataSource("mvcapp");}/** 返回数据源的一个Connection对象*/public static Connection getConnection() throws SQLException {return dataSource.getConnection();}}

测试类

package test;import static org.junit.jupiter.api.Assertions.*;import org.junit.jupiter.api.Test;import java.sql.Connection;
import java.sql.SQLException;import db.JdbcUtils;class JdbcUtilsTest {@Testvoid testGetConnection() throws SQLException {Connection connection =JdbcUtils.getConnection();;System.out.println(connection);}}

显示连接成功

遇到的问题

  • java.lang.NoClassDefFoundError: com/mchange/v2/ser/Indirector
    解决方法:
    在工程的lib中导入mchange-commons-java-0.2.3.4.jar包,并且记得buildPath奥。
    https://blog.csdn.net/swift2010/article/details/78944306
    下载的地址如上面的链接。

MVC案例之DAO层实现相关推荐

  1. MVC案例-架构分析

    MVC案例 --没有业务层,直接由Servlet调用DAO,所以也没有事务操作.所以可以在DAO中直接获取Connection对象 --采取MVC设计模式 --使用到的技术 MVC设计模式:JSP,S ...

  2. DAO层、ENTITY层、SERVICE层、CONTROLLER层

    dao层.entity层.service层.controller层 2018年08月09日 11:02:31 一江春华终散去 阅读数:3074 版权声明:本文为博主原创文章,未经博主允许不得转载. h ...

  3. dao层、service层和controller层

    MVC三层架构 dao层 service层 controller层 view层 它们之间的关系: dao层 dao层主要做数据持久层的工作, 负责与数据库进行联络的一些任务都封装在此 dao层的设计 ...

  4. MVC 1—— Dao层介绍

    MVC开发模式 一.MVC开发模式优点 1.提高JavaWeb开发的代码复用性,避免了重复性开发. 2.有效帮助开发人员实现业务开发中[事务管理] 二.MVC开发角色组成 C:controller,控 ...

  5. EduSoho框架DAO层缓存机制

    EduSoho框架从2013年发布首个开源版本以来,收到了几万条用户真实需求及优化建议.Edusoho主产品历时5年多的不间断的迭代,发布了380多个版本,目前已得到了国内多家互联网巨头企业及大型培训 ...

  6. java domain层_java框架中的controller层、dao层、domain层、service层、view层

    1.Controller层:接口层,用户访问请求时对接. Controller层负责具体的业务模块流程的控制,在此层里面要调用Serice层的接口来控制业务流程,控制的配置也同样是在Spring的配置 ...

  7. java 框架 Dao层 Mapper层 controller层 service层 model层 entity层 简介

    目录 简介 entity层 mapper层 service层 controller层 简介 SSM是sping+springMVC+mybatis集成的框架. MVC即model view contr ...

  8. SpringBoot实现Java高并发秒杀系统之DAO层开发(一)

    SpringBoot实现Java高并发秒杀系统之DAO层开发(一) 秒杀系统在如今电商项目中是很常见的,最近在学习电商项目时讲到了秒杀系统的实现,于是打算使用SpringBoot框架学习一下秒杀系统( ...

  9. MyBatis-学习笔记06【06.使用Mybatis完成DAO层的开发】

    Java后端 学习路线 笔记汇总表[黑马程序员] MyBatis-学习笔记01[01.Mybatis课程介绍及环境搭建][day01] MyBatis-学习笔记02[02.Mybatis入门案例] M ...

  10. JDBC , 使用java来控制mysql。JavaWeb开发的分层设计-三层架:DAO层设计,连接池使用,类加载使用,配置...

    大家可以关注一下我的博客  我的博客所有随笔都是我从基础开始学习java的所有知识点 1. Jdbc概述 问题:实际开发中,不可能用工具或者命令行操作数据库,数据库表中的数据最终要使用Java程序来操 ...

最新文章

  1. Linux 创建子进程执行任务
  2. onpostexecute 中更新adapter 事变_Spring面试中常见的9种设计模式!
  3. JSON与js对象序列化
  4. python调用公共方法_common: 这是一个Python的公共工具类,集成了各种主要的python常用方法...
  5. Vue中token刷新及token过期的实现
  6. 数据结构专题:树链剖分
  7. MFC中CString.Format的详细用法
  8. C# DIRECTX INPUT 模拟 (鼠标玩FBA街机)
  9. windows删除文件时需要管理员权限的方法
  10. 【51CTO学院三周年】随身携带的象牙塔
  11. 虚拟机与本机可以互ping,但是Xshell连不上虚拟机 的解决方法
  12. 使用QQ推广作为客服或留言(转载)
  13. MongoDB 日志管理
  14. 微信移动学习平台小程序 后台基于php+mysql
  15. STM32 HAL WS2812B PWM+DMA控制
  16. 【SemiDrive源码分析】【X9芯片启动流程】08 - X9平台 lk 目录源码分析 之 目录介绍
  17. 豆瓣电台WP7客户端 开发记录7
  18. 【费用流】loj#545. 「LibreOJ β Round #7」小埋与游乐场
  19. oracle scott用户来历,Oracle应用之Scott用户简介
  20. 工频X线机计算机控制,FSK302-1A型500mA程控X线机.doc

热门文章

  1. 51Nod-1486 大大走格子
  2. windows中的hosts文件
  3. Java后端实现websocket与微信小程序端连接简单例子
  4. oc55--ARC单个对象的内存管理
  5. 快速搭建Python开发环境
  6. http协议(九)响应首部字段
  7. (十六)企业部分之lvs
  8. ssh中懒加载问题org.hibernate.LazyInitializationException
  9. Median of Two Sorted Array leetcode java
  10. 《Python核心编程》第二版第八章练习题答案 第三部分