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

有哪些可以做头像的网站网站开发的技术

有哪些可以做头像的网站,网站开发的技术,网站优化主旨,天津开发区网站设计公司前言 在本系列博客中#xff0c;我们将深入探讨 Spring Boot 项目结构的各个方面#xff0c;并探讨如何利用这些结构来构建健壮、可扩展的应用程序。通过深入了解 Spring Boot 项目结构#xff0c;我们可以更好地利用 Spring Boot 的优势#xff0c;提高开发效率#xff…前言 在本系列博客中我们将深入探讨 Spring Boot 项目结构的各个方面并探讨如何利用这些结构来构建健壮、可扩展的应用程序。通过深入了解 Spring Boot 项目结构我们可以更好地利用 Spring Boot 的优势提高开发效率降低维护成本并构建出高质量的应用程序。 在本系列的第一部分中我们将首先介绍 Spring Boot 项目结构的基本布局包括主要的目录和文件以及它们各自的作用。通过了解项目结构我们可以更好地组织我们的代码并充分利用 Spring Boot 提供的功能和特性。 一、新建项目结构如下 1、项目依赖 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersion!-- 这个父模块是springboot的父级依赖它提供了默认的Java版本、编码设置、插件管理、以及Maven依赖的版本号管理等功能因此在项目中引入先关starter的时候就不在需要指定版本号--parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.7.17/versionrelativePath/ !-- lookup parent from repository --/parent!-- 当前项目的GAV坐标以及名称和描述 --groupIdedu.nf/groupIdartifactIdch01/artifactIdversion0.0.1-SNAPSHOT/versionnamech01/namedescriptionch01/description!-- Java版本 --propertiesjava.version11/java.version/properties!-- 依赖--dependencies!-- 这是springboot核心starter也就是核心的启动器它包含了起步所需要的依赖自动化配置、日志、YAML配置功能所以没有它springboot无法正常工作--dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter/artifactId/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdoptionaltrue/optional/dependency!-- springboot集成单元测试的环境 --dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency/dependencies!-- 这个插件专门用于将springboot应用打包成jar或者war文件 --buildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdconfigurationimagebuilderpaketobuildpacks/builder-jammy-base:latest/builder/imageexcludesexcludegroupIdorg.projectlombok/groupIdartifactIdlombok/artifactId/exclude/excludes/configuration/plugin/plugins/build/project这些依赖都不用我们自己加在新建项目的时候选择。  这个 Maven POM 文件定义了一个基于 Spring Boot 的 Java 项目的配置和依赖。其中包括以下关键部分 parent 元素指定了当前项目的父级依赖为 spring-boot-starter-parent版本号为 2.7.17。这意味着该项目将继承 Spring Boot Starter Parent 提供的默认配置和依赖管理。 groupId、artifactId 和 version 元素定义了当前项目的坐标信息分别表示项目的组织ID、项目ID和版本号。 properties 元素中定义了 Java 版本为 11。 dependencies 元素列出了当前项目所依赖的库包括了 spring-boot-starter、lombok 和 spring-boot-starter-test 等。 build 元素中配置了用于将 Spring Boot 应用打包成 JAR 或 WAR 文件的插件这里使用了 spring-boot-maven-plugin 插件并设置了一些相关参数如镜像构建器和排除某些依赖等。 通过这些配置你可以快速搭建一个基于 Spring Boot 的 Java 项目而无需关注大量繁琐的配置和依赖管理。 二、Ch01Application 类 SpringBootApplication public class Ch01Application {/*** springboot 程序入口** SpringApplication 的 run 方法运行后会初始化一个 IOC 容器* 我们可以从这个容器中获取我们想要的 Bean* param args*/public static void main(String[] args) {SpringApplication.run(Ch01Application.class, args);}}这段代码是一个典型的 Spring Boot 应用程序的入口类。让我来解释一下 SpringBootApplication 注解标注在该类上它是 Spring Boot 提供的一个组合注解包括了 Configuration、EnableAutoConfiguration 和 ComponentScan 注解。通过这个注解Spring Boot 将自动扫描当前类所在包以及子包中的组件并对它们进行自动配置。 Ch01Application 类中的 main 方法是程序的入口点。在这个方法中调用了 SpringApplication.run 方法传入了当前类和命令行参数 args。这将启动 Spring 应用程序并初始化一个 IOC 容器其中包含了所有被 Component、Service、Repository 等注解标识的 Bean。 通过初始化 IOC 容器我们可以从中获取我们想要的 Bean并开始执行我们的业务逻辑。 总的来说这段代码是一个标准的 Spring B oot 应用程序的入口类负责启动 Spring 应用程序并初始化相关的组件和 Bean。   那我们就是实现一个简单的dao和service的调用不使用 mybatis. 三、dao层 1、UserDao public interface UserDao {void save();} 2、UserDaoImpl Repository Slf4j public class UserDaoImpl implements UserDao {Overridepublic void save() {log.info(insert into user_info.... );} } 这段代码定义了一个 UserDaoImpl 类它实现了一个 UserDao 接口并使用了 Repository 注解进行标识。Repository 注解是 Spring 框架提供的一种组件扫描注解用于标识一个 DAO数据访问对象组件。 该类中只实现了一个 save() 方法方法体内部打印了一条日志记录了插入用户信息的操作。在实际应用中我们通常会在这个方法中编写对数据库的增、删、改、查等操作。 使用 Slf4j 注解可以自动生成日志记录器无需手动创建。Slf4j 注解是 Lombok 提供的一种简化代码的注解它可以自动为类生成一个日志记录器变量 log并且自动引入 org.slf4j.LoggerFactory 类作为日志框架的实现。 通过以上代码我们可以看到 Spring Boot 在整合其他框架时的便利性如使用 Repository 注解来标识 DAO 组件使用 Lombok 的 Slf4j 注解来简化日志记录器的创建让我们能够更加专注于业务逻辑的实现。 四、service层 1、UserService public interface UserService {void add();} 2、UserServiceImpl Service RequiredArgsConstructor public class UserServiceImpl implements UserService {private final UserDao userDao;Overridepublic void add() {userDao.save();}} 五、在 Ch01Application 调用 service 的方法 前面我们讲到SpringApplication 的 run 方法运行后会初始化一个 IOC 容器 我们可以从这个容器中获取我们想要的 Bean。我们在 dao 和 service中都是用了装配注解那我们现在就来从容器中拿出来使用。 SpringBootApplicationpublic class Ch01Application {/*** springboot 程序入口** SpringApplication 的 run 方法运行后会初始化一个 IOC 容器* 我们可以从这个容器中获取我们想要的 Bean* param args*/public static void main(String[] args) {ApplicationContext context SpringApplication.run(Ch01Application.class, args);UserService service context.getBean(UserService.class);service.add();}} 运行效果 成功的调用到了 service 中 add() 方法大家有没有发现我们现在使用 springboot 我们并没有写任何的配置类也没有使用任何的扫描注解那为什么还能够调用到 dao 和 service 的方法呢 六、详解 Ch01Application 类 SpringBootApplication// 指定默认的扫描包路径 //SpringBootApplication(scanBasePackageClasses xxx.xxxx.aa) public class Ch01Application {/*** springboot 程序入口** SpringApplication 的 run 方法运行后会初始化一个 IOC 容器* 我们可以从这个容器中获取我们想要的 Bean* param args*/public static void main(String[] args) {ApplicationContext context SpringApplication.run(Ch01Application.class, args);UserService service context.getBean(UserService.class);service.add();}}这是 springboot 的核心启动类(同时也是一个配置类)运行整个 springboot 项目在这个类上面有一个很重要的注解为 SpringBootApplication 它其实是一个复合注解包含了 Configuration、ComponentScan EnableAutoConfiguration(自动配置注解) 在启动这个类的时候他会有一个默认的扫描机制是从当前启动类所在的包 以及所有的子包进行扫描来专配所有带有注解的Bean因此这个启动类通常放在最外层的父级包目录下。当然也可以改变这个默认扫描的机制通过 scanBasePackages 属性来指定即可。 在 Ch01Application 类中我们使用了 SpringBootApplication 注解来标记这个类是一个 Spring Boot 应用程序的入口点。此外我们还定义了一个 main 方法用于运行应用程序并初始化 IOC 容器。 在 main 方法中我们使用 SpringApplication.run() 方法来运行应用程序并将 Ch01Application.class 作为参数传递给它。这个方法会自动扫描并加载应用程序中所有的 Spring 组件并启动内嵌的 Tomcat 服务器。同时它也会根据类路径下的配置文件来自动配置应用程序包括数据库连接、日志记录、缓存等常见功能。 在 main 方法中我们还通过 ApplicationContext 接口获取了一个 IOC 容器的实例并从容器中获取了一个 UserService 的 Bean 实例。这个 Bean 实例可以直接用于业务逻辑的处理而无需手动创建对象或进行依赖注入。 总之Ch01Application 类是 Spring Boot 应用程序的入口点它提供了 main 方法用于启动应用程序、初始化 IOC 容器以及从容器中获取 Spring Bean 实例方便开发者编写业务逻辑代码。 还有一个非常重要的地方要注意 Ch01Application必须是在ch01包下不能够放在dao或者service里面如果是放在里面的话SpringBootApplication注解就没有没放扫描到所有的装配注解如果是放在 dao 里那它只能扫描到 dao 里面的装配注解就没有办法扫描到 service 的。这样在获取 service bean 的时候就会报错。 如果想把 Ch01Application 放在其他的包下也可以也可以使用SpringBootApplication注解指定  Ch01Application 的包路径的。 // 指定默认的扫描包路径 SpringBootApplication(scanBasePackageClasses xxx.xxxx.aa) 七、测试类 SpringBootTest class Ch01ApplicationTests {Autowiredprivate UserService userService;Testvoid contextLoads() {userService.add();}} 这段代码是一个典型的 Spring Boot 单元测试类让我来逐一解释每一部分 SpringBootTest 注解标注在类上它是 Spring Boot 提供的一个组合注解用于加载整个 Spring 应用程序的上下文。它会自动初始化 Spring 应用程序的 IOC 容器并加载所有的 Bean使得在测试中可以使用依赖注入等功能。 Ch01ApplicationTests 类是一个测试类用于测试 Ch01Application 类中的业务逻辑。在这个测试类中我们将测试 UserService 的 add() 方法。 Autowired 注解用于自动装配 UserService 类型的 Bean由于在测试中我们需要使用 userService 实例因此使用 Autowired 注解将其注入到测试类中。 Test 注解标注在 contextLoads 方法上表示这是一个测试方法。在这个方法中调用了 userService 的 add() 方法以测试添加用户的业务逻辑是否正常工作。 通过以上代码我们可以看到 Spring Boot 在测试方面的便利性如使用 SpringBootTest 注解来加载整个应用程序上下文使用 Autowired 注解来自动装配需要测试的 Bean使得我们能够方便地编写和执行单元测试。 运行结果 八、总结 Spring Boot 项目通常具有以下标准结构 src/main/java: 主要的 Java 代码目录包含了项目的 Java 源代码文件。 src/main/resources: 存放主要的配置文件和资源文件如 application.properties 或 application.yml 等配置文件以及静态资源文件、模板文件等。 src/test/java: 测试代码目录包含了项目的单元测试和集成测试等相关的 Java 源代码文件。 src/test/resources: 存放测试相关的配置文件和资源文件。 pom.xml (如果是 Maven 项目) 或 build.gradle (如果是 Gradle 项目): 项目的构建配置文件包含了项目的依赖管理、插件配置等。 target (如果是 Maven 项目) 或 build (如果是 Gradle 项目): 编译输出目录包含了编译后的类文件、打包后的可执行文件等。 其他自定义的目录结构如存放实体类的目录、存放控制器的目录、存放服务类的目录等。 在 Spring Boot 项目中通常会遵循约定大于配置的原则因此可以快速地搭建和开发项目同时也可以根据需要进行自定义的配置和扩展。
http://www.sadfv.cn/news/40803/

