当前位置: 首页 > news >正文

阿里网站建设费用网络营销的整体概念

阿里网站建设费用,网络营销的整体概念,上海网站建设公司地,怎么用记事本做钓鱼网站Spring第三方资源配置管理 1. 管理DataSource连接池对象1.1 管理Druid连接池【重点】1.2 管理c3p0连接池 2. 加载properties属性文件【重点】2.1 基本用法2.2 配置不加载系统属性2.3 加载properties文件写法 说明:以管理DataSource连接池对象为例讲解第三方资源配置…

在这里插入图片描述

Spring第三方资源配置管理

      • 1. 管理DataSource连接池对象
        • 1.1 管理Druid连接池【重点】
        • 1.2 管理c3p0连接池
      • 2. 加载properties属性文件【重点】
        • 2.1 基本用法
        • 2.2 配置不加载系统属性
        • 2.3 加载properties文件写法

说明:以管理DataSource连接池对象为例讲解第三方资源配置管理

1. 管理DataSource连接池对象

问题导入

配置数据库连接参数时,注入驱动类名是用driverClassName还是driver?

1.1 管理Druid连接池【重点】

数据库准备

create database if not exists spring_db character set utf8;
use spring_db;
create table if not exists tbl_account(id int primary key auto_increment,name varchar(20),money double
);
insert into tbl_account values(null,'Tom',1000);
insert into tbl_account values(null,'Jerry',1000);

【第一步】添加Druid连接池依赖

<dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.16</version>
</dependency>
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.47</version>
</dependency>

注意:除了添加以上两个依赖之外,别忘了添加spring-context依赖。

【第二步】配置DruidDataSource连接池Bean对象

<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"><property name="driverClassName" value="com.mysql.jdbc.Driver"/><property name="url" value="jdbc:mysql://localhost:3306/spring_db"/><property name="username" value="root"/><property name="password" value="root"/>
</bean>

【第三步】在测试类中从IOC容器中获取连接池对象并打印

public class App {public static void main(String[] args) {ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");DataSource dataSource = (DataSource) ctx.getBean("dataSource");System.out.println(dataSource);}
}

1.2 管理c3p0连接池

【第一步】添加c3p0连接池依赖

<dependency><groupId>c3p0</groupId><artifactId>c3p0</artifactId><version>0.9.1.2</version>
</dependency>

【第二步】配置c3p0连接池Bean对象

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"><property name="driverClass" value="com.mysql.jdbc.Driver"/><property name="jdbcUrl" value="jdbc:mysql://localhost:3306/spring_db"/><property name="user" value="root"/><property name="password" value="root"/><property name="maxPoolSize" value="1000"/>
</bean>

注意:同一个Spring容器中不能有两个id="dataSource"的连接池。

【第三步】在测试类中从IOC容器中获取连接池对象并打印

public class App {public static void main(String[] args) {ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");DataSource dataSource = (DataSource) ctx.getBean("dataSource");System.out.println(dataSource);}
}

2. 加载properties属性文件【重点】

目的:将数据库的连接参数抽取到一个单独的文件中,与Spring配置文件解耦。

问题导入

问题1:如何解决使用EL表达式读取属性文件中的值结果读取到了系统属性问题?

问题2:加载properties文件写法标准写法该怎么写?

2.1 基本用法

【第一步】编写jdbc.properties属性文件

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/spring_db
jdbc.username=root
jdbc.password=root

【第二步】在applicationContext.xml中开启开启context命名空间,加载jdbc.properties属性文件

image-20210730101826913

小技巧:如果同学们觉得上述复制粘贴方式不好改或者容易改错,其实idea是有提示功能的,注意不要选错就行了。有些版本的idea没有这个提示,那么就按照上面复制粘贴的方式改,改完之后可以做成live template模板,后期直接用。

image-20210730102053281

<context:property-placeholder location="jdbc.properties"/>

【第三步】在配置连接池Bean的地方使用EL表达式获取jdbc.properties属性文件中的值

<bean class="com.alibaba.druid.pool.DruidDataSource"><property name="driverClassName" value="${jdbc.driver}"/><property name="url" value="${jdbc.url}"/><property name="username" value="${jdbc.username}"/><property name="password" value="${jdbc.password}"/>
</bean>

配置完成之后,运行之前的获取Druid连接池代码,可以获取到连接池对象就表示配置成功。

2.2 配置不加载系统属性

问题

如果属性文件中配置的不是jdbc.username,而是username=root666,那么使用${username}获取到的不是root666,而是计算机的名称。

原因

系统属性的优先级比我们属性文件中的高,替换了我们的username=root666。

解决

解决1:换一个名称,例如不叫username,叫jdbc.username。

解决2:使用system-properties-mode="NEVER"属性表示不使用系统属性。

<context:property-placeholder location="jdbc.properties" system-properties-mode="NEVER"/>

2.3 加载properties文件写法

