最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

学习笔记——定义切面优先级 ;Spring中的JdbcTemplate;JdbcTemplate的常用API

来源:博客园

2023-01-18

一、定义切面优先级


(资料图片)

1、语法:@Order(value=index)

①index是int类型,默认值是int可存储的最大值

②数值越小,优先级越高

二、Spring中的JdbcTemplate

1、JdbcTemplate简介

(1)Spring提供的JdbcTemplate是一个小型持久化层框架,简称Jdbc代码

Mybatis是一个半自动化的ORM持久化层框架

2、JdbcTemplate基本使用

(1)导入Jar包

                            org.springframework            spring-context            5.3.10                                    org.springframework            spring-jdbc            5.3.10                                    org.springframework            spring-orm            5.3.10                                    com.alibaba            druid            1.1.10                                    mysql            mysql-connector-java            8.0.26                                    junit            junit            4.12            test            

(2)编写配置文件

db.properties:设置连接数据库属性

applicationContext.xml(spring配置文件)

加载外部属性文件、装配数据源(DataSources)、装配JdbcTemplate

                                                                    

(3)使用核心类库

三、JdbcTemplate的常用API

1、jdbcTemplate.update(String sql,Object... args):通用的增删改查方法

//创建容器对象        ApplicationContext context =                new ClassPathXmlApplicationContext("applicationContext_jdbcTemplate.xml");        //获取JdbcTemplate对象        JdbcTemplate jdbcTemplate = context.getBean("jdbcTemplate", JdbcTemplate.class);        //增//        String sql = "insert into tbl_dept(dept_name) values(?)";//        jdbcTemplate.update(sql,"采购部门");        //删//        String sql = "delete from tbl_dept where dept_id = ?";//        jdbcTemplate.update(sql,4);        //改        String sql = "update tbl_dept set dept_name=? where dept_id=?";       jdbcTemplate.update(sql,"人事2部",3);

2、jdbcTemplate.batchUpdate(String,List):通用批处理增删改查方法

//批量增        String sql = "insert into tbl_employee(last_name,email,salary,dept_id) values(?,?,?,?)";        List empList = new ArrayList<>();        empList.add(new Object[]{"zs","zs@163.com",100.0,1});        empList.add(new Object[]{"lisi","lisi@163.com",100.0,2});        empList.add(new Object[]{"wangwu","wangwu@163.com",100.0,2});        empList.add(new Object[]{"zhaoliu","zhaoliu@163.com",100.0,1});        empList.add(new Object[]{"qianqi","qianqi@163.com",100.0,1});        jdbcTemplate.batchUpdate(sql,empList);

3、jdbcTemplate.queryForObject(String sql,Class clazz,Object... args):查询单个数值

String sql = "select count(1) from tbl_employee";Integer count = jdbcTemplate.queryForObject(sql, Integer.class);System.out.println("员工数量为:" + count);

4、jdbcTemplate.queryForObject(String sql,RowMapper rm,Object... args):查询单个对象

//查询单个对象        String sql = "select id,last_name,email,salary,dept_id from tbl_employee where id=?";//        创建RowMapper        RowMapper rowMapper = new BeanPropertyRowMapper<>(Employee.class);        Employee employee = jdbcTemplate.queryForObject(sql, rowMapper, 1);        System.out.println("employee = " + employee);

5、jdbcTemplate.query(String sql,RowMapper rm,Object... args):查询多个对象

//查询多个对象         String sql = "select id,last_name,email,salary,dept_id from tbl_employee";        //创建RowMapper        RowMapper rowMapper = new BeanPropertyRowMapper<>(Employee.class);        //测试        List query = jdbcTemplate.query(sql, rowMapper);        for (Employee employee : query) {            System.out.println("employee = " + employee);        }

关键词: 配置文件 半自动化 连接数据库