相关文章:

  • 商务网站需求分析学软件开发需要学什么
  • 学习做网站可以吗php网站开发实战教程
  • 电子商务网站推广方法和技巧wordpress不安装先写前端
  • 网站备案在哪里审批工程公司招聘
  • 网站开发的项目内容flash网站推荐
  • 泗阳县住房和建设局网站东营网站关键词
  • 手机网站可以做百度商桥吗海南省建设网站的公司
  • 四川建设厅报名网站wordpress数据恢复
  • 购物网站名字网站 关键词库 怎么做
  • 网站设置301解除移动屏蔽谷歌外链
  • 建设网站转赚钱吗建设局网站管理办法
  • 苏州个人网站制作邯郸信息港招聘信息
  • 建设银行关闭网站查询信用卡账单网站的整合
  • 成都科技网站建设找百度 模块网站
  • 陕西高端品牌网站建设建立网站需要什么软件
  • 涿州网站制作成都住建局官网e蓉
  • 双流建设局网站网页设计规划
  • asp.net网站开发技术用htlm做静态网站怎么用
  • 攀枝花做网站wordpress 分类目录 插件
  • 做网站都需要买什么问题上海网站建设搭建
  • 吴家山网站建设公司全球速卖通的特点
  • 韩国服装网站建设网站备案 企业备案
  • 网站建设实验的总结江西省城乡建设培训中心网站
  • 电商网站建设讯息免费咨询妇科
  • 学校门户网站建设管理办法怎么样自己建立一个网站
  • 无锡网站建设首选捷搜博罗网站建设哪家好
  • 江西省建设工程造价管理局网站wordpress跳转移动端模板
  • 互通登录插件WordPress惠州seo外包
  • 怎么建设免费网站如何提网站建设需求
  • 电子商务网站硬件建设的核心是网站建设课程大纲