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

企业网站群建设的原因腾讯企业邮箱域名可以做网站吗

企业网站群建设的原因,腾讯企业邮箱域名可以做网站吗,网站开发费怎么入账,ppt模板免费网站在线制作初始Spring 一、Spring核心概念1.1IoC(Inversion of Contral)#xff1a;控制反转1.2IoC代码实现1.2DI代码实现 二、bean的相关操作2.1bean的配置2.1.1bean的基础配置2.1.2bean的别名配置2.1.3bean的作用范围配置 2.2bean的实例化 - - 构造方法2.3bean的实例化 - - 实例工厂与… 初始Spring 一、Spring核心概念1.1IoC(Inversion of Contral)控制反转1.2IoC代码实现1.2DI代码实现 二、bean的相关操作2.1bean的配置2.1.1bean的基础配置2.1.2bean的别名配置2.1.3bean的作用范围配置 2.2bean的实例化 - - 构造方法2.3bean的实例化 - - 实例工厂与FactoryBean2.4bean的生命周期 总结 一、Spring核心概念 1.1IoC(Inversion of Contral)控制反转 代码书写现状 耦合度偏高 解决方案 使用对象时在程序中不要主动使用new产生对象转换为由外部提供对象 IoC(Inversion of Contral)控制反转 对象的创建控制权由程序转移到外部这种思想称为控制反转 Spring技术对IoC思想进行了实现 Spring提供了一个容器称为IoC容器用来充当IoC思想中的“外部” IoC容器负责对象的创建、初始化等一系列工作被创建或被管理的对象在IoC容器中统称为Bean DI(Dependency Injection)依赖注入 在容器中建立bean与bean之间的依赖关系的整个过程称为依赖注入 1.2IoC代码实现 1.导入Spring坐标 dependencygroupIdorg.springframework/groupIdartifactIdspring-context/artifactIdversion5.2.21.RELEASE/version /dependency2.定义Spring管理类 package com.practice.dao;/*** Author YJ* Date 2023/7/25 11:26* Description:*/ public interface BookDao {void save(); } package com.practice.service;/*** Author YJ* Date 2023/7/25 11:28* Description:*/ public interface BookService {void save(); } package com.practice.service.impl;import com.practice.dao.BookDao; import com.practice.dao.impl.BookDaoImpl; import com.practice.service.BookService;/*** Author YJ* Date 2023/7/25 11:28* Description:*/ public class BookServiceImpl implements BookService {private BookDao bookDao new BookDaoImpl();public void save() {bookDao.save();} } 3.创建Spring配置文件applicationContext.xml配置对应类作为Spring管理的bean ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd!--1.导入spring的坐标spring-context对应的版本号是5.2.21.RELEASE--!--2.配置bean--bean idbookDao classcom.practice.dao.impl.BookDaoImpl/bean idbookService classcom.practice.service.impl.BookServiceImpl/ /beans4.初始化IoC容器Spring核心容器/Spring容器通过容器获取bean public class App {public static void main(String[] args) {//获取IoC容器ApplicationContext act new ClassPathXmlApplicationContext(applicationContext.xml);//获取bean/*BookDao bookDao (BookDao) act.getBean(bookDao);bookDao.save();*/BookService bookService (BookService) act.getBean(bookService);bookService.save();} }1.2DI代码实现 1.删除业务层中使用new的方式创建的dao对象2.提供对应的setter方法3.配置service与dao的关系 property标签表示配置当前bean的属性 name属性表示配置哪一个具体的属性 ref属性表示参照哪一个bean package com.practice.service.impl;import com.practice.dao.BookDao; import com.practice.service.BookService;public class BookServiceImpl implements BookService {//删除业务层中使用new的方式创建的dao对象private BookDao bookDao;public void save() {bookDao.save();}//提供对应的set方法public void setBookDao(BookDao bookDao) {this.bookDao bookDao;} }?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd!--1.导入spring的坐标spring-context对应的版本号是5.2.21.RELEASE--!--2.配置bean--bean idbookDao classcom.practice.dao.impl.BookDaoImpl/bean idbookService classcom.practice.service.impl.BookServiceImpl!--配置service与dao的关系--!--property标签表示配置当前bean的属性--!--name属性表示配置哪一个具体的属性--!--ref属性表示参照哪一个bean--property namebookDao refbookDao//bean /beans二、bean的相关操作 2.1bean的配置 2.1.1bean的基础配置 1.功能 定义Spring核心容器管理的对象2.格式 beansbean/bean/bean /beans3.属性 3.1id: bean的id使用容器可以通过id值获取对应的bean,在一个容器中id值唯一 3.2class: bean的类型即配置的bean的全路径类名 2.1.2bean的别名配置 别名配置就是在bean标签中添加一个name属性这个name属性就是bean的别名可以有多个别名中间用逗号、空格或分号隔开即可 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd!--1.导入spring的坐标spring-context对应的版本号是5.2.21.RELEASE--!--2.配置bean--bean idbookDao classcom.practice.dao.impl.BookDaoImpl/!--name起别名--bean idbookService nameservice classcom.practice.service.impl.BookServiceImpl!--配置service与dao的关系--!--property标签表示配置当前bean的属性--!--name属性表示配置哪一个具体的属性--!--ref属性表示参照哪一个bean--property namebookDao refbookDao//bean /beanspackage com.practice;import com.practice.dao.BookDao; import com.practice.service.BookService; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext;/*** Author YJ* Date 2023/7/25 11:33* Description:*/ public class App {public static void main(String[] args) {//获取IoC容器ApplicationContext act new ClassPathXmlApplicationContext(applicationContext.xml);//获取bean/*BookDao bookDao (BookDao) act.getBean(bookDao);bookDao.save();*/BookService bookService (BookService) act.getBean(service);//用到别名servicebookService.save();} } 若是bean的名称跟配置的不一致会出现NoSuchBeanDefinitionException异常表示该bean未定义 public class App {public static void main(String[] args) {//获取IoC容器ApplicationContext act new ClassPathXmlApplicationContext(applicationContext.xml);//获取bean/*BookDao bookDao (BookDao) act.getBean(bookDao);bookDao.save();*/BookService bookService (BookService) act.getBean(service1);//用到错误别名service1bookService.save();} } 2.1.3bean的作用范围配置 Spring默认配置的bean是一个单列的即只有一个bean对象如下所示 public class AppForScope {public static void main(String[] args) {//获取IoC容器ApplicationContext act new ClassPathXmlApplicationContext(applicationContext.xml);BookDao bookDao1 (BookDao) act.getBean(bookDao);BookDao bookDao2 (BookDao) act.getBean(bookDao);System.out.println(bookDao1);System.out.println(bookDao2);} } 我们可以通过配置bean的文件控制是否产生一个对象还是多个对象通过scope属性定义bean的作用范围可选范围如下 singleton:单例默认 prototype:非单例 适合交给容器进行管理的bean 表现层对象 业务层对象 数据层对象 工具对象 不适合交给容器进行管理的bean 封装实体的域对象 2.2bean的实例化 - - 构造方法 bean本质上就是对象创建bean使用构造方法完成 public class BookDaoImpl implements BookDao {private BookDaoImpl() {System.out.println(book dao constructor running...);}public void save() {System.out.println(bookDao save~);} }public class App {public static void main(String[] args) {//获取IoC容器ApplicationContext act new ClassPathXmlApplicationContext(applicationContext.xml);//获取beanBookDao bookDao (BookDao) act.getBean(bookDao);bookDao.save();} }?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd!--1.导入spring的坐标spring-context对应的版本号是5.2.21.RELEASE--!--2.配置bean--bean idbookDao classcom.practice.dao.impl.BookDaoImpl scopeprototype/!--name起别名--bean idbookService nameservice classcom.practice.service.impl.BookServiceImpl !--配置service与dao的关系--!--property标签表示配置当前bean的属性--!--name属性表示配置哪一个具体的属性--!--ref属性表示参照哪一个bean--property namebookDao refbookDao//bean /beans表明bean在创建时调用的无参构造方法无参构造方法如果不存在会抛出BeanCreationException异常 2.3bean的实例化 - - 实例工厂与FactoryBean ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd!--1.导入spring的坐标spring-context对应的版本号是5.2.21.RELEASE--!--2.配置bean--!--方式三使用实例化工厂实例化bean--bean iduserFactory classcom.practice.factory.UserDaoFactory/bean iduserDao factory-beanuserFactory factory-methodgetUserDao/ /beanspublic interface UserDao {public void save(); }public class UserDaoImpl implements UserDao {public void save() {System.out.println(UserDao save...);} }public class UserDaoFactory {public UserDao getUserDao(){return new UserDaoImpl();} } package com.practice;import com.practice.dao.UserDao; import com.practice.factory.UserDaoFactory; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext;/*** Author YJ* Date 2023/7/25 19:09* Description:*/ public class AppForInstanceUser {public static void main(String[] args) {/*//创建实例工厂对象UserDaoFactory userDaoFactory new UserDaoFactory();UserDao userDao userDaoFactory.getUserDao();userDao.save();*///获取IoC容器ApplicationContext act new ClassPathXmlApplicationContext(applicationContext.xml);//获取beanUserDao userDao (UserDao) act.getBean(userDao);userDao.save();} } 使用FactoryBean实例化bean package com.practice.factory;import com.practice.dao.UserDao; import com.practice.dao.impl.UserDaoImpl; import org.springframework.beans.factory.FactoryBean;/*** Author YJ* Date 2023/7/25 19:21* Description:使用FactoryBean实例化bean*/ public class UserDaoFactoryBean implements FactoryBeanUserDao {public UserDao getObject() throws Exception {//代替原始实例工厂中创建对象的方法return new UserDaoImpl();}public Class? getObjectType() {return UserDao.class;} } ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd!--方式三使用实例化工厂实例化bean--bean iduserFactory classcom.practice.factory.UserDaoFactory/bean iduserDao1 factory-beanuserFactory factory-methodgetUserDao/!--方式四使用FactoryBean实例化bean--bean iduserDao classcom.practice.factory.UserDaoFactoryBean//beans使用这种方式创建出的bean是单例的 可在UserDaoFactoryBean中实现方法isSingleton并返回false即可 public boolean isSingleton() {return false;}2.4bean的生命周期 生命周期从创建到消亡的完整过程bean生命周期bean从创建到消毁的整体过程bean生命周期控制在bean创建后到销毁前做一些事情 package com.practice.dao.impl;import com.practice.dao.BookDao;/*** Author YJ* Date 2023/7/25 11:24* Description:*/ public class BookDaoImpl1 implements BookDao {public void save() {System.out.println(bookDao save~);}//表示bean初始化public void init() {System.out.println(init...);}//表示bean销毁前对应操作public void destroy() {System.out.println(destroy...);} } ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd!--方式三使用实例化工厂实例化bean--!--bean iduserFactory classcom.practice.factory.UserDaoFactory/--!--bean iduserDao1 factory-beanuserFactory factory-methodgetUserDao/--!--方式四使用FactoryBean实例化bean--!--bean iduserDao classcom.practice.factory.UserDaoFactoryBean/--!--配置bean的生命周期--bean idbookDao classcom.practice.dao.impl.BookDaoImpl1 init-methodinit destroy-methoddestroy/ /beanspackage com.practice;import com.practice.dao.BookDao; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext;/*** Author YJ* Date 2023/7/25 19:40* Description:*/ public class AppForLifeCycle {public static void main(String[] args) {//获取IoC容器ClassPathXmlApplicationContextact new ClassPathXmlApplicationContext(applicationContext.xml);//获取beanBookDao bookDao (BookDao) act.getBean(bookDao);bookDao.save();//关闭容器才能看到destory方法的执行结果//1.暴力关闭act.close();//2.关闭钩子act.registerShutdownHook();} } package com.practice.service.impl;import com.practice.dao.BookDao; import com.practice.dao.impl.BookDaoImpl1; import com.practice.service.BookService; import org.springframework.beans.factory.DisposableBean; import org.springframework.beans.factory.InitializingBean;/*** Author YJ* Date 2023/7/25 11:28* Description:*/ public class BookServiceImpl1 implements BookService, InitializingBean, DisposableBean {private BookDao bookDao;public void save() {System.out.println(bookService save...);bookDao.save();}public void afterPropertiesSet() throws Exception {System.out.println(service init...);}public void destroy() throws Exception {System.out.println(service destroy...);}public void setBookDao(BookDaoImpl1 bookDao) {this.bookDaobookDao;} } package com.practice;import com.practice.dao.BookDao; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext;/*** Author YJ* Date 2023/7/25 19:40* Description:*/ public class AppForLifeCycle {public static void main(String[] args) {//获取IoC容器ClassPathXmlApplicationContext act new ClassPathXmlApplicationContext(applicationContext.xml);//获取beanBookDao bookDao (BookDao) act.getBean(bookDao);bookDao.save();//act.close();act.registerShutdownHook();} } ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd!--方式三使用实例化工厂实例化bean--!--bean iduserFactory classcom.practice.factory.UserDaoFactory/--!--bean iduserDao1 factory-beanuserFactory factory-methodgetUserDao/--!--方式四使用FactoryBean实例化bean--!--bean iduserDao classcom.practice.factory.UserDaoFactoryBean/--!--配置bean的生命周期--bean idbookDao classcom.practice.dao.impl.BookDaoImpl1 init-methodinit destroy-methoddestroy/bean idbookService classcom.practice.service.impl.BookServiceImpl1property namebookDao refbookDao//bean /beans总结 关于Spring的初步认识我们就学到这里了关于bean的操作我们有了基本的认识欢迎各位小伙伴点赞关注
http://wiki.neutronadmin.com/news/216986/