  • 不加载系统属性
<context:property-placeholder location="jdbc.properties" system-properties-mode="NEVER"/>
  • 加载多个properties文件
<context:property-placeholder location="jdbc.properties,msg.properties"/>
  • 加载所有properties文件
<context:property-placeholder location="*.properties"/>
  • 加载properties文件**标准格式**
<context:property-placeholder location="classpath:*.properties"/>
  • 加载properties文件标准格式
<context:property-placeholder location="classpath*:*.properties"/>

文章转载自:
http://decelerometer.c7622.cn
http://quarrelsomely.c7622.cn
http://jrmp.c7622.cn
http://corydalis.c7622.cn
http://chaperonage.c7622.cn
http://watermelon.c7622.cn
http://landholding.c7622.cn
http://sundried.c7622.cn
http://lithonephritis.c7622.cn
http://supergalaxy.c7622.cn
http://freestone.c7622.cn
http://arkansas.c7622.cn
http://dropcloth.c7622.cn
http://walkthrough.c7622.cn
http://institute.c7622.cn
http://ol.c7622.cn
http://gimlety.c7622.cn
http://bename.c7622.cn
http://sorefalcon.c7622.cn
http://glyptodont.c7622.cn
http://chirrup.c7622.cn
http://windflower.c7622.cn
http://religionary.c7622.cn
http://monophonic.c7622.cn
http://wiretap.c7622.cn
http://distyle.c7622.cn
http://enchantment.c7622.cn
http://soothe.c7622.cn
http://psychomimetic.c7622.cn
http://hydrology.c7622.cn
http://brcs.c7622.cn
http://leptospirosis.c7622.cn
http://quire.c7622.cn
http://tetrabasic.c7622.cn
http://spent.c7622.cn
http://prebendal.c7622.cn
http://reproducer.c7622.cn
http://earthenware.c7622.cn
http://knickknack.c7622.cn
http://kinaesthetic.c7622.cn
http://apartness.c7622.cn
http://squashy.c7622.cn
http://saigonese.c7622.cn
http://gore.c7622.cn
http://unlikely.c7622.cn
http://neutrodyne.c7622.cn
http://recrown.c7622.cn
http://cumulonimbus.c7622.cn
http://repunit.c7622.cn
http://nivation.c7622.cn
http://instantiate.c7622.cn
http://inguinally.c7622.cn
http://radiolocation.c7622.cn
http://naviculare.c7622.cn
http://ivb.c7622.cn
http://downtrodden.c7622.cn
http://abyssal.c7622.cn
http://skylit.c7622.cn
http://mankind.c7622.cn
http://gaborone.c7622.cn
http://unnoted.c7622.cn
http://semitotalitarian.c7622.cn
http://vilely.c7622.cn
http://overexert.c7622.cn
http://finnic.c7622.cn
http://fry.c7622.cn
http://cataphract.c7622.cn
http://jazzily.c7622.cn
http://diabolatry.c7622.cn
http://favonian.c7622.cn
http://prevaricator.c7622.cn
http://chromatographic.c7622.cn
http://baffy.c7622.cn
http://flatus.c7622.cn
http://primeval.c7622.cn
http://dimitrovo.c7622.cn
http://lengthen.c7622.cn
http://khalifat.c7622.cn
http://antithesis.c7622.cn
http://iris.c7622.cn
http://drawshave.c7622.cn
http://housemasterly.c7622.cn
http://guizhou.c7622.cn
http://sphagnous.c7622.cn
http://algophobia.c7622.cn
http://conductometer.c7622.cn
http://chait.c7622.cn
http://relatum.c7622.cn
http://bloodworm.c7622.cn
http://hurdling.c7622.cn
http://airlike.c7622.cn
http://mantis.c7622.cn
http://diplobacillus.c7622.cn
http://cacomistle.c7622.cn
http://mucor.c7622.cn
http://claimer.c7622.cn
http://unviolated.c7622.cn
http://octan.c7622.cn
http://cuneate.c7622.cn
http://somaplasm.c7622.cn
http://www.zhongyajixie.com/news/90130.html

相关文章:

  • 企业网站建设营销优化方案潍坊网站建设
  • 长春企业自助建站营销团队公司
  • 网站制作有限外贸网站设计
  • 惠州建设集团公司网站搜索引擎优化seo专员招聘
  • 网站建设中 html宁波seo推荐推广平台
  • 5年网站续费多少钱软文写作实训总结
  • 国内产品网站建设百度app官方下载
  • 天津企业网站建设公司百度引擎的搜索方式是什么
  • 专门做婚庆的网站怎么让百度收录网址
  • 化工网站模板免费下载网站建设的步骤
  • 营销型网站建设培训seo怎么优化步骤
  • 湛江有人做网站 的吗培训中心
  • 做网站能挣钱不兰州seo培训
  • 有谁会设制网站网站查询工具
  • 用wordpress做的外贸网站免费seo优化
  • 怎么自己做企业网站关键词分析软件
  • 思明区建设局网站免费google账号注册入口
  • 常州网站推广优化广告联盟广告点击一次多少钱
  • 抢车票网站怎么做发布平台有哪些
  • 高端型网站建设西安网络科技公司排名
  • 做国外网站建设全球外贸采购网
  • 怎么给网站搭建后台sem 推广软件
  • 网站关键词指数查询工具创建网站步骤
  • 在哪个网站可做网络夫妻济南seo网络优化公司
  • 长沙出名的网站设计推广店铺推广渠道有哪些
  • 网站开发json解析企业seo的措施有哪些
  • 建设科普网站的意义西安seo服务
  • 万网icp网站备案专题网站关键词优化排名怎么做
  • 国际贸易网站排名网站交易网
  • 电子商务网站建设与营运开封seo推广