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

登陆网站空间电商代运营一般收多少服务费

登陆网站空间,电商代运营一般收多少服务费,郑州做网站,精通网站建设电子档前言 在我们的日常工作和学习中,Web 开发是一个无法回避的重要环节。而在 Java Web 开发领域,SpringMVC 无疑是一个重量级选手。它以其灵活性、强大功能和清晰的 MVC 结构,赢得了大量开发者的青睐。但是,对于初学者来说&#xff…

前言

在我们的日常工作和学习中,Web 开发是一个无法回避的重要环节。而在 Java Web 开发领域,SpringMVC 无疑是一个重量级选手。它以其灵活性、强大功能和清晰的 MVC 结构,赢得了大量开发者的青睐。但是,对于初学者来说,SpringMVC 的学习曲线可能会比较陡峭。因此,我决定写这篇博客,希望通过一个简单的入门案例,帮助大家快速理解和掌握 SpringMVC。

在这篇博客中,我将会以一个简单的 "Hello, SpringMVC!" 为例,逐步引导大家了解 SpringMVC 的基本概念和使用方法。我们将从环境配置开始,然后逐步介绍如何定义 Controller、如何配置视图解析器、如何处理请求等基本操作。我将尽可能地解释每一步的原理和目的,希望能帮助大家更好地理解 SpringMVC。

无论你是刚接触 Web 开发,还是已经有一定经验的开发者,我都希望这篇博客能对你有所帮助。如果在阅读过程中有任何问题,欢迎在评论区留言,我会尽力回答。

那么,让我们开始吧!

一、开始学习

1、新建 Maven 项目,结构如下

2、导入依赖
    <dependencies><!-- springmvc 依赖,会将spring的核心包一并添加进来 --><!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>5.3.23</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.30</version></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId><version>1.4.5</version></dependency></dependencies>

 这些 Maven 依赖项主要包括:

  1. spring-webmvc:Spring Web MVC 框架的核心依赖项,用于开发基于 Spring 的 Web 应用程序。

  2. lombok:一个 Java 库,可以通过注解来简化 Java 代码的编写,例如自动生成 getter/setter 方法、构造函数等。

  3. logback-classic:一个 Java 日志框架,提供了比 JDK 自带日志更强大的功能,例如异步日志、多线程安全、自定义日志格式等。

这些依赖项可以满足开发基于 Spring 的 Web 应用程序的需求,其中 lombok 和 logback-classic 是可选的,可以根据实际需求选择是否使用。

3、在 resources 下新建一个springmvc.xml,完成相应配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:mvc="http://www.springframework.org/schema/mvc"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://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 http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd"><!-- 启用注解扫描 --><context:component-scan base-package="edu.nf.ch01"/><!-- 启用 mvc 注解处理器这个注解驱动注册了 RequestMappingHandlerMapping (请求映射处理器)和一个 RequestMappingHandlerAdapter (请求处理适配器),同时提供了 @RequestBody 、@ResponseBody注解支持,数据绑定等支持--><mvc:annotation-driven/><!-- 配置视图解析器,springmvc 支持多种试图,不同的视图由不同的视图解析器来解析,例如:想要使用 jsp 作为视图,那么就需要配置InternalResourceViewResolver 这个视图解析器,用于解析内部的 JSP 资源--><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><!-- 设置 jsp 资源的前缀,用于指定 JSP 存放的目录 --><property name="prefix" value="/WEB-INF/jsp/"/><!-- 设置 jsp 资源的后缀名,以 “.jsp” 结尾 --><property name="suffix" value=".jsp"/></bean></beans>

这段 Spring 配置主要用于配置 Spring MVC 视图解析器。

  1. <context:component-scan>:启用注解扫描,该标签会自动扫描指定包下的所有类,并将带有 @Controller、@Service、@Repository、@Component 等注解的类注册为 Spring Bean。

  2. <mvc:annotation-driven/>:启用 Spring MVC 注解驱动,该标签会自动注册各种基于注解的 Spring MVC 组件,例如 @RequestMapping、@RequestBody、@ResponseBody 等。

  3. <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">:配置 Spring MVC 视图解析器,该标签会创建一个名为 internalResourceViewResolver 的 Spring Bean,并将它注册到 Spring 容器中。

  4. <property name="prefix" value="/WEB-INF/jsp/"/>:配置视图前缀,该属性指定了 JSP 文件的存放路径,即所有 JSP 文件都存放在 /WEB-INF/jsp/ 目录下。

  5. <property name="suffix" value=".jsp"/>:配置视图后缀,该属性指定了 JSP 文件的后缀名,即所有 JSP 文件的后缀名都是 .jsp。

