jdbcTemplate注入过程
1 spring配置c3p0连接池
(1)导入jar包
(2) 创建spring配置文件,配置连接池
2、完整代码如下
UserDao.java
- package com.liuyanzhao.c3p0;
- import org.springframework.jdbc.core.JdbcTemplate;
- public class UserDao {
- //得到JdbcTemplate对象
- private JdbcTemplate jdbcTemplate;
- public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
- this.jdbcTemplate = jdbcTemplate;
- }
- //添加操作
- public void add() {
- String sql = "insert into user value(?,?,?)";
- jdbcTemplate.update(sql,6,"刘言曌","123456");
- }
- }
UserService.java
- package com.liuyanzhao.c3p0;
- public class UserService {
- //添加操作
- private UserDao userDao;
- public void setUserDao(UserDao userDao) {
- this.userDao = userDao;
- }
- public void add() {
- userDao.add();
- }
- }
bean1.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
- http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"> <!-- bean definitions here -->
- <!--配置c3p0连接池-->
- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
- <!--注入属性-->
- <property name="driverClass" value="com.mysql.jdbc.Driver"></property>
- <property name="jdbcUrl" value="jdbc:mysql://127.0.0.1:3306/spring?useUnicode=true&characterEncoding=utf8"></property>
- <property name="user" value="root"></property>
- <property name="password" value=""></property>
- </bean>
- <bean id="userServiceId" class="com.liuyanzhao.c3p0.UserService">
- <!--注入dao对象-->
- <property name="userDao" ref="userDaoId"></property>
- </bean>
- <bean id="userDaoId" class="com.liuyanzhao.c3p0.UserDao">
- <!--注入jdbcTemplate对象-->
- <property name="jdbcTemplate" ref="jdbcTemplateId"></property>
- </bean>
- <!--创建jdbcTemplate对象-->
- <bean name="jdbcTemplateId" class="org.springframework.jdbc.core.JdbcTemplate">
- <!--把dataSource传递到模板里面-->
- <property name="dataSource" ref="dataSource"></property>
- </bean>
- </beans>
ServiceTest.java 测试类
- package com.liuyanzhao.c3p0;
- import org.junit.Test;
- import org.springframework.context.ApplicationContext;
- import org.springframework.context.support.ClassPathXmlApplicationContext;
- public class ServiceTest {
- @Test
- public void test() {
- ApplicationContext context =
- new ClassPathXmlApplicationContext("bean1.xml");
- UserService userService = (UserService) context.getBean("userServiceId");
- userService.add();
- }
- }
本文链接:https://liuyanzhao.com/5707.html
jdbcTemplate注入过程相关推荐
- spring源码解析(二) @Autowired自动注入过程
1.依赖注入到底有几种?两种.四种.五种? 两种: 手动:set(byType.byName).构造器 自动:xml中:set.构造器 autowired注解中:set.属性.构造器 重点不在于到底有 ...
- (17)网络安全:cookie注入、二次注入、DNSlog注入、中转注入、堆叠注入的原理及注入过程
目录 cookie注入 sqli-lasb-master less-21 方法一:用burpsuite进行抓包后修改 方法二:安装火狐的cookie manager等插件进行修改cookie 第一步: ...
- mysql报错注入_关于Mysql注入过程中的三种报错方式
放点原来的笔记,Mysql在执行语句的时候会抛出异常信息信息,而php+mysql架构的网站往往又将错误代码显示在页面上,这样可以通过构造如下三种方法获取特定数据. 实际测试环境: Default m ...
- Sandboxie注入过程
沙箱进程启动后驱动获取了进程启动信息,通知到svc进程. svc进程执行Inject_low. 首先在目标进程中申请一个空间,地址remote_addr,长度lowdata的长度,将LowData放进 ...
- 记录使用 Lib.Harmony 时注入过程中遇到的一个坑
1. 从这里开始 在一个无聊的下午,我偶然看到某个 Terraria 群里在谈论着一个叫 TerrariaHelper(自动钓鱼) 的软件,顿时有了兴致.我之前粗略研究过 FruitY(某个直接修改 ...
- SQL注入之union联合注入——sql-lab第一关(非常非常详细的过程)
SQL注入介绍 什么是SQL注入: SQL注入是(SQLi)是一种注入攻击,可以执行恶意的SQL语句,它通过将任意SQL代码插入数据库查询,使攻击者能够完全控制web应用程序后面的数据库服务器.攻击者 ...
- Istio 中的 Sidecar 注入及透明流量劫持过程详解
图片来源:上海五角场 by Jimmy Song 本文基于 Istio 1.5.1 版本,将为大家介绍以下内容: 什么是 sidecar 模式和它的优势在哪里. Istio 中是如何做 sidecar ...
- 思想的芦苇——把过程改进注入人文服务的思想以提升其价值
思想的芦苇 --把过程改进注入人文服务的思想以提升其价值 龚云卿 软脑软件(北京)有限公司 过程咨询部部长 兼 SEPG经理 PDF文档下载 法国思想家帕斯卡尔[[1]]说过:"思想形成人的 ...
- SQL注入的一般过程
SQL注入的一般过程 概述 SQL注入的步骤 一道例题 总结 概述 SQL注入是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添 ...
- SQL注入的原理、过程及如何防范
SQL注入的原理: 定义:通过把SQL命令插入到 web表单提交.输入域名.页面请求的查询字符串,最终达到欺骗服务器 执行恶意的sql命令. 它的本质就是服务器对代码和数据不区分,未对用户提交的参数进 ...
最新文章
- Go 学习笔记(51)— Go 标准库之 strings(字符串比较、字符串前后缀、字符串统计、字符串索引、字符串包含、字符串转换、字符串复制、字符串替换、字符串去除、字符串分割和连接)
- vue.js学习笔记(1)
- t490 指纹识别 linux,T490
- 辅助模式最终考验的是想象力,先来看看怎么用!| Accessibility
- 石油采集(求联通区域) 2018多校寒假集训 (dfs+二分匹配)
- 前端学习(1920)vue之电商管理系统电商系统之角色列表路由的切换
- Silverlight AutoCompleteBox(自动完成输入框控件)使用方法
- 数据结构与算法汇总详解(一)
- Navicat Premium11连接Oracle出现ORA-28547:connection to server failed
- 深度报告 | 4G应用启示录与5G应用展望
- linux麒麟认证,【麒麟在线讲堂】优麒麟生物特征认证系统-03驱动开发
- 机器学习二分类模型评价指标详述
- 培训linux系统下载,非常好的Linux培训教程集合下载
- Mysql——DQL(查询语句语法、格式、举例)以及全部数据库源码,复制就可实现全部功能
- python 安装第三方包-安装失败(pycharm/ anaconda navigator)
- 51cto 检测ip地址冲突_IP地址冲突解决办法
- 微表情数据集汇总(全)
- 海康威视2019校招
- matplotlib中cmap_定制matplotlib cmap
- 如何使用FTP手机/电脑上传文件到服务器
热门文章
- PostgreSQL 10.1 手册_部分 II. SQL 语言_第 10 章 类型转换_10.5. UNION、CASE和相关结构...
- php框架tp3.2.3和js写的微信分享功能心得,分享的标题内容图片自定义
- spring cloud微服务分布式云架构简介
- js返回上一页并刷新、返回上一页、自动刷新页面
- 技术管理者工作成效评估表
- REST+EJB+JPA 框架在 Eclipse+TomEE 的开发环境搭建
- 学习英文之社区,博客及源码 转载
- 【自然框架】稳定版的Demo —— 三:主从表的维护方式
- delegate vs. event(转自LTP.NET知识库)
- 【SpringBoot】整合jdbc