JdbcTemplate(操作数据库-添加功能)

目录

JdbcTemplate(操作数据库-添加功能)

1.建立数据库表:

2.对应数据库创建实体类:

3.编写service 和 dao

(1)在 dao 层进行数据库添加操作

(2)具体:调用jdbcTemplate 对象里面 update 方法可以实现添加操作

(3)serveice层

         测试结果:


 

JdbcTemplate(操作数据库-添加功能)

 

1.建立数据库表:

用户ID,用户名

 

2.对应数据库创建实体类:

Book类对应数据库的t_book表的数据,每一个属性就是一条记录

 

3.编写service 和 dao

(1)在 dao 层进行数据库添加操作

步骤一:接口层

package org.example.spring.dao;import org.example.spring.entity.Book;public interface BookDao {//添加的方法void add(Book book);
}

步骤二:实现层

实现层里面实现jdbcTemplate对象的注入,重写接口层方法,在重写方法内写入mysql语句,通过jdbcTemplate.updata方法实现数据添加。

package org.example.spring.dao;import org.example.spring.entity.Book;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;@Repository
public class BookDaoImpl implements BookDao{//注入jdbcTemplate对象@Autowiredprivate JdbcTemplate jdbcTemplate;//添加的方法,从实体类Book中传递对象进来@Overridepublic void add(Book book) {//1.创建sql语句String sql="insert into t_book values(?,?)";//2.调用方法实现//3.参数是可变参数,是一个数组形式,因此存在一种变式
//        int update = jdbcTemplate.update(sql, book.getUserId(), book.getUsername());//变式为Object[] args= {book.getUserId(), book.getUsername()};int update = jdbcTemplate.update(sql, args);//输出影响的值System.out.println(update);}
}

 

(2)具体:调用jdbcTemplate 对象里面 update 方法可以实现添加操作

update中有两个参数:

第一个参数:编写的sql语句

第二个参数:可变参数,设置sql 语句值

 

过程其实很简单:其实就是调用jdbcTemplate中的update方法,通过update方法中的两个参数创建sql语句以及参数引入

 

(3)serveice层

service 层调用dao 层的bookDao对象(实现依赖于抽象)

package org.example.spring.service;import org.example.spring.dao.BookDao;
import org.example.spring.entity.Book;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;@Service
public class BookService {//注入dao@Autowiredprivate BookDao bookDao;//添加的方法public void  addBook(Book book){bookDao.add(book);}
}

 

 

4.测试类:

