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

海口网站建设服务企业为什么建设网站

海口网站建设服务,企业为什么建设网站,国内前10电商代运营公司,上海手机网站建设价格#x1f40c;个人主页#xff1a; #x1f40c; 叶落闲庭 #x1f4a8;我的专栏#xff1a;#x1f4a8; c语言 数据结构 javaweb 石可破也#xff0c;而不可夺坚#xff1b;丹可磨也#xff0c;而不可夺赤。 Spring注解开发 一、注解开发定义Bean二、纯注解开发Bean三… 个人主页 叶落闲庭 我的专栏 c语言 数据结构 javaweb 石可破也而不可夺坚丹可磨也而不可夺赤。 Spring注解开发 一、注解开发定义Bean二、纯注解开发Bean三、bean的管理3.1bean的作用范围3.2bean的生命周期 四、注解开发依赖注入五、bean管理5.1第三方bean管理5.2第三方bean依赖注入5.2.1简单依赖注入5.2.2引用依赖注入 一、注解开发定义Bean 使用Component定义bean: Component(bookDao) public class BookDaoImpl1 implements BookDao {Overridepublic void save() {System.out.println(BookDao save...);} } 核心配置文件中通过组件扫描加载bean: context:component-scan base-packagecom.practice/代码效果 public class App1 {public static void main(String[] args) {ApplicationContext act new ClassPathXmlApplicationContext(applicationContext1.xml);BookDao bookDao (BookDao) act.getBean(bookDao);System.out.println(bookDao);//按类型找BookService bookService act.getBean(BookService.class);System.out.println(bookService);} }Spring提供Component注解的三个衍生注解 Controller用于表现层bean定义Service用于业务层bean定义Repository用于数据层bean定义 二、纯注解开发Bean java类代替了Spring核心配置文件Spring核心配置文件 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:contexthttp://www.springframework.org/schema/contextxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsdcontext:component-scan base-packagecom.practice/ /beansjava类 Configuration ComponentScan(com.practice) public class SpringConfig {}Configuration表示配置文件当前类为配置类ComponentScan表示扫描包下的配置信息设定扫描路径此注解只能添加一次多个数据请用数组格式。 ComponentScan({com.practice.dao,com.practice.service})读取Spring核心配置文件初始化容器切换为读取Java配置类初始化容器对象 //读取Spring核心配置文件 ApplicationContext act new ClassPathXmlApplicationContext(applicationContext1.xml);//读取Java配置类 ApplicationContext act new AnnotationConfigApplicationContext(SpringConfig.class);三、bean的管理 3.1bean的作用范围 单例对象 Repository(bookDao1) Scope(singleton) public class BookDaoImpl2 implements BookDao {Overridepublic void save() {System.out.println(BookDao save...);} }Configuration ComponentScan(com.practice) public class SpringConfig {}public class AppForAnnotation1 {public static void main(String[] args) {ApplicationContext act new AnnotationConfigApplicationContext(SpringConfig.class);BookDao bookDao1 (BookDao) act.getBean(bookDao1);BookDao bookDao2 (BookDao) act.getBean(bookDao1);System.out.println(bookDao1);System.out.println(bookDao2);} }非单例 Repository(bookDao1) Scope(singleton) public class BookDaoImpl2 implements BookDao {Overridepublic void save() {System.out.println(BookDao save...);} }Configuration ComponentScan(com.practice) public class SpringConfig {}public class AppForAnnotation1 {public static void main(String[] args) {ApplicationContext act new AnnotationConfigApplicationContext(SpringConfig.class);BookDao bookDao1 (BookDao) act.getBean(bookDao1);BookDao bookDao2 (BookDao) act.getBean(bookDao1);System.out.println(bookDao1);System.out.println(bookDao2);} }使用Scope(singleton)定义bean的作用范围 3.2bean的生命周期 使用PostConstruct、PreDestroy定义bean的生命周期 Repository(bookDao1) Scope(singleton) public class BookDaoImpl2 implements BookDao {Overridepublic void save() {System.out.println(BookDao save...);}PostConstructpublic void init() {System.out.println(BookDao init...);}PreDestroypublic void destroy() {System.out.println(BookDao destroy...);}}四、注解开发依赖注入 使用Autowired注解开启自动装配模式按类型 Service public class BookServiceImpl implements BookService {Autowiredprivate BookDao bookDao;Overridepublic void save() {System.out.println(bookService save...);bookDao.save();} }自动装配基于反射设计创建对象并暴力反射对应属性为私有属性初始化数据因此无需提供setter方法自动装配建议使用无参构造方法创建对象默认如果不提供对应构造方法请提供唯一的构造方法使用Qualifier注解开启指定名称装配bean Service public class BookServiceImpl implements BookService {AutowiredQualifier(bookDao2)private BookDao bookDao;Overridepublic void save() {System.out.println(bookService save...);bookDao.save();} }注意Qualifier注解无法单独使用必须配合Autowired注解使用使用Value()实现简单注入 Repository(bookDao)public class BookDaoImpl1 implements BookDao {Value(practice)private String name;Overridepublic void save() {System.out.println(BookDao save... name);} }使用PropertySource注解加载properties文件 Configuration ComponentScan(com.practice) PropertySource({jdbc3.properties}) public class SpringConfig { }注意路径仅支持单一文件配置多文件请使用数组格式配置不能使用通配符* 五、bean管理 5.1第三方bean管理 使用Bean配置第三方bean public class JdbcConfig {//1.定义方法获得要管理的对象//2.添加注解Beanpublic DataSource dataSource(){DruidDataSource ds new DruidDataSource();ds.setDriverClassName(com.mysql.jdbc.Driver);ds.setUrl(jdbc:mysql://localhost:3306/mybatis);ds.setUsername(root);ds.setPassword(123456);return ds;} }将独立的配置类加入核心配置 方式一导入式 public class JdbcConfig {//1.定义方法获得要管理的对象//2.添加注解Beanpublic DataSource dataSource(){DruidDataSource ds new DruidDataSource();ds.setDriverClassName(com.mysql.jdbc.Driver);ds.setUrl(jdbc:mysql://localhost:3306/mybatis);ds.setUsername(root);ds.setPassword(123456);return ds;} } 使用注解手动加入配置类到核心配置此注解只能添加一次多个数据采用数组形式 Import({JdbcConfig.class}) public class SpringConfig { }将独立的配置加入核心配置方式二扫描式 Configuration public class JdbcConfig {//1.定义方法获得要管理的对象//2.添加注解Beanpublic DataSource dataSource(){DruidDataSource ds new DruidDataSource();ds.setDriverClassName(com.mysql.jdbc.Driver);ds.setUrl(jdbc:mysql://localhost:3306/mybatis);ds.setUsername(root);ds.setPassword(123456);return ds;} }使用注解扫描配置类所在的包加载对应的配置类信息 Configuration ComponentScan(com.practice) public class SpringConfig { }5.2第三方bean依赖注入 5.2.1简单依赖注入 public class JdbcConfig {Value(com.mysql.jdbc.Driver)private String driver;Value(jdbc:mysql://localhost:3306/mybatis)private String url;Value(root)private String userName;Value(123456)private String passWord;//1.定义方法获得要管理的对象//2.添加注解Beanpublic DataSource dataSource(){DruidDataSource ds new DruidDataSource();ds.setDriverClassName(driver);ds.setUrl(url);ds.setUsername(userName);ds.setPassword(passWord);return ds;} }5.2.2引用依赖注入 引用类型注入只需要为bean定义方法设置形参即可容器会根据类型自动装配对象 Beanpublic DataSource dataSource(BookService bookService){DruidDataSource ds new DruidDataSource();ds.setDriverClassName(driver);ds.setUrl(url);ds.setUsername(userName);ds.setPassword(passWord);return ds;}
http://www.hkea.cn/news/14370668/

