Spring MVC MVC介绍和入门案例

1.SpringMVC概述

1.1.MVC介绍

MVC是一种设计模式,将软件按照模型、视图、控制器来划分:

  • M:Model,模型层,指工程中的JavaBean,作用是处理数据

    JavaBean分为两类:

    • 一类称为数据承载Bean:专门存储业务数据的,如 Student、User 等

    • 一类称为业务处理Bean:指 Service 或 Dao 对象,专门用于处理业务逻辑和数据访问。

  • V:View,视图层,指工程中的html或jsp等页面,作用是与用户进行交互,展示数据

  • C:Controller,控制层,指工程中的servlet,作用是接收请求和响应浏览器

MVC的工作流程

用户通过视图层发送请求到服务器,在服务器中请求被Controller接收,Controller调用相应的Model层处理 请求,处理完毕将结果返回到Controller,Controller再根据请求处理的结果找到相应的View视图,渲染数据 后最终响应给浏览器

MVC与三层架构的关系:

三层架构的分层模式是典型的上下关系,上层依赖于下层。但MVC作为表现模式是不存在上下关系的,而是相互协作关系。

三层是基于业务逻辑来分的,而mvc是基于页面来分的。

MVC与三层架构的关系:

三层架构的分层模式是典型的上下关系,上层依赖于下层。但MVC作为表现模式是不存在上下关系的,而是相互协作关系。

三层是基于业务逻辑来分的,而mvc是基于页面来分的。

1.2.Spring MVC介绍

  • Spring MVC 是Spring框架的一个模块,是一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet。

  • SpringMVC 是 Spring 为表示层开发提供的一整套完备的解决方案。在表述层框架历经 Strust、WebWork、Strust2 等诸多产品的历代更迭之后,目前业界普遍选择了 SpringMVC 作为 Java EE 项目表述层开发的首选方案

2.SpringMVC 的入门

2.1.环境搭建

2.1.1.创建工程

2.1.2.添加web支持

  1. 右键项目选择Add framework support...

2.添加web支

3.效果

  • 注意:

    1. 不要先添加打包方式

    2. 将web目录要拖拽到main目录下,并改名为webapp

2.1.3.pom.xml