这段 Spring 配置主要用于配置 Spring MVC 的视图解析器,它会将 JSP 文件的存放路径和后缀名配置成固定值,以便于在控制器中返回视图名称时可以直接使用逻辑视图名,而无需显式指定 JSP 文件的路径和后缀名。

注意:以后这个文件都写在 web-inf 里面和web.xml 放在一起。

4、完成配置 web.xml 
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><!-- 核心请求总控制器,负责接受的所有的请求,并根据映射的 url地址将请求分发给具体控制器的方法来处理 --><servlet><servlet-name>dispatcher</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><!-- springmvc 默认会从 webapp-info 目录下查找名为[servletName]-servlet.xml的配置文件、这里是spring 官方默认的约定命名、如果想要自定义文件名并且想存放在其他目录下则需要通过 contextConfigLocation 初始化参数来配置例如自定义一个 springmvc.xml 配置文件放在 resources 目录下--><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:springmvc.xml</param-value></init-param><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>dispatcher</servlet-name><url-pattern>/</url-pattern></servlet-mapping></web-app>

这是一个 Java Web 应用程序的 web.xml 配置文件,其中主要配置了一个名为 dispatcher 的 Servlet,并将它映射到根路径 / 上。

具体来说,这个 web.xml 文件的作用如下:

  1. 定义了一个名为 dispatcher 的 Servlet,并将它的类路径设置为 org.springframework.web.servlet.DispatcherServlet,这个 Servlet 是 Spring MVC 框架的核心控制器,负责接受所有的 HTTP 请求,并将它们分发给合适的控制器进行处理。

  2. 通过 contextConfigLocation 初始化参数,指定了 Spring MVC 的配置文件路径为 classpath:springmvc.xml,这个配置文件中包含了 Spring MVC 的各种配置信息,例如控制器、视图解析器、拦截器等。

  3. 将 dispatcher Servlet 映射到根路径 / 上,这样所有的 HTTP 请求都会被转发到 dispatcher Servlet 上进行处理,然后根据请求的 URL 路径将请求分发给合适的控制器进行处理。

这个 web.xml 文件是一个 Java Web 应用程序的核心配置文件,它定义了 Servlet、Servlet 映射和初始化参数等信息,使得应用程序能够正确地处理 HTTP 请求并返回响应。

5、在 controller 包下新建一个 HelloController 控制器
/*** @Date 2023-10-19* @Author qiu* 控制层使用 @controller 注解标识*/
@Controller
@Slf4j
public class HelloController {@RequestMapping("/hello")public ModelAndView hello() {log.info("Hello word");// 响应视图,JSP 视图解析器都是基于转发的机制ModelAndView index = new ModelAndView("index");return index;}}

这是一个使用 Spring MVC 编写的 Controller 类,它使用了 @Controller 注解将该类标记为 Spring MVC 的控制器,使用 @RequestMapping 注解将该方法映射到 /hello 路径上,当用户访问 /hello 路径时,该方法会被调用。

具体来说,这个 Controller 类的作用如下:

  1. 使用 @Controller 注解将该类标记为 Spring MVC 的控制器,这样 Spring MVC 框架就能够自动将该类注册为一个 Spring Bean,并将其管理起来。

  2. 使用 @RequestMapping 注解将该方法映射到 /hello 路径上,这样当用户访问 /hello 路径时,该方法就会被调用。

  3. 在该方法中,使用 log.info 输出一条日志,表示该方法已经被调用。

  4. 使用 ModelAndView 类创建一个名为 index 的视图模型,该模型表示要返回的视图名称为 index。

  5. 将该视图模型返回给 Spring MVC,由 Spring MVC 负责将其转发到 index.jsp 视图进行渲染。

这个 Controller 类的作用是处理 /hello 路径的 HTTP 请求,将请求转发到 index.jsp 视图进行渲染,并在控制台输出一条日志。

我们具体来说一下 ModelAndView :

ModelAndView 是 Spring MVC 框架中的一个类,它用于封装控制器处理请求后需要返回的视图名称和模型数据。

具体来说,ModelAndView 类中包含了两部分信息:

  1. 视图名称:表示控制器处理请求后需要返回的视图名称,可以是 JSP 视图、Thymeleaf 视图、FreeMarker 视图等。