相关文章:

  • 建筑业招聘网站网站安装php
  • 湘潭网站建站公司网站页面优化内容包括哪些
  • 网站服务器错误工信部icp备案官网
  • 网站策划书格式自己怎么做优惠券网站
  • 做ppt模仿网站如何用百度上传图片做网站外链
  • 网站在建设中页面广东专业网站优化制作公司
  • 公司域名是什么seo的搜索排名影响因素主要有
  • 开一家代做网站的公司焦作专业做网站公司
  • 海外商城网站建设连云制作企业网站
  • 个人网站作品昆山 网站建设
  • php网站后台管理模板建筑业资质证书查询网
  • 潍坊 营销型网站建设专门的网页制作工具有()
  • 电子商务网站策划书布局设计林芝网站建设
  • 软膜做网站有用吗中国建设银行网站查征信
  • 专门做萝莉视频网站怎么创建网站 优帮云
  • 网页与网站的区别与联系是什么王烨华
  • 做个网站做什么呢网页设计教程多少钱
  • 中英文网站建设大概多少钱郑州人流医院哪家好
  • 网站后期wordpress sql优化
  • WordPress博客Vieu主题济南seo网站建设
  • 宝塔网站搭建教程上海办公室设计装修公司
  • 长沙网站备案什么是广告艺术设计
  • 精美的php个人网站源码河南网站备案代理
  • 筑云电商网站建设公司厦门网页设计代做
  • 滁州网站定制那个网站做外贸最好
  • 网站推广的网站深圳网站建设设
  • 网站及系统建设维护开发app需要的资源和团队
  • 网站安全维护方案电子商务网站开发系统
  • 福州做网站的公司文章 百度网站创建及发展历史
  • 美食网站制作代码临汾市建设局网站