jdbctemplate

Connection to database with JdbcTemplate

匿名 (未验证) 提交于 2019-12-03 01:05:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I'm trying to create table (h2) with jdbcTemplate. Everything is ok when I execute different queries in UsersDAOImpl class, but when I try to create table first in Application class, the JdbcTemplate can't connect to the database. I read that I need to add dependency group spring-boot-starter-jdbc that will automatically generate dataSource to witch my JdbcTemplate should connect, but it seems that doesn't work. I think that I missed something but can't find what. Application class: @SpringBootApplication public class Application implements

jdbcTemplate的queryForList

匿名 (未验证) 提交于 2019-12-03 00:38:01
jdbcTemplate的queryForList的使用方法如下,它不一样的地方是,它获得的结果,会再放到一个map里去: 我的一个例子中,得到的结果只有一列数字类型的数据(targer_id),但使用queryForList得到的结果集个数与数据库的内容一致,但每一项都是null。不清楚其原因,修改成 才能正确得到结果。 附上带用的一些方法 使用jdbcTemplate查询数据的时候可以使用queryForXXX等方法。下面我们就一一解析一下: 1、jdbcTemplate.queryForInt()和jdbcTemplate.queryForLong() --使用queryForInt返回user表中的记录数量,queryForInt搭配这样的sql可以在分页的时候计算总记录数 jdbcTemplate.queryForInt("select count(*) from user"); 2、jdbcTemplate.queryForObject() --本质上和queryForInt相同,只是可以返回不同的对象,例如返回一个String对象 java.lang.String.class); 3、jdbcTemplate.queryForList(???) --返回一个装有map的list,每一个map是一条记录,map里面的key是字段名 Map userMap=rows

JdbcTemplate调用存储过程常见情况及封装

匿名 (未验证) 提交于 2019-12-03 00:37:01
CREATE DEFINER=`user`@`%` PROCEDURE `proc_jdbc_student_add`(IN `name` varchar(30), IN age int) begin insert into jdbc_student (name, age) values(name, age); end CREATE DEFINER=`user`@`%` PROCEDURE `proc_jdbc_student_outpara`(IN in_id int, OUT out_name varchar(30), OUT out_age int) begin select name, age into out_name, out_age from jdbc_student where id = in_id; end CREATE DEFINER=`user`@`%` PROCEDURE `proc_jdbc_student_resultset`(IN in_age_min int, IN in_age_max int) BEGIN select * from jdbc_student where age between in_age_min and in_age_max; end 二、jdbcTemplage调用存储过程常见3种情形 1、无返回值 public

SpringBoot (四) :springboot整合使用JdbcTemplate

匿名 (未验证) 提交于 2019-12-03 00:26:01
为了使 JDBC 更加易于使用,Spring 在 JDBCAPI 上定义了一个抽象层, 以此建立一个JDBC存取框架. 作为 SpringJDBC 框架的核心, JDBC 模板的设计目的是为不同类型的JDBC操作提供模板方法. 每个模板方法都能控制整个过程,并允许覆盖过程中的特定任务.通过这种方式,可以在尽可能保留灵活性的情况下,将数据库存取的工作量降到最低. JdbcTemplate主要提供以下五类方法: execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句; update方法及batchUpdate方法:update方法用于执行新增、修改、删除等语句;batchUpdate方法用于执行批处理相关语句; query方法及queryForXXX方法:用于执行查询相关语句; call方法:用于执行存储过程、函数相关语句。 1、pom.xml文件引入 <!-- jdbc--> < dependency > < groupId > org.springframework.boot </ groupId > < artifactId > spring-boot-starter-jdbc </ artifactId > </ dependency > <!-- mysql--> < dependency > < groupId > mysql </ groupId > <

关于Spring jdbcTemplate类

匿名 (未验证) 提交于 2019-12-03 00:22:01
JdbcTemplate类简述 JdbcTemplate 类执行 SQL 查询、更新语句和存储过程调用,执行迭代结果集和提取返回参数值。它也捕获 JDBC 异常并转换它们到 org.springframework.dao 包中定义的通用类、更多的信息、异常层次结构。 JdbcTemplate 线程安全 配置的。所以你可以配置 JdbcTemplate 的单个实例,然后将这个共享的引用安全地注入到多个 DAOs 中。 使用 JdbcTemplate 类时常见的做法是在你的 Spring 配置文件中配置数据源,然后共享数据源 bean 依赖注入到 DAO 类中,并在数据源的设值函数中创建了 JdbcTemplate。 配置数据源 这是mysql的数据库 <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/数据库名"/> <property name="username" value="root"/> <property

Spring不能注入Static变量的原因及Spring注入静态变量