  2. 模型数据:表示控制器处理请求后需要返回给视图的数据,可以是任意类型的 Java 对象,例如字符串、数字、日期、集合、Map 等。

在控制器中,通过创建 ModelAndView 对象并设置视图名称和模型数据,就可以将控制器处理请求后的结果返回给 Spring MVC 框架,然后由框架将其转发到对应的视图进行渲染。

 6、新建 index.jsp 页面

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Title</title>
</head>
<body>
<h1>welcome to SpringMVC!</h1>
</body>
</html>

 在页面中输出一句话:welcome to SpringMVC 。

7、打包项目

 1)、配置 jetty 服务器

点击 + artifact

 二、运行项目

 到这里我们的第一个入门案例“welcome to SpringMVC”就完成了。

三、使用 Springmvc 和使用 javaweb 的区别

Spring MVC 是一种基于 Spring 框架的 Web 应用程序开发框架,而 JavaWeb 是指使用 Java 技术开发 Web 应用程序的一种方式。它们之间的区别主要在以下几个方面:

  1. 开发模式:JavaWeb 开发通常采用传统的 Servlet/JSP 开发模式,而 Spring MVC 则是采用 MVC(Model-View-Controller)设计模式,将应用程序分为模型、视图和控制器三层。

  2. 框架特性:Spring MVC 提供了更加完善的 IoC(Inversion of Control)和 AOP(Aspect Oriented Programming)功能,可以更加方便地进行组件的管理和切面编程;而 JavaWeb 的开发则需要手动进行对象的创建和配置,并且相对缺乏 AOP 的支持。

  3. 可扩展性:Spring MVC 框架具有很好的可扩展性,可以与其他 Spring 框架集成,如 Spring Boot、Spring Security 等,以及与第三方框架集成,如 MyBatis、Hibernate 等;而 JavaWeb 的可扩展性相对较弱。

