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

做义齿雕刻设备的网站绥芬河市建设局网站

做义齿雕刻设备的网站,绥芬河市建设局网站,godaddy托管 wordpress,佛山公共交易资源平台今日目标 掌握纯注解开发依赖注入(DI)模式 学习使用纯注解进行第三方Bean注入 1 注解开发依赖注入(DI)【重点】 问题导入 思考:如何使用注解方式将Bean对象注入到类中 1.1 使用Autowired注解开启自动装配模式#xff08;按类型#xff09; Service public class StudentS…今日目标 掌握纯注解开发依赖注入(DI)模式 学习使用纯注解进行第三方Bean注入 1 注解开发依赖注入(DI)【重点】 问题导入 思考:如何使用注解方式将Bean对象注入到类中 1.1 使用Autowired注解开启自动装配模式按类型 Service public class StudentServiceImpl implements StudentService {//创建成员对象//Autowired注入引用类型自动装配模式默认按类型装配Autowiredprivate StudentDao studentDao ;Overridepublic void save() {System.out.println(Service: 添加学生信息到数据库...);studentDao.save();} } 说明不管是使用配置文件还是配置类都必须进行对应的Spring注解包扫描才可以使用。Autowired默认按照类型自动装配如果IoC容器中同类的Bean有多个那么默认按照变量名和Bean的名称匹配建议使用Qualifier注解指定要装配的bean名称 注意自动装配基于反射设计创建对象并暴力反射对应属性为私有属性初始化数据因此无需提供setter方法。 1.2 使用Qualifier注解指定要装配的bean名称 目的解决IoC容器中同类型Bean有多个装配哪一个的问题 Service public class StudentServiceImpl implements StudentService {//创建成员对象//Autowired注入引用类型自动装配模式默认按类型装配Autowired//Qualifier自动装配bean时按bean名称装配Qualifier(studentDaoImpl)private StudentDao studentDao ;Overridepublic void save() {System.out.println(Service: 添加学生信息到数据库...);studentDao.save();} } 注意Qualifier注解无法单独使用必须配合Autowired注解使用 1.3 使用Value实现简单类型注入 Repository public class StudentDaoImpl implements StudentDao {//Value注入简单类型无需提供set方法Value(${test.name})private String name;Overridepublic void save() {System.out.println(DAO: name name);System.out.println(DAO: 添加学生信息到数据库...);} }以上Value注解中使用${test.name}从属性文件中读取test.name值那么就需要在配置类或者配置文件中加载属性文件。 Configuration ComponentScan(com.itheima) //PropertySource加载properties配置文件 PropertySource(classpath:test.properties) //如果是多个属性文件则使用{}数组 public class SpringConfig { }注意PropertySource中加载多文件请使用数组格式配置不允许使用通配符* 2 注解开发管理第三方Bean【重点】 问题导入 思考:导入自己定义的配置类有几种方式 【第零步】pom.xml添加数据库依赖 !-- mysql 驱动-- dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.30/version /dependency !--druid包-- dependencygroupIdcom.alibaba/groupIdartifactIddruid/artifactIdversion1.2.18/version /dependency【第一步】单独定义配置类在config包下创建 package com.zbbmeta.config;import com.alibaba.druid.pool.DruidDataSource; import org.springframework.context.annotation.Bean;import javax.sql.DataSource;public class JdbcConfig {//Bean表示当前方法的返回值是一个bean对象添加到IOC容器中Beanpublic DataSource dataSource(){DruidDataSource ds  new DruidDataSource();ds.setDriverClassName(com.mysql.cj.jdbc.Driver);ds.setUrl(jdbc:mysql://localhost:3306/spring_druid);ds.setUsername(root);ds.setPassword(root);return ds;} }【第二步】将独立的配置类加入核心配置 方式1Import注解导入式 Configuration // 指定这个类为配置类,替代application.xml ComponentScan(com.zbbmeta)//代替context:component-scan base-packagecom.zbbmeta / PropertySource(classpath:test.properties) //如果是多个属性文件则使用{}数组 Import(JdbcConfig.class)  //加载JdbcConfig配置类 public class SpringConfig {} 方式2ComponentScan扫描式 JdbcConfig类上添加注解 Configuration public class JdbcConfig {//Bean表示当前方法的返回值是一个bean对象添加到IOC容器中Beanpublic DataSource dataSource(){DruidDataSource ds  new DruidDataSource();ds.setDriverClassName(com.mysql.cj.jdbc.Driver);ds.setUrl(jdbc:mysql://localhost:3306/spring_druid);ds.setUsername(root);ds.setPassword(root);return ds;} }SpringConfig配置不变 Configuration // 指定这个类为配置类,替代application.xml ComponentScan(com.zbbmeta)//代替context:component-scan base-packagecom.zbbmeta / PropertySource(classpath:test.properties) //如果是多个属性文件则使用{}数组 //Import(JdbcConfig.class)  //加载JdbcConfig配置类 public class SpringConfig {}3 注解开发为第三方Bean注入资源【重点】 问题导入 思考:配置类中如何注入简单类型数据如何注入引用类型数据 3.1 简单类型依赖注入 public class JdbcConfig {Value(com.mysql.jdbc.Driver)private String driver;Value(jdbc:mysql://localhost:3306/spring_db)private String url;Value(root)private String userName;Value(root)private String password;//1.定义一个方法获得要管理的对象//2.Bean表示当前方法的返回值是一个bean对象添加到IOC容器中Beanpublic DataSource dataSource(){DruidDataSource ds  new DruidDataSource();ds.setDriverClassName(driver);ds.setUrl(url);ds.setUsername(userName);ds.setPassword(password);return ds;} }说明如果Value()中使用了EL表达式读取properties属性文件中的内容那么就需要加载properties属性文件。 3.2 引用类型依赖注入 //Spring会自动从IOC容器中根据类型找到StudentDao对象赋值给参数studentDao变量如果没有就会报错。Beanpublic DataSource dataSource(StudentDao studentDao){System.out.println(JdbcConfig  studentDao    studentDao);DruidDataSource ds  new DruidDataSource();ds.setDriverClassName(driver);ds.setUrl(url);ds.setUsername(userName);ds.setPassword(password);return ds;}注意引用类型注入只需要为bean定义方法设置形参即可容器会根据类型自动装配对象 3.3 测试类 Testpublic void testDatasource() throws SQLException {//目标从IOC容器中获取德鲁伊连接池对象//1.AnnotationConfigApplicationContext加载Spring配置类初始化Spring容器AnnotationConfigApplicationContext ac  new AnnotationConfigApplicationContext(SpringConfig.class);//按类型获取beanDataSource dataSource  ac.getBean(DataSource.class);Connection connection  dataSource.getConnection();//3.打印对象System.out.println(连接池对象dataSource);System.out.println(连接象地址connection);//4.关闭容器ac.close();}3.4 注解开发总结
http://www.w-s-a.com/news/363078/

