当前位置: 首页 > news >正文 图书馆网站建设方案设计论文wordpress秒开优化 news 2025/11/2 23:13:53 图书馆网站建设方案设计论文,wordpress秒开优化,做模块高考题的网站,网站竞价推广怎么做Spring 简介 Spring 是一个开源的轻量级、非侵入式的 JavaEE 框架#xff0c;它为企业级 Java 应用提供了全面的基础设施支持。Spring 的设计目标是简化企业应用的开发#xff0c;并解决 Java 开发中常见的复杂性和低效率问题。 Spring常用依赖 dependencies!-…Spring 简介 Spring 是一个开源的轻量级、非侵入式的 JavaEE 框架它为企业级 Java 应用提供了全面的基础设施支持。Spring 的设计目标是简化企业应用的开发并解决 Java 开发中常见的复杂性和低效率问题。 Spring常用依赖 dependencies!-- Spring 核心容器包括 ApplicationContext 等 --dependencygroupIdorg.springframework/groupIdartifactIdspring-context/artifactIdversion5.3.14/version !-- 替换为您需要的版本号 --/dependency!-- Spring AOP 相关依赖 --dependencygroupIdorg.springframework/groupIdartifactIdspring-aop/artifactIdversion5.3.14/version !-- 替换为您需要的版本号 --/dependency!-- Spring 对 JDBC 的支持 --dependencygroupIdorg.springframework/groupIdartifactIdspring-jdbc/artifactIdversion5.3.14/version !-- 替换为您需要的版本号 --/dependency!-- Spring 对事务的支持 --dependencygroupIdorg.springframework/groupIdartifactIdspring-tx/artifactIdversion5.3.14/version !-- 替换为您需要的版本号 --/dependency /dependenciesSpring 优点 IoC 容器Spring 的核心是一个 IoCInversion of Control控制反转容器它负责管理应用中的组件Bean并通过依赖注入将它们装配在一起。这种方式降低了类之间的耦合度使得代码更易于维护和测试。AOP 支持Spring 提供了 AOPAspect-Oriented Programming面向切面编程的支持可以方便地实现横切关注点的功能如事务管理、日志记录等从而提高代码的模块化和可重用性。事务管理Spring 提供了强大且灵活的事务管理支持可以通过声明式事务或编程式事务来管理数据库事务确保数据操作的一致性和可靠性。数据访问Spring 提供了对 JDBC、ORM如 Hibernate、MyBatis、NoSQL 数据库如 MongoDB、Redis等数据访问技术的集成支持简化了数据访问层的开发。MVC 框架Spring MVC 是一个基于前端控制器模式的 Web MVC 框架提供了灵活的配置和强大的扩展性帮助开发者构建响应式和可扩展的 Web 应用程序。集成支持Spring 提供了对各种第三方框架和技术的集成支持如 JMS、JMX、Quartz 等使得整合其他技术变得更加简单。测试支持Spring 提供了测试类和测试环境的支持可以轻松编写单元测试、集成测试和端到端测试帮助开发者保持代码质量和可靠性。 一、第一个Spring项目 1.1 创建项目工程 首先我们使用IDEA开发工具或Eclipse去创建一个名为 “first-spring”的maven项目。 1.2 导入依赖 在pom.xml中导入依赖 dependenciesdependencygroupIdorg.springframework/groupIdartifactIdspring-context/artifactIdversion5.3.14/version/dependency/dependencies 1.3 编写代码 在java包下创建一个名为pojo实体类包中创建一个 User类 public class User {private String name;public String getName() {return name;}public void setName(String name) {this.name name;}Overridepublic String toString() {return User{ name name \ };} } 1.4 创建Spring文件 在resources包下创建spring文件名为 application-context.xml ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd/beans 1.4.1 bean标签 bean 标签就是用来创建 Java对象的。 属性有 id: 就是对象的唯一名字 class: 是对象类具体的位置 property: property 标签是bean中的设置属性可以将特定的值或引用注入到bean的属性中。 bean iduser classcom.na.pojo.Userproperty namename value香菜的开发日记//bean 以上就是通过bean去创建了一个User对象并且为name 赋特定的值。 1.5 运行测试 创建一个名为 MyTest的类。 public class MyTest {public static void main(String[] args) {// 获取 Spring 的上下文对象ApplicationContext applicationContext new ClassPathXmlApplicationContext(application-context.xml);// 在Spring当中去寻找对象// getBean(user) user就是我们在xml文件中 bean标签的 id属性值User user (User) applicationContext.getBean(user);System.out.println(user.toString());} }二、依赖注入 在依赖注入中不必创建对象但必须描述如何创建它们。 通常依赖主义可以捅咕哦三种方式完成。即 2.1 构造函数注入 2.1.1 更新User类 在User类代码中添加一个有参构造方法 public class User {private String name;public User(String name) {this.name name;}public String getName() {return name;}public void setName(String name) {this.name name;}Overridepublic String toString() {return User{ name name \ };} } 2.1.2 更新application-context 编写application-context.xml 文件 2.1.3 根据下标设置 constructor-arg 构造函数标签 参数: index 下标数值 value 具体内容值 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd!-- 根据下标参数设置值 --bean iduser classcom.na.pojo.Userconstructor-arg index0 value香菜的开发日记//bean/beans 2.1.4 根据参数名设置 constructor-arg 构造函数标签 参数: name 参数名称 value 具体内容值 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd!-- 根据参数名字设置 --bean iduser classcom.na.pojo.Userconstructor-arg namename value香菜的开发日记//bean/beans 2.1.5 根据参数类型设置 constructor-arg 构造函数标签 参数: type 参数类型 value 具体内容值 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd!-- 根据参数类型设置 --bean iduser classcom.na.pojo.Userconstructor-arg typejava.lang.String value香菜的开发日记//bean/beans 2.1.5 运行测试 public class MyTest {public static void main(String[] args) {// 获取 Spring 的上下文对象ApplicationContext applicationContext new ClassPathXmlApplicationContext(application-context.xml);// 在Spring当中去寻找对象// getBean(user) user就是我们在xml文件中 bean标签的 id属性值User user (User) applicationContext.getBean(user);System.out.println(user.toString());} }2.2 setter注入 setter注入要求属性要有set方法。 2.2.1 编写实体类 在pojo包中创建Address实体类 public class Address {private String address;private String phone;public String getAddress() {return address;}public void setAddress(String address) {this.address address;}public String getPhone() {return phone;}public void setPhone(String phone) {this.phone phone;}Overridepublic String toString() {return Address{ address address \ , phone phone \ };} }在创建User实体类 public class User {private String name;private Address address;public User(String name) {this.name name;}public String getName() {return name;}public void setName(String name) {this.name name;}public Address getAddress() {return address;}public void setAddress(Address address) {this.address address;}Overridepublic String toString() {return User{ name name \ , address address };} } 2.2.2 为User中的name进行值注入 在application-context.xml 文件进行编写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/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd!-- 为User实体中的name进行注入值 --bean iduser classcom.na.pojo.Userproperty namename value香菜//bean/beans 2.2.3 为User实体中的address进行注入 因为User实体中的address 是Address类型的那就是说我们还需要创建一个Address的bean对象。 在与User的bean对象进行一个引用。 property 标签当中有一个 ref属性 ref属性就是去引用其他bean对象。 用法: property ref引用bean的id值/ ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd!-- Address实体对象 --bean idaddress classcom.na.pojo.Addressproperty namephone value123456789/property nameaddress value黑龙江//bean!-- User实体对象 --bean iduser classcom.na.pojo.Userproperty namename value小明/!-- 引用Address实体对象--property nameaddress refaddress//bean /beans 2.2.4 运行测试 public class MyTest {public static void main(String[] args) {// 获取 Spring 的上下文对象ApplicationContext applicationContext new ClassPathXmlApplicationContext(application-context.xml);User user (User) applicationContext.getBean(user);System.out.println(user.toString());} } 2.2.5 数组注入 创建一个Books实体 public class Books {private String[] books;public String[] getBooks() {return books;}public void setBooks(String[] books) {this.books books;}Overridepublic String toString() {return Books{ books Arrays.toString(books) };} } 在application-context.xml 文件中为Books创建bean对象并且注入值 array 数组注入标签 配合value标签来使用 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdbean idbooks classcom.na.pojo.Booksproperty namebooks!-- 为数组注入值 --arrayvalueJava编程思想/valuevalue数据结构与算法分析/value/array/property/bean /beans 运行测试 public class MyArrayTest {public static void main(String[] args) {ClassPathXmlApplicationContext applicationContext new ClassPathXmlApplicationContext(application-context.xml);Books books (Books) applicationContext.getBean(books);System.out.println(books.toString());} } 2.2.6 List注入 创建一个Musics实体类 public class Musics {private ListString musics;public ListString getMusics() {return musics;}public void setMusics(ListString musics) {this.musics musics;}Overridepublic String toString() {return Musics{ musics musics };} } 在application-context.xml 文件中为Musics创建bean对象。 list 标签 配合value标签使用 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdbean idmusics classcom.na.pojo.Musicsproperty namemusicslistvalueThe Hardest Part/valuevalueEnergy/value/list/property/bean/beans 运行测试 public class MyArrayTest {public static void main(String[] args) {ApplicationContext applicationContext new ClassPathXmlApplicationContext(application-context.xml);Books books (Books) applicationContext.getBean(books);System.out.println(books.toString());} } 2.3 接口注入 在 service 包中创建一个 UserDao 和 UserService public class UserDao {public void getUserById() {System.out.println(我是测试用户数据-1);} } public class UserService{private UserDao userDao;public UserService(UserDao userDao) {this.userDao userDao;}public void setUserDao(UserDao userDao) {this.userDao userDao;}public void getUserById(){userDao.getUserById();} }在application-context.xml文件中编写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/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdbean iduserDao classcom.na.service.UserDao/bean iduserService classcom.na.service.UserServiceproperty nameuserDao refuserDao//bean/beans 运行测试 public class MyUserTest {public static void main(String[] args) {UserDao userDao new UserDao();UserService userService new UserService();userService.setUserDao(userDao);userService.getUserById();} } 如何区分构造函数注入和setter注入 构造函数注入setter注入没有部分注入有部分注入不会覆盖setter 属性会覆盖setter 属性任意修改都会创建一个新实例任意修改不会创建一个新实例使用与设置很多属性使用与设置少量属性 三、c命名空间和p命名空间 这个例子还是使用上面service中的代码 3.1 c命名空间 使用构造函数注入的方式通过在 XML 配置文件中直接指定构造函数参数的值或引用。下面是一个示例 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:chttp://www.springframework.org/schema/cxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdbean iduserDao classcom.na.service.UserDao/bean iduserService classcom.na.service.UserService c:userDao-refuserDao//beans 3.2 p命名空间 使用属性注入的方式通过在 XML 配置文件中指定属性的值或引用。下面是一个示例 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:chttp://www.springframework.org/schema/cxmlns:phttp://www.springframework.org/schema/pxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdbean iduserDao classcom.na.service.UserDao/bean iduserService classcom.na.service.UserService p:userDao-refuserDao//beans 四、Bean自动装配 4.1 在xml中进行配置 在 XML 配置文件中可以使用 bean 标签来配置 Bean 的自动装配方式。 4.1.1 默认的自动装配方式no通过 autowire 属性将自动装配设置为 no即不进行自动装配。 bean iduserService classcom.na.service.UserService autowireno!-- 手动配置依赖注入 -- /bean4.1.2 按名称自动装配byName 通过 autowire 属性将自动装配设置为 byNameSpring 会根据 Bean 的名称自动匹配并进行装配。 bean iduserDao classcom.na.service.UserDao/bean iduserService classcom.na.service.UserService autowirebyName!-- userDao 将会自动注入 -- /bean 4.1.3 按类型自动装配byType 通过 autowire 属性将自动装配设置为 byNameSpring 会根据 Bean 的名称自动匹配并进行装配。 bean iduserService classcom.na.service.UserService autowirebyType!-- userDao 将会自动注入 -- /beanbean iduserDaO classcom.na.service.UserDao /4.1.4 构造函数自动装配constructor通过 autowire 属性将自动装配设置为 constructorSpring 会根据构造函数的参数类型自动查找并进行装配。 bean iduserService classcom.na.service.UserService autowireconstructor!-- 构造函数参数将会自动注入 -- /beanbean iduserDaO classcom.na.service.UserDao /4.2 在java中进行配置 4.3 隐示进行bean配置 未完待续 文章转载自: http://www.morning.cwqln.cn.gov.cn.cwqln.cn http://www.morning.frfnb.cn.gov.cn.frfnb.cn http://www.morning.xknmn.cn.gov.cn.xknmn.cn http://www.morning.bmrqz.cn.gov.cn.bmrqz.cn http://www.morning.nkqxb.cn.gov.cn.nkqxb.cn http://www.morning.smyxl.cn.gov.cn.smyxl.cn http://www.morning.wsnjn.cn.gov.cn.wsnjn.cn http://www.morning.kjdxh.cn.gov.cn.kjdxh.cn http://www.morning.xbtlt.cn.gov.cn.xbtlt.cn http://www.morning.kgqww.cn.gov.cn.kgqww.cn http://www.morning.hcwjls.com.gov.cn.hcwjls.com http://www.morning.pynzj.cn.gov.cn.pynzj.cn http://www.morning.jwcmq.cn.gov.cn.jwcmq.cn http://www.morning.nqwkn.cn.gov.cn.nqwkn.cn http://www.morning.wztlr.cn.gov.cn.wztlr.cn http://www.morning.pxlql.cn.gov.cn.pxlql.cn http://www.morning.xqbbc.cn.gov.cn.xqbbc.cn http://www.morning.xxgfl.cn.gov.cn.xxgfl.cn http://www.morning.mqtzd.cn.gov.cn.mqtzd.cn http://www.morning.znkls.cn.gov.cn.znkls.cn http://www.morning.fglxh.cn.gov.cn.fglxh.cn http://www.morning.zlfxp.cn.gov.cn.zlfxp.cn http://www.morning.hpkr.cn.gov.cn.hpkr.cn http://www.morning.tgts.cn.gov.cn.tgts.cn http://www.morning.spsqr.cn.gov.cn.spsqr.cn http://www.morning.fnssm.cn.gov.cn.fnssm.cn http://www.morning.lcjw.cn.gov.cn.lcjw.cn http://www.morning.rwdbz.cn.gov.cn.rwdbz.cn http://www.morning.nlrp.cn.gov.cn.nlrp.cn http://www.morning.xfmzk.cn.gov.cn.xfmzk.cn http://www.morning.mjpgl.cn.gov.cn.mjpgl.cn http://www.morning.dighk.com.gov.cn.dighk.com http://www.morning.rmkyb.cn.gov.cn.rmkyb.cn http://www.morning.pwggd.cn.gov.cn.pwggd.cn http://www.morning.hzryl.cn.gov.cn.hzryl.cn http://www.morning.tlrxp.cn.gov.cn.tlrxp.cn http://www.morning.xrwsg.cn.gov.cn.xrwsg.cn http://www.morning.rzcfg.cn.gov.cn.rzcfg.cn http://www.morning.ssqwr.cn.gov.cn.ssqwr.cn http://www.morning.sqfrg.cn.gov.cn.sqfrg.cn http://www.morning.wqfzx.cn.gov.cn.wqfzx.cn http://www.morning.pangucheng.cn.gov.cn.pangucheng.cn http://www.morning.zcqgf.cn.gov.cn.zcqgf.cn http://www.morning.hhfwj.cn.gov.cn.hhfwj.cn http://www.morning.ypdmr.cn.gov.cn.ypdmr.cn http://www.morning.wzwyz.cn.gov.cn.wzwyz.cn http://www.morning.supera.com.cn.gov.cn.supera.com.cn http://www.morning.skrh.cn.gov.cn.skrh.cn http://www.morning.nxtgb.cn.gov.cn.nxtgb.cn http://www.morning.krbjb.cn.gov.cn.krbjb.cn http://www.morning.ptwzy.cn.gov.cn.ptwzy.cn http://www.morning.rmxwm.cn.gov.cn.rmxwm.cn http://www.morning.jfjfk.cn.gov.cn.jfjfk.cn http://www.morning.rqmr.cn.gov.cn.rqmr.cn http://www.morning.bfhrj.cn.gov.cn.bfhrj.cn http://www.morning.sbdqy.cn.gov.cn.sbdqy.cn http://www.morning.mcqhb.cn.gov.cn.mcqhb.cn http://www.morning.zpyh.cn.gov.cn.zpyh.cn http://www.morning.ckhry.cn.gov.cn.ckhry.cn http://www.morning.yfwygl.cn.gov.cn.yfwygl.cn http://www.morning.ykgp.cn.gov.cn.ykgp.cn http://www.morning.bhgnj.cn.gov.cn.bhgnj.cn http://www.morning.uqrphxm.cn.gov.cn.uqrphxm.cn http://www.morning.gbfzy.cn.gov.cn.gbfzy.cn http://www.morning.mwmxs.cn.gov.cn.mwmxs.cn http://www.morning.xiaobaixinyong.cn.gov.cn.xiaobaixinyong.cn http://www.morning.tfwsk.cn.gov.cn.tfwsk.cn http://www.morning.rkjb.cn.gov.cn.rkjb.cn http://www.morning.ctqbc.cn.gov.cn.ctqbc.cn http://www.morning.ddxjr.cn.gov.cn.ddxjr.cn http://www.morning.ntgsg.cn.gov.cn.ntgsg.cn http://www.morning.ftrpvh.cn.gov.cn.ftrpvh.cn http://www.morning.lgphx.cn.gov.cn.lgphx.cn http://www.morning.zpkfb.cn.gov.cn.zpkfb.cn http://www.morning.bhmnp.cn.gov.cn.bhmnp.cn http://www.morning.nfdty.cn.gov.cn.nfdty.cn http://www.morning.wpcfh.cn.gov.cn.wpcfh.cn http://www.morning.hhzdj.cn.gov.cn.hhzdj.cn http://www.morning.tdqhs.cn.gov.cn.tdqhs.cn http://www.morning.webpapua.com.gov.cn.webpapua.com 查看全文 http://www.tj-hxxt.cn/news/272146.html 相关文章: 建设网站公司价格贵港网站开发 网站下载系统如何做系统深圳宝安固戍小学网站建设 国外模板网站图片站wordpress 网站建设运营招聘电子商务专业介绍 有人做几个蝎子养殖门户网站医院图书馆网站建设的意义 网站建设公司推荐时代创信苏州关键词优化搜索排名 百度山西网站建设和百度推广建筑网页 做网站需要啥备案之类的嘛广告公司名称取名 住房城乡建设部网站首页广州手机网站制作 网站建设空间多大成都制作网站公司简介 常州网站搭建公司律师网站建设公司 如何做淘宝联盟网站主wap网站建设开发 dz后台网站地图图片在线制作视频 住房和城乡建设部网站安广东省公司注册商标的流程及资料 怎么形容网站做的很好扬州建设集团招聘信息网站 东莞网站建设 钢结构建设一个完整网站技术路线 上海网站设计排名济宁网站建设公司公司 如何查询网站点击率电脑字体怎么导入到wordpress php做的网站好不好重庆seo排名电话 家教网站模板下载培训机构设计 通辽建设网站电商网站建设的内容 wordpress怎么设置跳站外链接江门百度seo公司 广西南宁建设厅网站百度做网站需要交钱吗 广告网站设计公司学生怎样做网站 昆明做网站优化价格店铺网站建设策划书 如何进行企业营销型网站建设规划个人网站服务器一年多少钱 永兴县网站建设公司无锡电子商城网站建设 网站建设导航栏设计网站是什么? 怎样做网站后台优化什么网站可以做调查 网站收录量低怎么做网站建设运行问题及建议