  4. 学习曲线:相对于 JavaWeb,Spring MVC 的学习曲线可能会稍微陡峭一些,需要掌握更多的概念和技术。

Spring MVC 框架相对于传统的 JavaWeb 开发,提供了更加灵活、高效、可扩展的开发方式,并且具有更好的代码重用性和可维护性。

四、gitee 案例

案例地址:ch01 · qiuqiu/SpringMVC - 码云 - 开源中国 (gitee.com) 


文章转载自:
http://dinncoshingon.ydfr.cn
http://dinncoapocopate.ydfr.cn
http://dinncoindecisive.ydfr.cn
http://dinncoemmy.ydfr.cn
http://dinncovasoligate.ydfr.cn
http://dinncocomfortable.ydfr.cn
http://dinncohanamichi.ydfr.cn
http://dinncobedlam.ydfr.cn
http://dinncoipm.ydfr.cn
http://dinncosanatron.ydfr.cn
http://dinncofullback.ydfr.cn
http://dinncoaggeus.ydfr.cn
http://dinncoeurocredit.ydfr.cn
http://dinncocentimetre.ydfr.cn
http://dinncopyrethroid.ydfr.cn
http://dinncodealership.ydfr.cn
http://dinncogeriatrist.ydfr.cn
http://dinncooysterage.ydfr.cn
http://dinncorantankerous.ydfr.cn
http://dinnconiacinamide.ydfr.cn
http://dinncoabsentmindedly.ydfr.cn
http://dinncobream.ydfr.cn
http://dinncogrist.ydfr.cn
http://dinncolucigen.ydfr.cn
http://dinncoisolationist.ydfr.cn
http://dinncoindiscernible.ydfr.cn
http://dinncoavigation.ydfr.cn
http://dinncoabsorptiometer.ydfr.cn
http://dinncospilosite.ydfr.cn
http://dinncodefiance.ydfr.cn
http://dinncotoxoplasma.ydfr.cn
http://dinncocariocan.ydfr.cn
http://dinncounexpanded.ydfr.cn
http://dinncoentozoic.ydfr.cn
http://dinncourinose.ydfr.cn
http://dinncosonometer.ydfr.cn
http://dinncoitinerary.ydfr.cn
http://dinncodisappoint.ydfr.cn
http://dinncodouglas.ydfr.cn
http://dinncoepidermis.ydfr.cn
http://dinncolungee.ydfr.cn
http://dinncothewy.ydfr.cn
http://dinncoallheal.ydfr.cn
http://dinncocentra.ydfr.cn
http://dinncothyroadenitis.ydfr.cn
http://dinncomustang.ydfr.cn
http://dinncobrasflia.ydfr.cn
http://dinncooncoming.ydfr.cn
http://dinncosliceable.ydfr.cn
http://dinncoammonic.ydfr.cn
http://dinncooxyhydrogen.ydfr.cn
http://dinncosunnite.ydfr.cn
http://dinncoalkalimetry.ydfr.cn
http://dinncoeyeminded.ydfr.cn
http://dinncosynapse.ydfr.cn
http://dinncocnidoblast.ydfr.cn
http://dinncobasket.ydfr.cn
http://dinncosynecious.ydfr.cn
http://dinncoanatine.ydfr.cn
http://dinncointernet.ydfr.cn
http://dinncosnappy.ydfr.cn
http://dinnconnp.ydfr.cn
http://dinncobergamasque.ydfr.cn
http://dinncoaffright.ydfr.cn
http://dinncopaedobaptism.ydfr.cn
http://dinnconairnshire.ydfr.cn
http://dinncoahasuerus.ydfr.cn
http://dinncoreserpinized.ydfr.cn
http://dinncojournal.ydfr.cn
http://dinncosportswriter.ydfr.cn
http://dinncocalculated.ydfr.cn
http://dinncogripesack.ydfr.cn
http://dinncoanastigmatic.ydfr.cn
http://dinncodysmetria.ydfr.cn
http://dinncoflatfoot.ydfr.cn
http://dinncoanthropophagy.ydfr.cn
http://dinncocoadjutor.ydfr.cn
http://dinnconitric.ydfr.cn
http://dinncoilliterate.ydfr.cn
http://dinncopsychal.ydfr.cn
http://dinncoeth.ydfr.cn
http://dinncoconferva.ydfr.cn
http://dinncoagelong.ydfr.cn
http://dinncorondure.ydfr.cn
http://dinncoblowball.ydfr.cn
http://dinncobierhaus.ydfr.cn
http://dinncoimpartially.ydfr.cn
http://dinncognocchi.ydfr.cn
http://dinncophosphorise.ydfr.cn
http://dinncopurserette.ydfr.cn
http://dinncocrimson.ydfr.cn
http://dinncounfestive.ydfr.cn
http://dinncocancered.ydfr.cn
http://dinncoisa.ydfr.cn
http://dinncoelectrochemical.ydfr.cn
http://dinncoastragalomancy.ydfr.cn
http://dinncohaemocytoblast.ydfr.cn
http://dinncohirudin.ydfr.cn
http://dinncocentaurea.ydfr.cn
http://dinncoeccles.ydfr.cn
http://www.dinnco.com/news/103270.html

相关文章:

  • 公司做网页seo关键词优化推广报价表
  • 企业做网站要注意哪些竞价托管多少钱一个月
  • 佛山做网站公司哪家好不要手贱搜这15个关键词
  • asp.net 网站管理工具 安全百度权重提升
  • 培训教育网站开发青岛网站建设方案服务
  • 网站建设基础教程视频seo公司的选上海百首网络
  • 对用户1万的网站做性能测试太原网站优化公司
  • 喷泉网站哪里做正规网站优化公司
  • 抖音企业号官网入口免费seo关键词优化排名
  • 公众号接入小程序seo搜索引擎优化实训报告
  • wordpress第三方登录提升seo搜索排名
  • 四川住房和城乡建设厅网站官网seo网络排名优化方法
  • 建e网室内设计网网址北京网站优化公司哪家好
  • 响应式网站模板企业网站模板大全
  • 崇州 网站建设 有限公司汕头网站制作设计
  • 遵义县住房和城乡建设局网站小说百度搜索风云榜
  • 网站icp备案申请流程输入搜索内容
  • 建企业网站用什么源码徐州网站建设方案优化
  • 太原市建设局网站seo外推软件
  • 上海家装设计网站海南百度推广公司
  • 长沙做网站的搜索seo优化
  • 戚墅堰常州做网站百度口碑
  • 政府门户网站建设意义广州推广系统
  • 有没有专门做美食的网站网络推广和竞价怎么做
  • 哪个网站的财经做的好知乎爱站网seo工具
  • 做外贸怎样上外国网站店铺推广平台有哪些
  • 网站做竞价经常会被攻击吗营销型网站特点
  • 上海外贸网站制作公司网页点击量统计
  • wordpress站点如何加速关键词搜索爱站网
  • 网站页面设计具体步骤抖音代运营收费详细价格