<span style="background-color:#f8f8f8"><span style="color:#333333"><span style="color:#555555"><?xml</span> <span style="color:#555555">version="1.0" encoding="UTF-8"?></span>
<span style="color:#117700"><</span><span style="color:#117700">project</span> <span style="color:#0000cc">xmlns</span>=<span style="color:#aa1111">"http://maven.apache.org/POM/4.0.0"</span><span style="color:#0000cc">xmlns:xsi</span>=<span style="color:#aa1111">"http://www.w3.org/2001/XMLSchema-instance"</span><span style="color:#0000cc">xsi:schemaLocation</span>=<span style="color:#aa1111">"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">modelVersion</span><span style="color:#117700">></span>4.0.0<span style="color:#117700"></</span><span style="color:#117700">modelVersion</span><span style="color:#117700">></span>
​<span style="color:#117700"><</span><span style="color:#117700">groupId</span><span style="color:#117700">></span>com.by<span style="color:#117700"></</span><span style="color:#117700">groupId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span>SpringMVC_day01<span style="color:#117700"></</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">version</span><span style="color:#117700">></span>1.0-SNAPSHOT<span style="color:#117700"></</span><span style="color:#117700">version</span><span style="color:#117700">></span><span style="color:#aa5500"><!--打包方式--></span><span style="color:#117700"><</span><span style="color:#117700">packaging</span><span style="color:#117700">></span>war<span style="color:#117700"></</span><span style="color:#117700">packaging</span><span style="color:#117700">></span>
​<span style="color:#117700"><</span><span style="color:#117700">dependencies</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">dependency</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">groupId</span><span style="color:#117700">></span>org.springframework<span style="color:#117700"></</span><span style="color:#117700">groupId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span>spring-context<span style="color:#117700"></</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">version</span><span style="color:#117700">></span>5.1.8.RELEASE<span style="color:#117700"></</span><span style="color:#117700">version</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">dependency</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">dependency</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">groupId</span><span style="color:#117700">></span>org.springframework<span style="color:#117700"></</span><span style="color:#117700">groupId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span>spring-web<span style="color:#117700"></</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">version</span><span style="color:#117700">></span>5.1.8.RELEASE<span style="color:#117700"></</span><span style="color:#117700">version</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">dependency</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">dependency</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">groupId</span><span style="color:#117700">></span>org.springframework<span style="color:#117700"></</span><span style="color:#117700">groupId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span>spring-webmvc<span style="color:#117700"></</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">version</span><span style="color:#117700">></span>5.1.8.RELEASE<span style="color:#117700"></</span><span style="color:#117700">version</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">dependency</span><span style="color:#117700">></span>
​<span style="color:#117700"><</span><span style="color:#117700">dependency</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">groupId</span><span style="color:#117700">></span>javax.servlet<span style="color:#117700"></</span><span style="color:#117700">groupId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span>servlet-api<span style="color:#117700"></</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">version</span><span style="color:#117700">></span>2.5<span style="color:#117700"></</span><span style="color:#117700">version</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">scope</span><span style="color:#117700">></span>provided<span style="color:#117700"></</span><span style="color:#117700">scope</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">dependency</span><span style="color:#117700">></span>
​<span style="color:#117700"><</span><span style="color:#117700">dependency</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">groupId</span><span style="color:#117700">></span>javax.servlet.jsp<span style="color:#117700"></</span><span style="color:#117700">groupId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span>jsp-api<span style="color:#117700"></</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">version</span><span style="color:#117700">></span>2.0<span style="color:#117700"></</span><span style="color:#117700">version</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">scope</span><span style="color:#117700">></span>provided<span style="color:#117700"></</span><span style="color:#117700">scope</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">dependency</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">dependencies</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">build</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">plugins</span><span style="color:#117700">></span><span style="color:#aa5500"><!-- 配置Tomcat插件 --></span><span style="color:#117700"><</span><span style="color:#117700">plugin</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">groupId</span><span style="color:#117700">></span>org.apache.tomcat.maven<span style="color:#117700"></</span><span style="color:#117700">groupId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span>tomcat7-maven-plugin<span style="color:#117700"></</span><span style="color:#117700">artifactId</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">version</span><span style="color:#117700">></span>2.2<span style="color:#117700"></</span><span style="color:#117700">version</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">configuration</span><span style="color:#117700">></span><span style="color:#aa5500"><!--端口号--></span><span style="color:#117700"><</span><span style="color:#117700">port</span><span style="color:#117700">></span>8080<span style="color:#117700"></</span><span style="color:#117700">port</span><span style="color:#117700">></span><span style="color:#aa5500"><!--项目名--></span><span style="color:#117700"><</span><span style="color:#117700">path</span><span style="color:#117700">></span>/<span style="color:#117700"></</span><span style="color:#117700">path</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">configuration</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">plugin</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">plugins</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">build</span><span style="color:#117700">></span>
<span style="color:#117700"></</span><span style="color:#117700">project</span><span style="color:#117700">></span></span></span>

2.2.入门案例

2.2.1.index.jsp

<span style="background-color:#f8f8f8"><span style="color:#333333"><span style="color:#117700"><</span><span style="color:#117700">%@</span> <span style="color:#0000cc">page</span> <span style="color:#0000cc">contentType</span>=<span style="color:#aa1111">"text/html;charset=UTF-8"</span> <span style="color:#0000cc">language</span>=<span style="color:#aa1111">"java"</span> <span style="color:#0000cc">%</span><span style="color:#117700">></span>
<span style="color:#117700"><</span><span style="color:#117700">html</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">head</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">title</span><span style="color:#117700">></span>$Title$<span style="color:#117700"></</span><span style="color:#117700">title</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">head</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">body</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">a</span> <span style="color:#0000cc">href</span>=<span style="color:#aa1111">"/hello"</span><span style="color:#117700">></span>hello<span style="color:#117700"></</span><span style="color:#117700">a</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">body</span><span style="color:#117700">></span>
<span style="color:#117700"></</span><span style="color:#117700">html</span><span style="color:#117700">></span></span></span>