匿名 (未验证) 提交于 2019-12-03 00:18:01
下面给大家介绍spring不能注入static变量的原因,具体详情如下所示: Spring 依赖注入 是依赖 set方法 set方法是 是普通的对象方法 static变量是类的属性 ? 1 2 @Autowired private static JdbcTemplate jdbcTemplate; 单纯看这个注入过程是没有报错的,但是在接下来的jdbcTemplate.query()会报空指针错误. ps:Spring注入静态变量 今天碰到一个问题,我的一个工具类提供了几种静态方法,静态方法需要另外一个类的实例提供处理,因此就写出了这样的代码: ? 1 2 3 4 5 6 7 8 9 10 Class Util{ private static XXX xxx; xxx = BeanUtil.getBean( "xxx" ); public static void method(){ xxx.func(); } public static void method(){ xxx.func(); }   这里是使用的getBean的方式,获得XXX的实例,但是别人说这个方法不好,想要注入的方式。    但是静态的XXX如何注入呢?   上网查了很多的说法,其实很简单: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Class Util{ private

用户信息查询系统_daoImpl

匿名 (未验证) 提交于 2019-12-03 00:03:02
package com.hopetesting.dao.impl;import com.hopetesting.dao.UserDao;import com.hopetesting.domain.User;import com.hopetesting.utils.JDBCUtils;import org.springframework.jdbc.core.BeanPropertyRowMapper;import org.springframework.jdbc.core.JdbcTemplate;import java.util.ArrayList;import java.util.List;import java.util.Map;import java.util.Set;/** * @author newcityman * @date 2019/9/7 - 21:07 */public class UserDaoImpl implements UserDao { private JdbcTemplate jdbcTemplate = new JdbcTemplate(JDBCUtils.getDataSource()); @Override public List<User> findAllUser() { String sql = "select * from user";

spring的JdbcTemplate操作oracle的存储过程

匿名 (未验证) 提交于 2019-12-02 23:56:01
场景: 使用java代码调用oracle的存储过程,本例使用JdbcTemplate模板类操作. 功能: 方便后续查阅. 1.JdbcTemplate调用存储过程(Procedure)不带返回值 1.1存储过程 CREATE OR REPLACE PROCEDURE PRO_QUERY_INFO_ARGS4 ( TASK_ID IN NUMBER ) IS BEGIN INSERT INTO F_LOG_INFO ( TASK_ID , BEGIN_TIME , END_TIME , FLAG , FAIL_INFO , DATA_COUNT , TABLE_NAME ) VALUES ( TASK_ID , SYSDATE - 1 , SYSDATE , '999' , '999' , 999 , 'TABLE_NAME2019' ); COMMIT ; EXCEPTION WHEN OTHERS THEN ROLLBACK ; END PRO_QUERY_INFO_ARGS4 ; 1.2代码 public static void doProcedures () { String procedures = "{call PRO_QUERY_INFO_ARGS4 ('888')}" ; jdbcTemplate . execute ( procedures ); } 2

spring 中常用的设计模式

匿名 (未验证) 提交于 2019-12-02 23:34:01
一、 Spring 中常见的设计模式 工厂模式 : BeanFactory 装饰器模式: BeanWrapper 代理模式: AopProxy 单例模式: ApplicationContext 委派模式: DispatcherServlet 策略模式: HandlerMapping 适配器模式: HandlerApdapter 模板方法模式: JdbcTemplate 观察者模式: ContextLoaderListener 二、Spring 的四大模块及典型的 设计模式   4、Spring JDBC 模板方法模式

Spring JDBC――JDBCTemplate

匿名 (未验证) 提交于 2019-12-02 23:34:01
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fjxcsdn/article/details/90296382 1.概念 Spring框架提供了 一个JDBCTemplate对象,用于对JDBC的简单封装。 JDBCTemplate ―我们可以直译为JDBC模板,它为不同类型的JDBC提供了模板方法,且每个方法可以能控制整个过程,,并允许覆盖过程中的特定任务。 2.为什么使用 我们进行数据库增删改查数据的时候,存在很多繁琐的操作,例如获取连接对象,给 ?赋值,执行SQL语句,获取数据,封装对象,释放资源等等。操作相当的繁琐,其实我们只需要定义一个SQL语句,执行SQL语句即可,为了简化这些操作,Spring框架提供了JDBCTemplate对象,用于对JDBC的简单封装 。 3.使用 ①导入Spring的5个jar包 + 数据库驱动包 +数据库连接池包(druid) ② 设置数据库连接池的工具类 (详情看博客) 导包,如果已经导入,则不需要 安装配置文件 写数据库连接池的工具类 ③创建jdbcTemplate对象,该对象依赖于数据源DataSource //3.创建JDBCTemplate对象 JdbcTemplate template = new JdbcTemplate ( JDBCUtils . getDataSource