srping-data学习笔记一(传统方式访问数据库实现和弊端分析)

spring-data是一系列项目的集合,涵盖访问关系型、非关系型等各种数据源的子项目

  • spring data jpa 关系型
  • spring data mongo db
  • spring data redis
  • spring data solr 全文检索,基于lucene
  • 其他

使用原始JDBC方式操作数据库

1)创建Maven项目

  maven工程的目录结构

  添加依赖   

<dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.38</version>
</dependency>

2)数据库准备

3)开发JDBCUtil工具类

  获取Connection, 关闭Connection,Statement, ResultSet等资源。

  配置内容放到配置文件中,然后通过代码引用配置文件中的内容。

4)建立对象模型,Dao

使用Spring jdbc的方式操作数据库

1)添加依赖

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>4.3.5.RELEASE</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>4.3.5.RELEASE</version>
    </dependency>

2)配置beans.xml

3)开发spring jdbc版本的query和save方法

以上两种传统方式访问数据库存在的弊端分析:

1)DAO中代码量大

2)DAO实现重复代码比较多

3)分页等功能需要单独开发

下载源代码:https://pan.baidu.com/s/1eSPFTHS

时间: 2024-07-30 17:52:30

srping-data学习笔记一(传统方式访问数据库实现和弊端分析)的相关文章

JAVA传统方式访问数据库

使用idea进行操作: 1)创建maven项目 选择maven仓库,选择自己maven安装位置,user settings file为安装maven下conf文件夹内的settings.xml . local repository是本地仓库,设置好后点击next 设置项目名称 2)添加依赖 pom.xml下添加依赖包 3)JDBC连接 不建议将配置写入代码中  所以在resources下创建db.properties 此处mysql8.0以上版本的driver为com.mysql.cj.jdbc

EasyARM i.mx28学习笔记——文件IO方式操作GPIO

0 前言 本文描述如果通过文件IO sysfs方式控制EasyARM GPIO端口.通过sysfs方式控制GPIO,先访问/sys/class/gpio目录,向export文件写入GPIO编号,使得该GPIO的操作接口从内核空间暴露到用户空间,GPIO的操作接口包括direction和value等,direction控制GPIO方向,而value可控制GPIO输出或获得GPIO输入. Linux学习可从应用出发,先不纠结Linux驱动编写,先把Linux给玩起来. [相关博文] [EasyARM

yii学习笔记(在控制器访问别的类方法)

在当前控制器定义一个actions的方法 public function actions() { return array( // 'captcha'=>array( 'class'=>'CCaptchaAction', 'backColor'=>0xFFFFFF, ), // // 'page'=>array( 'class'=>'CViewAction', ), ); } function actions(){ return array( 'captcha'=>ar

《Mycat学习笔记》 第二篇. MySql 读写分离与日志分析——主从多结点

1    环境说明 接上篇环境   <Mycat学习笔记> 第一篇. MySql 读写分离与日志分析——主从单结点 http://www.cnblogs.com/kaye0110/p/5134588.html 增加一套 mysql 实例,端口为3308 ,通过Binlog方式同步主机情况 localhost : 3306 主机,    在mycat 中配置为 writehost 1 localhost : 3307 从机 a ,在mycat 中配置为 readhost localhost :

iOS学习笔记(十六)——数据库操作(使用FMDB)

iOS中原生的SQLite API在使用上相当不友好,在使用时,非常不便.于是,就出现了一系列将SQLite API进行封装的库,例如FMDB.PlausibleDatabase.sqlitepersistentobjects等,FMDB (https://github.com/ccgus/fmdb) 是一款简洁.易用的封装库,这一篇文章简单介绍下FMDB的使用. 在FMDB下载文件后,工程中必须导入如下文件,并使用 libsqlite3.dylib 依赖包. FMDB同时兼容ARC和非ARC工

Android:日常学习笔记(10)———使用LitePal操作数据库

Android:日常学习笔记(10)---使用LitePal操作数据库 引入LitePal 什么是LitePal LitePal是一款开源的Android数据库框架,采用了对象关系映射(ORM)的模式,将平时开发时最常用的一些数据库功能进行了封装,使得开发者不用编写一行SQL语句就可以完成各种建表.増删改查的操作.并且LitePal很"轻",jar包大小不到100k,而且近乎零配置,这一点和Hibernate这类的框架有很大区别.目前LitePal的源码已经托管到了GitHub上. 关

ADO.NET 连接方式和非链接方式访问数据库

//连接方式访问数据库的主要步骤 1.创建连接对象(l链接字符串) 2.创建命令对象(设置Command对象的几个属性值) 3.打开连接 4.发送命令 5.处理数据 6.关闭连接 //非链接方式访问数据库 1/创建连接对象 2.创建数据适配器对象 3.打开连接 4.发送命令 5.关闭连接

非链接方式访问数据库--查询的数据集用Dataset来存储。

private void Button_Click_1(object sender, RoutedEventArgs e) { //非链接方式访问数据库, //1创建连接对象(连接字符串) using (SqlConnection conn = new SqlConnection(SQLHelper.ConnectionString)) { //2.创建数据适配器对象 using (SqlDataAdapter sda = new SqlDataAdapter("select * from St

ObjectARX2010 学习笔记001:在新数据库中创建直线并将此数据库保存成DWG文件

static void swtArxProject5createLine(void) { // Add your code for command swtArxProject5.createLine here //创建新的CAD数据库 AcDbDatabase *pDb=new AcDbDatabase(); //定义块表指针 AcDbBlockTable *pBlkTbl; //获取块表 pDb->getSymbolTable(pBlkTbl,AcDb::kForRead); //定义块表记录