相关文章:

  • 如何进行网站建设分析济宁做企业网站
  • 长沙网站seo技巧wordpress插件头像
  • appserv做网站教程微信信息流广告案例
  • 前端网站开发兼职长春火车站地下停车场收费标准
  • 苏州推广网站建设概况大连公交app
  • 移动互联网站开发与维护招聘网站建设计入什么费用
  • 郑州营销型网站建设erp系统有什么用
  • 公司网站开发费怎么入账投放广告网站
  • 企业网站开发文献综述加盟网网站建设策划书
  • 最便宜的网站空间网站建设和app开发
  • 承装承修承试材料在哪个网站做如何用虚拟主机建设网站
  • 如何建一个外贸网站网页设计零基础学习课程
  • 营销型外贸网站广州昆明建设网站制作
  • 网页制作网站素材项目建设全过程管理
  • 正能量网站下载柬埔寨网赌网站开发
  • 如何免费建设公司网站广州传业建设有限公司网站
  • 织梦做的网站快照被攻击张家口网站建设公司
  • 平顶山公司网站建设南昌网站seo多少钱
  • 网站开发要先买服务器吗建设婚恋网站用什么搭建
  • 我想自己在网站上发文章 怎样做wordpress站点安装
  • 北京模板网站开发全包昆明网站开发正规培训
  • 西咸新区建设环保网站谷歌风格wordpress
  • 嘉兴港区建设局网站2018年网站开发
  • 网站里图片做超链接专业开发网站报价单
  • server2003网站建设做销售记住这十句口诀
  • microsoft免费网站网站后台登陆路径
  • 贵州住房和城乡建设局网站做网站排名费用多少钱
  • 现在个人做网站还能盈利吗xampp用wordpress
  • 做网站 租服务器温岭建设公司网站
  • 四川住房和城乡建设厅网站官网做网站最贵