2.2.2.controller

<span style="background-color:#f8f8f8"><span style="color:#333333"><span style="color:#555555">@Controller</span>
<span style="color:#770088">public</span> <span style="color:#770088">class</span> <span style="color:#0000ff">HelloController</span> {
​<span style="color:#555555">@RequestMapping</span>(<span style="color:#aa1111">"/hello"</span>)<span style="color:#770088">public</span> <span style="color:#000000">ModelAndView</span> <span style="color:#000000">hello</span>() {<span style="color:#aa5500">//ModelAndView对象封装了模型数据和视图名称</span><span style="color:#000000">ModelAndView</span> <span style="color:#000000">mv</span> <span style="color:#981a1a">=</span> <span style="color:#770088">new</span> <span style="color:#000000">ModelAndView</span>();<span style="color:#aa5500">//添加数据,request.setAttribute(“hello”,”hello springmvc!!”)</span><span style="color:#000000">mv</span>.<span style="color:#000000">addObject</span>(<span style="color:#aa1111">"hello"</span>, <span style="color:#aa1111">"欢迎你 springmvc"</span>);<span style="color:#aa5500">//设置逻辑视图路径</span><span style="color:#000000">mv</span>.<span style="color:#000000">setViewName</span>(<span style="color:#aa1111">"success"</span>);<span style="color:#aa5500">//返回数据和视图</span><span style="color:#770088">return</span> <span style="color:#000000">mv</span>;}
}</span></span>

2.2.3.springmvc.xml

<span style="background-color:#f8f8f8"><span style="color:#333333"><span style="color:#555555"><?xml</span> <span style="color:#555555">version="1.0" encoding="UTF-8"?></span>
<span style="color:#117700"><</span><span style="color:#117700">beans</span> <span style="color:#0000cc">xmlns</span>=<span style="color:#aa1111">"http://www.springframework.org/schema/beans"</span><span style="color:#0000cc">xmlns:xsi</span>=<span style="color:#aa1111">"http://www.w3.org/2001/XMLSchema-instance"</span> <span style="color:#0000cc">xmlns:p</span>=<span style="color:#aa1111">"http://www.springframework.org/schema/p"</span><span style="color:#0000cc">xmlns:context</span>=<span style="color:#aa1111">"http://www.springframework.org/schema/context"</span><span style="color:#0000cc">xmlns:mvc</span>=<span style="color:#aa1111">"http://www.springframework.org/schema/mvc"</span><span style="color:#0000cc">xsi:schemaLocation</span>=<span style="color:#aa1111">"http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd</span><span style="color:#aa1111">http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd</span><span style="color:#aa1111">http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"</span><span style="color:#117700">></span><span style="color:#aa5500"><!-- 配置创建 spring 容器要扫描的包 --></span><span style="color:#117700"><</span><span style="color:#117700">context:component-scan</span> <span style="color:#0000cc">base-package</span>=<span style="color:#aa1111">"com.by"</span><span style="color:#117700">></</span><span style="color:#117700">context:component-scan</span><span style="color:#117700">></span>
​<span style="color:#aa5500"><!-- 配置视图解析器 --></span><span style="color:#117700"><</span><span style="color:#117700">bean</span> <span style="color:#0000cc">class</span>=<span style="color:#aa1111">"org.springframework.web.servlet.view.InternalResourceViewResolver"</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">property</span> <span style="color:#0000cc">name</span>=<span style="color:#aa1111">"prefix"</span> <span style="color:#0000cc">value</span>=<span style="color:#aa1111">"/WEB-INF/pages/"</span><span style="color:#117700">></</span><span style="color:#117700">property</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">property</span> <span style="color:#0000cc">name</span>=<span style="color:#aa1111">"suffix"</span> <span style="color:#0000cc">value</span>=<span style="color:#aa1111">".jsp"</span><span style="color:#117700">></</span><span style="color:#117700">property</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">bean</span><span style="color:#117700">></span>
​<span style="color:#aa5500"><!--开启springmvc注解支持:配置HandlerMapping和HandlerAdapter--></span><span style="color:#117700"><</span><span style="color:#117700">mvc:annotation-driven</span><span style="color:#117700">></</span><span style="color:#117700">mvc:annotation-driven</span><span style="color:#117700">></span>
<span style="color:#117700"></</span><span style="color:#117700">beans</span><span style="color:#117700">></span></span></span>

2.2.4.success.jsp

<span style="background-color:#f8f8f8"><span style="color:#333333"><span style="color:#117700"><</span><span style="color:#117700">%@</span> <span style="color:#0000cc">page</span> <span style="color:#0000cc">contentType</span>=<span style="color:#aa1111">"text/html;charset=UTF-8"</span> <span style="color:#0000cc">language</span>=<span style="color:#aa1111">"java"</span> <span style="color:#0000cc">%</span><span style="color:#117700">></span>
<span style="color:#117700"><</span><span style="color:#117700">html</span><span style="color:#117700">></span>
<span style="color:#117700"><</span><span style="color:#117700">head</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">title</span><span style="color:#117700">></span>Title<span style="color:#117700"></</span><span style="color:#117700">title</span><span style="color:#117700">></span>
<span style="color:#117700"></</span><span style="color:#117700">head</span><span style="color:#117700">></span>
<span style="color:#117700"><</span><span style="color:#117700">body</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">h2</span><span style="color:#117700">></span>${msg}<span style="color:#117700"></</span><span style="color:#117700">h2</span><span style="color:#117700">></span>
<span style="color:#117700"></</span><span style="color:#117700">body</span><span style="color:#117700">></span>
<span style="color:#117700"></</span><span style="color:#117700">html</span><span style="color:#117700">></span></span></span>

2.2.5.web.xml

<span style="background-color:#f8f8f8"><span style="color:#333333"><span style="color:#555555"><?xml</span> <span style="color:#555555">version="1.0" encoding="UTF-8"?></span>
<span style="color:#117700"><</span><span style="color:#117700">web-app</span> <span style="color:#0000cc">xmlns</span>=<span style="color:#aa1111">"http://xmlns.jcp.org/xml/ns/javaee"</span><span style="color:#0000cc">xmlns:xsi</span>=<span style="color:#aa1111">"http://www.w3.org/2001/XMLSchema-instance"</span><span style="color:#0000cc">xsi:schemaLocation</span>=<span style="color:#aa1111">"http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"</span><span style="color:#0000cc">version</span>=<span style="color:#aa1111">"4.0"</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">servlet</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">servlet-name</span><span style="color:#117700">></span>springmvc<span style="color:#117700"></</span><span style="color:#117700">servlet-name</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">servlet-class</span><span style="color:#117700">></span>org.springframework.web.servlet.DispatcherServlet<span style="color:#117700"></</span><span style="color:#117700">servlet-class</span><span style="color:#117700">></span><span style="color:#aa5500"><!-- 配置初始化参数,用于读取 SpringMVC 的配置文件 --></span><span style="color:#117700"><</span><span style="color:#117700">init-param</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">param-name</span><span style="color:#117700">></span>contextConfigLocation<span style="color:#117700"></</span><span style="color:#117700">param-name</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">param-value</span><span style="color:#117700">></span>classpath:springmvc.xml<span style="color:#117700"></</span><span style="color:#117700">param-value</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">init-param</span><span style="color:#117700">></span><span style="color:#aa5500"><!-- 表示容器在启动时立即创建servlet对象 --></span><span style="color:#117700"><</span><span style="color:#117700">load-on-startup</span><span style="color:#117700">></span>1<span style="color:#117700"></</span><span style="color:#117700">load-on-startup</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">servlet</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">servlet-mapping</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">servlet-name</span><span style="color:#117700">></span>springmvc<span style="color:#117700"></</span><span style="color:#117700">servlet-name</span><span style="color:#117700">></span><span style="color:#117700"><</span><span style="color:#117700">url-pattern</span><span style="color:#117700">></span>/<span style="color:#117700"></</span><span style="color:#117700">url-pattern</span><span style="color:#117700">></span><span style="color:#117700"></</span><span style="color:#117700">servlet-mapping</span><span style="color:#117700">></span>
<span style="color:#117700"></</span><span style="color:#117700">web-app</span><span style="color:#117700">></span></span></span>

2.2.6.测试

访问:http://localhost:8080/hello

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/609483.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

逆向数据宽度与符号

正数与负数的 刚好是半 所以 0 表示正数 1表示负数 有符号与无符号是程序员定的 并不是开头是1就表示负数 0表示正数 得看有无符号 双字 32bit 4字节

【UE Niagara学习笔记】04 - 火焰喷射时的黑烟效果

目录 效果 步骤 一、创建烟雾材质 二、添加新的发射器 三、设置新发射器 3.1 删除Color模块 3.2 减少生成的粒子数量 3.3 设置粒子初始颜色 3.4 设置烟雾的位置偏移 3.5 设置烟雾淡出 在上一篇博客&#xff08;【UE Niagara学习笔记】03 - 火焰喷射效果&#xf…

机器学习(四) -- 模型评估(4)

系列文章目录 机器学习&#xff08;一&#xff09; -- 概述 机器学习&#xff08;二&#xff09; -- 数据预处理&#xff08;1-3&#xff09; 机器学习&#xff08;三&#xff09; -- 特征工程&#xff08;1-2&#xff09; 机器学习&#xff08;四&#xff09; -- 模型评估…

【JAVA】怎么确保一个集合不能被修改

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a; JAVA ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 前言 正文 示例&#xff1a; 不可修改的List&#xff1a; 不可修改的Set&#xff1a; 不可修改的Map&#xff1a; 结语 我的其他博…

SpringBoot 如何增强PageHelper入参的健壮性

PageHelper.startPage(int pageNum, int pageSize, boolean count) 参数为外部输入&#xff0c;故存在异常输入场景。比如 pageNum 和 pageSize 输入的值 负数 或者 0&#xff0c;所以引入PageUtils来对入参进行判断矫正&#xff0c;从而避免引入异常。 第1步&#xff1a;支持…

conda新建、配置python3.8虚拟环境,torch-cuda1.8,torchtext0.9.0,huggingface安装transformers库

起因是我在用bert的时候&#xff0c;导包报错 Python 环境缺少 importlib.metadata 模块。importlib.metadata 是 Python 3.8 引入的模块&#xff0c;而我的环境中使用的 Python 版本为 3.7。所以我得重新配置一个python3.8的环境 准备工作 在开始菜单找到anaconda prompt(an…

Vscode中的node.js的安装与使用

前往官网下载安装包 Node.js 中文网 选择较为稳定的版本 安装全选下一步就好了&#xff0c;这里可以选择配置环境变量是否自动启动node.js 在控制台输入指令如果出现了版本号就代表成功了

flex布局(3)

九、骰子 *{margin:0;padding: 0;box-sizing: border-box; } .flex{display: flex;flex-flow: row wrap;justify-content: space-between;align-items: center;align-content: space-between;padding:20px; } .touzi{width: 120px;height: 120px;background-color: aliceblue;…

Java网络爬虫--HttpClient

目录标题 技术介绍有什么优点&#xff1f;怎么在项目中引入&#xff1f; 请求URLEntityUtils 类GET请求带参数的GET请求POST请求 总结 技术介绍 HttpClient 是 Apache Jakarta Common 下的子项目&#xff0c;用来提供高效的、功能丰富的、支持 HTTP 协议的客户端编程工具包。相…

开启Android学习之旅-6-实战答题App

不经过实战&#xff0c;看再多理论&#xff0c;都是只放在笔记里&#xff0c;活学活用才是硬道理。同时开发应用需要循序渐进&#xff0c;一口气规划300个功能&#xff0c;400张表&#xff0c;会严重打击自己的自信。这里根据所学的&#xff0c;开发一个答题App。 题库需求分析…

QML 模型视图

作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 对于 GUI 应用程序来说,我们通常需要格式化数据并进行显示,而 QML 提供了一种很便利的显示方式 - Model-View-Delegate(简称:MVD)。该模式是 Model-View-Controller(简称:MVC)的一种变体,常被用于分…

HackTheBox - Medium - Linux - Awkward

Awkward Awkward 是一款中等难度的机器&#xff0c;它突出显示了不会导致 RCE 的代码注入漏洞&#xff0c;而是 SSRF、LFI 和任意文件写入/追加漏洞。此外&#xff0c;该框还涉及通过不良的密码做法&#xff08;例如密码重用&#xff09;以及以纯文本形式存储密码来绕过身份验…

力扣:18.四数之和

一、做题链接&#xff1a;18. 四数之和 - 力扣&#xff08;LeetCode&#xff09; 二、题目分析 1.做这一道题之前本博主建议先看上一篇《三数之和》 2.题目分析 给你一个由 n 个整数组成的数组 nums &#xff0c;和一个目标值 target 。请你找出并返回满足下述全部条件且不重…

计算机毕业设计 基于SpringBoot的项目申报系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…

程序媛的mac修炼手册-- 终端(terminal)常用命令

「终端&#xff08;terminal&#xff09;」相当于macOS的一个 App &#xff0c;它的特殊之处是&#xff0c;它是管理其它App的App&#xff0c;操作主要通过命令行界面 (CLI) 。 相比于我们日常熟悉的用户界面&#xff08;User Interface&#xff0c;UI&#xff09;&#xff0c…

Redis 主从、哨兵和分片集群简单介绍

Redis 主从集群架构 单节点 redis 并发能力有上限&#xff0c;要进一步提高 redis 并发能力&#xff0c;就要搭建主从集群&#xff0c;实现读写分离 主从同步原理 Replicaition id&#xff1a;每台 master 机器都一个 repl_id&#xff0c;是数据集的表示&#xff0c;若 salv…

软件测试|如何在Pycharm中配置文件头部信息

简介 PyCharm是一款功能强大的Python集成开发环境&#xff08;IDE&#xff09;&#xff0c;在开发过程中&#xff0c;我们经常需要在代码文件的开头添加固定的文件说明信息&#xff0c;例如版权声明、作者信息、创建日期等。手动添加这些信息可能会很繁琐&#xff0c;但是PyCh…

[Vulnhub靶机] DriftingBlues: 5

[Vulnhub靶机] DriftingBlues: 5靶机渗透思路及方法&#xff08;个人分享&#xff09; 靶机下载地址&#xff1a; https://download.vulnhub.com/driftingblues/driftingblues5_vh.ova 靶机地址&#xff1a;192.168.67.24 攻击机地址&#xff1a;192.168.67.3 一、信息收集 …

探索人工智能:深度学习、人工智能安全和人工智能

深度学习是人工智能的一种重要技术&#xff0c;它模拟了人类大脑神经网络的工作原理&#xff0c;通过建立多层次的神经元网络来实现对数据的分析和处理。这种技术的引入使得人工智能的发展进入到了一个新的阶段。 现如今&#xff0c;深度学习在各个领域都有着广泛的应用。例如…

Java设计模式-访问者模式

访问者模式 一、概述二、结构三、案例实现四、优缺点五、使用场景六、扩展 一、概述 定义&#xff1a; 封装一些作用于某种数据结构中的各元素的操作&#xff0c;它可以在不改变这个数据结构的前提下定义作用于这些元素的新的操作。 二、结构 访问者模式包含以下主要角色: …