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

网站制作软件都是什么软件卸载ghost版wordpress

网站制作软件都是什么软件,卸载ghost版wordpress,最好的网站统计,合肥建设工程信息网一、什么是MVC MVC是一种软件架构模式#xff08;是一种软件架构设计思想#xff0c;不止Java开发中用到#xff0c;其它语言也需要用到#xff09;#xff0c;它将应用分为三块#xff1a; M#xff1a;Model#xff08;模型#xff09;V#xff1a;View#xff08…一、什么是MVC MVC是一种软件架构模式是一种软件架构设计思想不止Java开发中用到其它语言也需要用到它将应用分为三块 MModel模型VView视图CController控制器 1.1 应用为什么要被分为三块优点是什么 低耦合扩展能力增强代码复用性增强代码可维护性增强高内聚让程序员更加专注业务的开发 1.2 MVC将应用分为三块每一块各司其职都有自己专注的事情要做他们属于分工协作互相配合 Model负责业务处理及数据的收集View负责数据的展示Controller负责调度。它是一个调度中心它来决定什么时候调用Model来处理业务什么时候调用View视图来展示数据。 MVC架构模式如下所示 MVC架构模式的描述前端浏览器发送请求给web服务器web服务器中的Controller接收到用户的请求Controller负责将前端提交的数据进行封装然后Controller调用Model来处理业务当Model处理完业务后会返回处理之后的数据给ControllerController再调用View来完成数据的展示最终将结果响应给浏览器浏览器进行渲染展示页面。 1.3 面试题什么是三层模型并说一说MVC架构模式与三层模型的区别 三层模型 MVC 和三层模型都采用了分层结构来设计应用程序都是降低耦合度提高扩展力提高组件复用性。区别在于他们的关注点不同三层模型更加关注业务逻辑组件的划分。 MVC架构模式关注的是整个应用程序的层次关系和分离思想。现代的开发方式大部分都是MVC架构模式结合三层模型一起用。 二、什么是SpringMVC 2.1 SpringMVC概述 SpringMVC是一个实现了MVC架构模式的Web框架底层基于Servlet实现。 SpringMVC已经将MVC架构模式实现了因此只要我们是基于SpringMVC框架写代码编写的程序就是符合MVC架构模式的。MVC的架子搭好了我们只需要添添补补 Spring框架中有一个子项目叫做Spring WebSpring Web子项目当中包含很多模块例如 Spring MVCSpring WebFluxSpring Web ServicesSpring Web FlowSpring WebSocketSpring Web Services Client 可见 SpringMVC是Spring Web子项目当中的一个模块。因此也可以说SpringMVC是Spring框架的一部分。以下就是Spring官方给出的Spring架构图其中Web中的servlet指的就是Spring MVC 2.2 SpringMVC帮我们做了什么 SpringMVC框架帮我们做了什么与纯粹的Servlet开发有什么区别 入口控制SpringMVC框架通过DispatcherServlet作为入口控制器负责接收请求和分发请求。而在Servlet开发中需要自己编写Servlet程序并在web.xml中进行配置才能接受和处理请求。在SpringMVC中表单提交时可以自动将表单数据绑定到相应的JavaBean对象中只需要在控制器方法的参数列表中声明该JavaBean对象即可无需手动获取和赋值表单数据。而在纯粹的Servlet开发中这些都是需要自己手动完成的。IOC容器SpringMVC框架通过IOC容器管理对象只需要在配置文件中进行相应的配置即可获取实例对象而在Servlet开发中需要手动创建对象实例。统一处理请求SpringMVC框架提供了拦截器、异常处理器等统一处理请求的机制并且可以灵活地配置这些处理器。而在Servlet开发中需要自行编写过滤器、异常处理器等增加了代码的复杂度和开发难度。视图解析SpringMVC框架提供了多种视图模板如JSP、Freemarker、Velocity等并且支持国际化、主题等特性。而在Servlet开发中需要手动处理视图层增加了代码的复杂度。 总之与Servlet开发相比SpringMVC框架可以帮我们节省很多时间和精力减少代码的复杂度更加专注于业务开发。同时也提供了更多的功能和扩展性可以更好地满足企业级应用的开发需求。 2.3 SpringMVC框架的特点 轻量级相对于其他Web框架Spring MVC框架比较小巧轻便。只有几个几百KB左右的Jar包文件模块化请求处理过程被分成多个模块以模块化的方式进行处理。控制器模块Controller业务逻辑模块Model视图模块View依赖注入Spring MVC框架利用Spring框架的依赖注入功能实现对象的管理实现松散耦合。易于扩展提供了很多口子允许开发者根据需要插入自己的代码以扩展实现应用程序的特殊需求。Spring MVC框架允许开发人员通过自定义模块和组件来扩展和增强框架的功能。Spring MVC框架与其他Spring框架及第三方框架集成得非常紧密这使得开发人员可以非常方便地集成其他框架以获得更好的功能。易于测试支持单元测试框架提高代码质量和可维护性。 对SpringMVC中的Controller测试时不需要依靠Web服务器。自动化配置提供自动化配置减少配置细节。Spring MVC框架基于约定大于配置的原则对常用的配置约定进行自动化配置。灵活性Spring MVC框架支持多种视图技术如JSP、FreeMarker、Thymeleaf、FreeMarker等针对不同的视图配置不同的视图解析器即可。 三、第一个SpringMVC程序 3.1 创建Maven模块 第一步创建Empty Project起名springmvc 第二步设置springmvc工程的JDK版本Java21 第三步设置maven 第四步创建Maven模块 第五步将pom.xml文件中的打包方式修改为war groupIdcom.powernode.springmvc/groupId artifactIdspringmvc-001/artifactId version1.0-SNAPSHOT/version !-- 打包方式设置为war方式 -- packagingwar/packaging第六步添加以下依赖 dependencies!-- Spring MVC依赖 --dependencygroupIdorg.springframework/groupIdartifactIdspring-webmvc/artifactIdversion6.1.4/version/dependency!--日志框架Logback依赖--dependencygroupIdch.qos.logback/groupIdartifactIdlogback-classic/artifactIdversion1.5.3/version/dependency!--Servlet依赖--dependencygroupIdjakarta.servlet/groupIdartifactIdjakarta.servlet-api/artifactIdversion6.0.0/versionscopeprovided/scope/dependency!--Spring6和Thymeleaf整合依赖--dependencygroupIdorg.thymeleaf/groupIdartifactIdthymeleaf-spring6/artifactIdversion3.1.2.RELEASE/version/dependency /dependencies3.2 添加web支持 第一步在main目录下创建一个webapp目录 第二步添加web.xml配置文件 注意 web.xml 文件的位置D:\Java_Project\springmvc\springmvc-001\src\main\webapp\WEB-INF\web.xml 注意版本选择6.0 添加web支持后的目录结构 3.3 配置web.xml文件 Spring MVC是一个web框架在javaweb中谁来负责接收请求处理请求以及响应呢当然是Servlet。在SpringMVC框架中已经为我们写好了一个Servlet它的名字叫做DispatcherServlet我们称其为前端控制器。既然是Servlet那么它就需要在web.xml文件中进行配置 ?xml version1.0 encodingUTF-8? web-app xmlnshttps://jakarta.ee/xml/ns/jakartaeexmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttps://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsdversion6.0!--SpringMVC提供的前端控制器--servletservlet-namespringmvc/servlet-nameservlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class/servletservlet-mappingservlet-namespringmvc/servlet-name!-- /* 表示任何一个请求都交给DispatcherServlet来处理 --!-- / 表示当请求不是xx.jsp的时候DispatcherServlet来负责处理本次请求--!-- jsp本质就是Servlet因此如果请求是jsp的话应该走它自己的Servlet而不应该走DispatcherServlet --!-- 因此我们的 url-pattern 使用 / --url-pattern//url-pattern/servlet-mapping/web-appDispatcherServlet是SpringMVC框架为我们提供的最核心的类它是整个SpringMVC框架的前端控制器负责接收HTTP请求、将请求路由到处理程序、处理响应信息最终将响应返回给客户端。DispatcherServlet是Web应用程序的主要入口点之一它的职责包括 接收客户端的HTTP请求DispatcherServlet监听来自Web浏览器的HTTP请求然后根据请求的URL将请求数据解析为Request对象。处理请求的URLDispatcherServlet将请求的URLUniform Resource Locator与处理程序进行匹配确定要调用哪个控制器Controller来处理此请求。调用相应的控制器DispatcherServlet将请求发送给找到的控制器处理控制器将执行业务逻辑然后返回一个模型对象Model。渲染视图DispatcherServlet将调用视图引擎将模型对象呈现为用户可以查看的HTML页面。返回响应给客户端DispatcherServlet将为用户生成的响应发送回浏览器响应可以包括表单、JSON、XML、HTML以及其它类型的数据 3.4 编写控制器FirstController DispatcherServlet接收到请求之后会根据请求路径分发到对应的ControllerController来负责处理请求的核心业务。在SpringMVC框架中Controller是一个普通的Java类一个普通的POJO类不需要继承任何类或实现任何接口需要注意的是POJO类要纳入IoC容器来管理POJO类的生命周期由Spring来管理因此要使用注解标注 package com.liming.controller;import org.springframework.stereotype.Controller;/*** author LiMing* version 1.0* description:* date 2024/4/7 14:31*/ Controller public class FirstController { }3.5 配置springmvc-servlet.xml文件 SpringMVC框架有它自己的配置文件该配置文件的名字默认为servlet-name-servlet.xml默认存放的位置是WEB-INF 目录下 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexmlns:contexthttp://www.springframework.org/schema/contextxsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd!--组件扫描--context:component-scan base-packagecom.liming.controller/!--视图解析器--bean idthymeleafViewResolver classorg.thymeleaf.spring6.view.ThymeleafViewResolver!--作用于视图渲染的过程中可以设置视图渲染后输出时采用的编码字符集--property namecharacterEncoding valueUTF-8/!--如果配置多个视图解析器它来决定优先使用哪个视图解析器它的值越小优先级越高--property nameorder value1/!--当 ThymeleafViewResolver 渲染模板时会使用该模板引擎来解析、编译和渲染模板--property nametemplateEnginebean classorg.thymeleaf.spring6.SpringTemplateEngine!--用于指定 Thymeleaf 模板引擎使用的模板解析器。模板解析器负责根据模板位置、模板资源名称、文件编码等信息加载模板并对其进行解析--property nametemplateResolverbean classorg.thymeleaf.spring6.templateresolver.SpringResourceTemplateResolver!--设置模板文件的位置前缀--property nameprefix value/WEB-INF/templates//!--设置模板文件后缀后缀Thymeleaf文件扩展名不一定是html也可以是其他例如txt大部分都是html--property namesuffix value.html/!--设置模板类型例如HTML,TEXT,JAVASCRIPT,CSS等--property nametemplateMode valueHTML/!--用于模板文件在读取和解析过程中采用的编码字符集--property namecharacterEncoding valueUTF-8//bean/property/bean/property/bean /beans在WEB-INF目录下新建springmvc-servlet.xml文件并且提供以上配置信息。 以上配置主要两项 第一项组件扫描。spring扫描这个包中的类将这个包中的类实例化并纳入IoC容器的管理。第二项视图解析器。视图解析器View Resolver的作用主要是将Controller方法返回的逻辑视图名称解析成实际的视图对象。视图解析器将解析出的视图对象返回给DispatcherServlet并最终由DispatcherServlet将该视图对象转化为响应结果呈现给用户。 注意如果采用了其它视图请配置对应的视图解析器例如 JSP的视图解析器InternalResourceViewResolverFreeMarker视图解析器FreeMarkerViewResolverVelocity视图解析器VelocityViewResolver 3.6 提供视图 在WEB-INF目录下新建templates目录在templates目录中新建html文件例如first.html并提供以下代码 !DOCTYPE html !--指定 th 命名空间让 Thymeleaf 标准表达式可以被解析和执行-- !--th不是固定的可以指定其它的命名空间只不过大部分情况下用th-- !--表示程序中出现的 th 开头的后面代码都是 Thymeleaf语法需要被 Thymeleaf识别-- html langen xmlns:thhttp://www.thymeleaf.org headmeta charsetUTF-8titlefirst springmvc/title /head body h1我的第一个Spring MVC程序/h1 /body /html对于每一个Thymeleaf文件来说 xmlns:thhttp://www.thymeleaf.org 是必须要写的为了方便后续开发可以将其添加到html模板文件中 3.7 控制器FirstController处理请求返回逻辑视图名称 package com.liming.controller;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping;/*** author LiMing* version 1.0* description:* date 2024/4/7 10:34*/ Controller public class FirstController {RequestMapping(value/haha)public String test(){System.out.println(正在处理请求....);// 返回逻辑视图名称决定跳转到哪个页面return first;}}3.8 测试 第一步配置Tomcat服务器 第二步部署web模块到Tomcat服务器 第三步启动Tomcat服务器。如果在控制台输出的信息有中文乱码请修改tomcat服务器配置文件apache-tomcat-8.5.99\conf\logging.properties 第四步打开浏览器在浏览器地址栏上输入地址http://localhost:8081/springmvc/haha 后端控制台输出 3.9 执行流程总结 浏览器发送请求http://localhost:8081/springmvc/hahaSpringMVC的前端控制器DispatcherServlet接收到请求DispatcherServlet根据请求路径 /haha 映射到 FirstController#test()调用该方法FirstController#test() 处理请求FirstController#test() 返回逻辑视图名称 first 给视图解析器视图解析器找到 /WEB-INF/templates/first.html 文件并进行解析生成视图解析对象返回给前端控制器DispatcherServlet前端控制器DispatcherServlet响应结果到浏览器 3.10 一个Controller可以编写多个方法 一个Controller可以提供多个方法每个方法通常是处理对应的请求例如 Controller public class FirstController {RequestMapping(value/haha)public String test(){System.out.println(正在处理请求....);// 返回逻辑视图名称决定跳转到哪个页面return first;}RequestMapping(/other)public String other(){System.out.println(正在处理其它请求...);return other;}}提供 other.html 文件 !DOCTYPE html html langen xmlns:thhttp://www.thymeleaf.org headmeta charsetUTF-8titleother/title /head body h1other .../h1 /body /html在 first.html 文件中添加超链接用超链接发送 /other 请求 !DOCTYPE html !--指定 th 命名空间让 Thymeleaf 标准表达式可以被解析和执行-- !--th不是固定的可以指定其它的命名空间只不过大部分情况下用th-- !--表示程序中出现的 th 开头的后面代码都是 Thymeleaf语法需要被 Thymeleaf识别-- html langen xmlns:thhttp://www.thymeleaf.org headmeta charsetUTF-8titlefirst springmvc/title /head body h1我的第一个Spring MVC程序/h1 !-- th: 表示后面的代码可以编写Thymeleaf语法可以被Thymeleaf语法解析 -- !-- Thymeleaf检测到以 / 开始表示绝对路径自动会将webapp的上下文路径加上去 -- !-- 最终的效果是href/springmvc/other -- a th:href{/other}other请求/a /body /html启动Tomcat打开浏览器输入请求路径http://localhost:8081/springmvc/haha 点击超链接other请求 四、第二个SpringMVC程序 4.1 创建Maven模块 pom.xml文件中添加依赖 springmvc依赖logback依赖servlet依赖scope为providedthymeleaf与spring6整合依赖 打包方式war 4.2 添加web支持 webapp目录没有小蓝点怎么办添加web支持 4.3 配置web.xml文件 重点SpringMVC配置文件的名字和路径是可以手动设置的如下 ?xml version1.0 encodingUTF-8? web-app xmlnshttps://jakarta.ee/xml/ns/jakartaeexmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttps://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsdversion6.0!--配置前端控制器--servletservlet-namespringmvc/servlet-nameservlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class!--手动设置springmvc配置文件的路径及名字--init-paramparam-namecontextConfigLocation/param-nameparam-valueclasspath:springmvc.xml/param-value/init-param!--为了提高用户的第一次访问效率建议在web服务器启动时初始化前端控制器--load-on-startup1/load-on-startup/servletservlet-mappingservlet-namespringmvc/servlet-nameurl-pattern//url-pattern/servlet-mapping/web-app通过init-param来设置SpringMVC配置文件的路径和名字。在DispatcherServlet的init方法执行时设置的。 load-on-startup1/load-on-startup建议加上这样可以提高用户第一次访问的效率。表示在web服务器启动时初始化DispatcherServlet。 4.4 编写IndexController package com.liming.controller;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping;/*** author LiMing* version 1.0* description:* date 2024/4/8 0:02*/ Controller public class IndexController {RequestMapping(/)public String toIndex(){return index;}}表示请求路径如果是http://localhost:8081/springmvc/ 则进入 /WEB-INF/templates/index.html 页面 4.5 在resources目录下配置springmvc.xml文件 配置内容和之前一样一个是视图解析器一个是组件扫描。 4.6 提供视图 !DOCTYPE html html langen xmlns:thhttp://www.thymeleaf.org headmeta charsetUTF-8titleindex page/title /head body h1index page/h1 /body /html4.7 测试 部署到web服务器启动web服务器打开浏览器在地址栏上输入http://localhost:8081/springmvc/
http://www.hkea.cn/news/14260851/

