咨询热线:13974849395 联系人:茹先生 地址:安徽省合肥市经济开发区明珠广场莲花路
Spring项目对JDBC的支持和基本使用
来源:sungame988官网网址 发布时间:2019-11-26 点击量:183
欢迎查看Java开发之上帝之眼系列教程,如果您正在为Java后端庞大的体系所困扰,如果您正在为各种繁出不穷的技术和各种框架所迷茫,那么本系列文章将带您窥探Java庞大的体系。本系列教程希望您能站在上帝的角度去观察(了解)Java体系。使Java的各种后端技术在你心中模块化;让你在工作中能将Java各个技术了然于心;能够即插即用。本章我们来一起了解Spring对JDBC的支持和基本使用。
Spring对数据访问提供的支持
提供于平台无关的的持久化异常体系提供模板简化数据持久化开发提供于平台无关的的持久化异常体系
Spring对JDBC的SQLException进行封装,你不需要做什么;只需要将SpringJDBC的Jar包导入即可,这样你就可以在Spring所支持的数据访问模板中享受到这些异常^~~^
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.1.1.RELEASE</version> </dependency>
提供模板简化数据持久化开发
针对不同的持久化平台,Spring提供了多个可选则使用的模板,常用的模板类如下
模板类 | 用途 |
---|---|
jdbc.core.JdbcTemplate | JDBC的链接 |
orm.jdo.JdoTemplate | Java数据对象实现 |
orm.jpa.JpaTemplate | Java持久化API的实体管理器 |
orm.ibatis.SqlMapClientTemplate | IBATIS SqlMap客户端 |
orm.hibernate3.HibernateTemplate | Hibernate3.x以上的Session |
装配数据源
无论你使用哪一种模板类,你都需要配置一个数据源的引用,Spring提供了在Spring上下文中配置数据源Bean的多种方式
通过JDBC驱动程序定义的数据源通过JNDI查找数据源连接池的数据源具体详细的数据源装配,我会另开一篇进行解析介绍,在本篇案例中使用的是阿里巴巴的druid连接池,使用过程如下加载依赖
<!-- https://mvnrepository.com/artifact/com.alibaba/druid --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.12</version> </dependency>
配置数据源
@Bean public DruidDataSource dataSource() { DruidDataSource ds = new DruidDataSource(); ds.setDriverClassName(environment.getProperty("jdbc.driver")); ds.setUrl(environment.getProperty("jdbc.url")); ds.setUsername(environment.getProperty("jdbc.username")); ds.setPassword(environment.getProperty("jdbc.password")); ds.setInitialSize(5); return ds; }
配置JDBC模板类
@Bean public JdbcTemplate jdbcTemplate(DataSource dataSource) { return new JdbcTemplate(dataSource); }
Dao层相关代码
@Autowired private JdbcOperations jdbcOperations; @Override public User getUser(String username) { List<User> query = jdbcOperations.query(SELECT_USER_BY_ID, new UserRowMapper(), username); return query.get(0); }
本章完整代码地址:完整项目下载地址点击此处
相关产品
-
据曲靖市经开区交警大队教导员张宝华介绍,6日早晨7点零7分左右,值班民警接到路人报警,在曲靖市西片区长征路上一老人倒地身亡,有可能是车祸。办案民警左耀鹏赶往现场,现场没有车辆,只有倒在血泊中的老人,经查验老人已无生命体征。
-
新加坡《联合早报》网站2月13日引述江苏新闻广播报道,“联合女神”号是一艘载货量2万多吨的远洋货轮,船东为南京远浩船务公司,船员由南京远腾船务有限公司派遣。
-
不过,明天冯潇霆还是迎来了一次与梅西对垒的机会,这或许也是他足球生涯中最难忘的一次较量。半岛晨报、海力网记者隋海涛
-
我觉得第一个被忽悠的恐怕是罗永浩。他有1000万粉丝,他想:要是我做个手机,那销量简直不敢想象啊。果然,锤子T1第一波卖了30万台不到,只占他粉丝数量的3%,3%。这个销量大约让罗永浩清醒了不少。让他明白了粉丝经济是不靠谱的。他开始把个人形象往后藏。
-
潘基文当天在联合国总部举行任内最后一次记者会。他表示,韩国当前的局势非常艰难,在某种程度上可以说处于混乱之中。他能理解并同韩国民众一样,为国家的未来担忧。他理解韩国民众需要一个全新、包容性的领导层,帮助他们应对面临的挑战。
-
旧世界产酒国分布在欧洲,这些产酒国拥有悠久的葡萄酒酿造历史,并且享誉全球,比如法国、意大利、德国和西班牙等。新世界产酒国包括美国、澳大利亚、新西兰、智利、南非和阿根廷等国家,他们的葡萄酒酿造大多兴起于15至17世纪,如今在国际市场上也占据着不可忽略的地位。
-
央行最新发布的数据显示,过去5年间,居民储蓄实现了翻番增长,截至今年8月份,我国居民储蓄已连续3个月突破43万亿元。这组数字让人喜忧参半,喜的是巨量储蓄意味着有更多的潜力进行投资,意味着更大的经济回旋余地;忧的是这也暴露出居民消费的乏力和结构调整的艰巨,以及居民对投资渠道匮乏的无奈。
-
由于劳伦斯奖的特殊性以及投票人的构成,使得网球、田径项目备受青睐。小威就曾两度拿到最佳女运动员奖,另外卡普里亚蒂、海宁也曾获奖,而田径选手也是最佳运动员的常客。而综合影响力和名气,李娜的主要竞争对手将是小威和亚当斯。
热点资讯
- iOS开发简记(2):自定义tabbar2019-11-22
- Hadoop中split数量计算法则(源码跟踪)2019-06-24
- 美艳猎手:俄美女COS《英雄联盟》虚空之女卡莎2019-11-06
- 亚洲第一大水坝,邻国总理呼吁中国帮助2019-06-24
- 在JS中统计函数执行次数与执行时间2019-11-18
- 特斯拉和SEC望法院批准和解协议,保留马斯克CEO职务2019-06-24
- TCP协议学习总结(上)2019-11-17
- 品种选择的奥秘:在竞争中寻找优良品种2019-11-18