相关文章:

  • 固安建设行政主管部门官方网站wordpress 小工具移动
  • 做网站优化常用工具深圳商城网站公司
  • 类似卡盟网站卖怎么做替别人做网站管理员
  • 东营网站建设那家好江苏建设工程信息网网
  • 罗琳做的网站婚恋网站模板下载
  • 浙江省一建建设集团网站首页免费网站打包app
  • 做动图网站网站开发 流程图
  • 做网站个网站要多少钱网站建设 体会
  • 做服务网站要多少钱杭州如何做百度的网站
  • 怎样做静态网站竞价账户托管哪家好
  • 外贸网站怎么做才好wordpress api文档
  • 电脑经销部开具网站建设费wordpress综合网
  • 企业商务网站建设的基本方法辽宁工程建设工程信息网站
  • 上海 网站建设 外包网站异常传播怎么解除
  • 网站开发 模板 c怎么在百度推广
  • 网站开发是做什么的张雪峰谈服装与服饰设计专业
  • 网址大全有哪些关键词优化怎么弄
  • 什么网站可以做产品入驻天元建设集团有限公司承兑
  • 电子商务网站建设期末题库室内设计书籍
  • 网站内容页收录站长网站统计
  • 免费英文 网站模板网站域名如何优化
  • 网站建设硬件计划大学生网页设计作业源文件
  • 什么叫网站前台wordpress不同列表页
  • 网站建设开发三层架构网站建设基本步骤顺序
  • 自建购物网站生鲜电商网站建设与管理
  • 莆田外贸专业建站南昌微信公众号开发
  • 网站开发需求分析报告网站开发维护专员岗位职责
  • 河南郑州创建网站公司世界排行榜前十名
  • 丽水市城市建设投资有限责任公司网站seo的含义
  • 莆田建设银行官方网站电子商务网站开发 刘兰娟