相关文章:

  • 公司网站免费模板自定义优定软件网站建设
  • 做彩票类网站用什么服务器我就爱wordpress
  • 番号网站怎么做上海企业网站建设公司名
  • 做外贸阿里巴巴有哪些网站国外网站做家具哪个好
  • 做企业网站联系ppt模板免费下载 素材小清新
  • 12306网站是哪家公司做开发的湖南营销型网站建设多少钱
  • 视频在线网站免费观看网站模板html5
  • 使用vue路由做网站文档下载免费网站
  • 台州市建设招标投标网站一加官方网站进入
  • wordpress备案号代码东莞网站优化排名网站
  • 网站制作需要的软件如何建立一个网站论坛
  • 庆阳市建设工程网上投标网站重庆平台
  • 网络推广最好的网站有哪些嘉兴关键词优化报价
  • 网站制作公司加盟邹平县seo网页优化外包
  • 门户网站建设 简报谷歌seo排名技巧
  • 官方网站侵权wordpress实用插件
  • 河南省人事考试网家具类网站如何优化
  • 网站建设公司营业范围wordpress 新窗口打开文章
  • 网站服务器做缓存永久有效域名
  • 做网站建设的企业建网站价格 建设网站需要多少钱
  • 山西省住房城乡建设厅网站wordpress图片拖拽到富文本里面
  • 建网站流程的费用dede网站
  • 学习网站建设要什么学历有声直播网站建设
  • 免费用手机制作网站 百度百男生学什么技术最挣钱
  • 开了网站建设公司 如何接业务wordpress 国内 模板
  • 中国建设银行官网站和字币预约河南新闻频道在线直播观看
  • 好用的免费网站建设wordpress修改我要注册链接
  • 哈尔滨建设银行网站网址大全免费下载安装
  • 用nodejs做的网站公司网页设计制作有哪些
  • qq是哪个公司国内seo公司