package org.example.spring.test;import org.example.spring.entity.Book;
import org.example.spring.service.BookService;
import org.junit.jupiter.api.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class TestBook
{public static void main(String[] args){ApplicationContext context=new ClassPathXmlApplicationContext("bean1.xml");BookService bookService = context.getBean("bookService", BookService.class);//因为没有写到页面数据,所以直接通过new对象实现Book book=new Book();book.setUserId("1");book.setUsername("abc");bookService.addBook(book);}}

 

 

结构:

测试结果:

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/501117.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python读取大文件csv_实现读取csv文件,文件里面是有限个百分数成绩(99.6、76.8等等...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 实现读取csv文件,文件里面是有限个百分数成绩(99.6、76.8等等)导出GPA 和等级代码是这样,但是报错了,在score float(sc)这行就报错了,下面有没有错误还不知道…

JdbcTemplate(操作数据库-修改和删除功能)

目录 JdbcTemplate(操作数据库-删除功能) 1.创建数据库 2.配置文件实现 3.创建实体类 4.创建dao层 5.创建service层 6.测试类 7.测试结果: JdbcTemplate(操作数据库-删除功能) 1.创建数据库 user_db数据库的t_…

单片机定时器实验两位倒计时秒表_51单片机基础与应用8天速成(三)

在讲授中断这一概念时,人们总是喜欢举洗衣服烧水的例子:话说,一天“你”独自在家,为了泡脚给自己烧上了一壶水,然后想着明天没有衣服穿了,就去阳台洗起了衣服。过了十几分钟,“你”在阳台洗着衣…

网线制作ppt_快速制作PPT技巧!

为什么同样的PPT,你花费了一天,我却只用了一小时?在我仔细观察了一些制作人员的操作后,总结了如下实用技巧!01自定义访问工具栏在PPT中我们有很多的常用操作,例如「左对齐/右对齐」「置于底层/置于顶层」「…

JdbcTemplate(操作数据库-查询返回值)

目录 JdbcTemplate(操作数据库-查询返回值) 1.创建数据库 2.创建实体类 3.创建dao层 4.创建service层 5.创建测试类: 6.xml配置 7.测试结果: 8.结构示意: JdbcTemplate(操作数据库-查询返回值&…

c++opencv显示中文_OpenCV安装,配置和运行

今天小崔有个项目功能想用OpenCV软件库实现一下,就安装了OpenCV,在这里给大家分享一下安装过程。一.什么是OpenCV OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。 它轻量…

qt 当前窗口句柄_QT获取Windows系统所有窗口句柄

#include #include #pragma comment(lib,"user32.lib")/* 回调函数,用于捕获进程 */BOOL MyEnumProc(HWND hwnd, LPARAM param){LPWSTR lpString (LPWSTR)malloc(sizeof(WCHAR) * MAX_PATH);if (IsWindow(hwnd) &&IsWindowEnabled(hwnd) &&a…

JdbcTemplate(操作数据库-查询返回对象、查询返回集合)

JdbcTemplate(操作数据库-查询返回对象、查询返回集合) 1.创建数据库 数据库中有三条记录,数据库名为user_db,数据库表为t_book 2.新建实体类: Book类中的每一个属性对应数据库中的一条记录 package org.example.sp…

hbase 查询设置超时_hbase master挂掉-zookeeper连接超时原因

并行运行hbase删表,建表操作,多个表多个region,导致hbase挂掉。查看日志:从日志中可以看出GC时间过长导致zookeeper连接超时,master退出。(是master退出而不是regionserver退出是因为进行的操作是建表,删表…

机器学习如何计算特征的重要性_机器学习之特征工程

特征选择是特征工程中的一个子集,从所有的特征中,选择有意义的,对模型有帮助的特征,以避免将所有特征中对模型没作用的特征导入模型去训练,消耗不必要的计算资源。更正式地说,给定n个特征,我们搜…

白中英 计算机组成原理_计算机组成原理 第五版.立体化教材 白中英 大学教材...

目 录第1章 计算机系统概论第2章 运算方法和运算器第3章 多层次的存储器第4章 指令系统第5章 中央处理器第6章 总线系统第7章 外存与IO设备第8章 输入输出系统第9章 并行组织与结构关于我们大学生必备资源库为大学生提供网课答案、大学课后答案、软件安装、大学考试考证资源以及…

Spring事务操作-事务

目录 Spring事务操作-事务 1.什么是事务 (1)典型场景 2.事务的四个特性(俗称ACID特性) (1)原子性 (2)一致性 (3)隔离性 (4)持久性…

ios 静态库合成_iOS : 静态库(.framework)合并

如果写了一个Framework,根据Build时选择的机器类型,会分为模拟器Framework和真机Framework,两者是不能混用的。此时可以通过配置一个Run Script,在Script中使用lipo命令来合并两个版本的Framework,重新生成一个新的Fra…

python在统计专业的应用_Python:使用Counter进行计数统计

计数统计就是统计某一项出现的次数。实际应用中很多需求需要用到这个模型。比如测试样本中某一指出现的次数、日志分析中某一消息出现的频率等等‘这种类似的需求有很多实现方法。下面就列举几条。 (1)使用dict 看下面代码#codingutf-8 data [‘a‘,‘2‘,2,4,5,‘2‘,‘b‘,4…

Spring事务操作-事务引入

目录 Spring事务操作-事务引入 1.模拟异常 2.测试异常 3.没有使用spring框架的时候异常该如何处理 4.使用spring框架的时候异常该如何处理 5.在spring 进行声明式事务管理,底层使用AOP 6.spring 事务管理API 7.事务操作(注解声明式事务管理&…

oracle中取反_oracle正则表达式regexp_like的用法详解

oracle正则表达式regexp_like的用法详解更新时间:2013年06月13日 17:42:05 作者:本篇文章是对oracle正则表达式regexp_like的用法进行了详细的分析介绍,需要的朋友参考下/*ORACLE中的支持正则表达式的函数主要有下面四个:1&…

在r中rowsums_用R进行数据分析-05

20-矩阵与数组一、矩阵的定义矩阵(Matrix)是一个按照长方阵列排列的复数或实数集。向量是一维的,而矩阵是二维的,需要有行和列。R中,矩阵是有维数的向量,但元素必须拥有相同的模式,此和向量一致…

python字典和集合对象可以进行索引操作_Python中的字典跟集合整理笔记

泛映射类型映射类型:不仅仅是dict,标准库里的所有映射类型都是利用dict来实现的,因此它们有个共同的限制,即只有可散列的数据类型才能用做这些映射的键。(只有键有这个需求,值并不需要必须是可散列的数据类型。)什么是…

JAVA入门级教学之(super的内存示意)

Super的原理: 代表的是当前对象this的父类型特征 如果类加载过程中,这个类有静态代码块,有静态变量,一律都会执行,系统会先分配空间 只要方法调用,就一定会进行方法压栈 new一个方法,其实是调用…

python博客项目评论_Python 爬虫入门——小项目实战(自动私信博客园某篇博客下的评论人,随机发送一条笑话,完整代码在博文最后)...

之前写的都是针对爬虫过程中遇到问题的解决方案,没怎么涉及到实际案例。这次,就以博客园为主题,写一个自动私信博客下的评论人员(在本篇留下的评论的同学也会被自动私信,如果不想被私信,同时又有问题,请私信…