如何在局域网中做网站wordpress怎样发布时间
news/
2025/9/27 11:24:27/
文章来源:
如何在局域网中做网站,wordpress怎样发布时间,网页排版精美的中文网站,w3c标准网站SpringMVC 的入门
1环境搭建
1.1.创建工程 1.2.添加web支持
右键项目选择Add framework support... 2.添加web支持
3.效果
注意#xff1a; 不要先添加打包方式将web目录要拖拽到main目录下#xff0c;并改名为webapp
1.3.pom.xml
?xml version1.0 不要先添加打包方式将web目录要拖拽到main目录下并改名为webapp
1.3.pom.xml
?xml version1.0 encodingUTF-8?
project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.by/groupIdartifactIdSpringMVC_day01/artifactIdversion1.0-SNAPSHOT/version!--打包方式--packagingwar/packagingdependenciesdependencygroupIdorg.springframework/groupIdartifactIdspring-context/artifactIdversion5.1.8.RELEASE/version/dependencydependencygroupIdorg.springframework/groupIdartifactIdspring-web/artifactIdversion5.1.8.RELEASE/version/dependencydependencygroupIdorg.springframework/groupIdartifactIdspring-webmvc/artifactIdversion5.1.8.RELEASE/version/dependencydependencygroupIdjavax.servlet/groupIdartifactIdservlet-api/artifactIdversion2.5/versionscopeprovided/scope/dependencydependencygroupIdjavax.servlet.jsp/groupIdartifactIdjsp-api/artifactIdversion2.0/versionscopeprovided/scope/dependency/dependenciesbuildplugins!-- 配置Tomcat插件 --plugingroupIdorg.apache.tomcat.maven/groupIdartifactIdtomcat7-maven-plugin/artifactIdversion2.2/versionconfiguration!--端口号--port8080/port!--项目名--path//path/configuration/plugin/plugins/build
/project2.入门案例
2.1.index.jsp
% page contentTypetext/html;charsetUTF-8 languagejava %
htmlheadtitle$Title$/title/headbodya href/hellohello/a/body
/html2.2.controller
Controller
public class HelloController {RequestMapping(/hello)public ModelAndView hello() {//ModelAndView对象封装了模型数据和视图名称ModelAndView mv new ModelAndView();//添加数据request.setAttribute(“hello”,”hello springmvc!!”)mv.addObject(hello, 欢迎你 springmvc);//设置逻辑视图路径mv.setViewName(success);//返回数据和视图return mv;}
}2.3.springmvc.xml
?xml version1.0 encodingUTF-8?
beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xmlns:phttp://www.springframework.org/schema/pxmlns:contexthttp://www.springframework.org/schema/contextxmlns:mvchttp://www.springframework.org/schema/mvcxsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd!-- 配置创建 spring 容器要扫描的包 --context:component-scan base-packagecom.by/context:component-scan!-- 配置视图解析器 --bean classorg.springframework.web.servlet.view.InternalResourceViewResolverproperty nameprefix value/WEB-INF/pages//propertyproperty namesuffix value.jsp/property/bean!--开启springmvc注解支持配置HandlerMapping和HandlerAdapter--mvc:annotation-driven/mvc:annotation-driven
/beans2.4.success.jsp
% page contentTypetext/html;charsetUTF-8 languagejava %
html
headtitleTitle/title
/head
bodyh2${msg}/h2
/body
/html2.5.web.xml
?xml version1.0 encodingUTF-8?
web-app xmlnshttp://xmlns.jcp.org/xml/ns/javaeexmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsdversion4.0servletservlet-namespringmvc/servlet-nameservlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class!-- 配置初始化参数用于读取 SpringMVC 的配置文件 --init-paramparam-namecontextConfigLocation/param-nameparam-valueclasspath:springmvc.xml/param-value/init-param!-- 表示容器在启动时立即创建servlet对象 --load-on-startup1/load-on-startup/servletservlet-mappingservlet-namespringmvc/servlet-nameurl-pattern//url-pattern/servlet-mapping
/web-app2.6.测试
访问http://localhost:8080/hello
3.springmvc组件
3.1.DispatcherServlet前端控制器
用户请求到达前端控制器它就相当于mvc模式中的cdispatcherServlet 是整个流程控制的中心由它调用其它组件处理用户的请求dispatcherServlet 的存在降低了组件之间的耦合性。
3.2.HandlerMapping处理器映射器
HandlerMapping负责根据用户请求找到 Handler 即处理器SpringMVC 提供了不同的映射器实现不同的映射方式例如配置文件方式实现接口方式注解方式等。
3.3.Handler处理器
它就是我们开发中要编写的具体业务控制器。由DispatcherServlet 把用户请求转发到 Handler。由Handler对具体的用户请求进行处理。
3.4.HandlAdapter处理器适配器
通过 HandlerAdapter 对处理器进行执行这是适配器模式的应用通过扩展适配器可以对更多类型的处理器进行执行。 适配器对应的处理器以及这些处理器的作用
AnnotationMethodHandlerAdapter 主要是适配注解类处理器注解类处理器就是我们经常使用的 Controller 的这类处理器HttpRequestHandlerAdapter 主要是适配静态资源处理器静态资源处理器就是实现了 HttpRequestHandler 接口的处理器这类处理器的作用是处理通过 SpringMVC 来访问的静态资源的请求SimpleControllerHandlerAdapter 是 Controller 处理适配器适配实现了 Controller 接口或 Controller 接口子类的处理器比如我们经常自己写的 Controller 来继承 MultiActionController.SimpleServletHandlerAdapter 是 Servlet 处理适配器, 适配实现了 Servlet 接口或 Servlet 的子类的处理器我们不仅可以在 web.xml 里面配置 Servlet其实也可以用 SpringMVC 来配置 Servlet不过这个适配器很少用到而且 SpringMVC 默认的适配器没有他默认的是前面的三种。
3.5.View Resolver视图解析器
ViewResolver首先根据逻辑视图名解析成物理视图名即具体的页面地址再生成View视图对象返回给DispatcherServlet
3.6.View视图渲染器
view对象会调用render将model中的数据全部存放到request中完成了请求的处理源码如下
public interface View {String RESPONSE_STATUS_ATTRIBUTE View.class.getName() .responseStatus;String PATH_VARIABLES View.class.getName() .pathVariables;String SELECTED_CONTENT_TYPE View.class.getName() .selectedContentType;Nullabledefault String getContentType() {return null;}//把model里的数据存放到requestrequest和response负载跳转 void render(MapString, ? model, HttpServletRequest request, HttpServletResponse response) throws Exception;
}4.SpringMVC执行流程 具体步骤 Ø 第一步发起请求到前端控制器(DispatcherServlet) Ø 第二步前端控制器请求HandlerMapping查找 Handler Ø 第三步处理器映射器HandlerMapping向前端控制器返回HandlerHandlerMapping会把请求映射为HandlerExecutionChain对象包含一个Handler处理器对象多个HandlerInterceptor拦截器对象通过这种策略模式很容易添加新的映射策略 Ø 第四步前端控制器调用处理器适配器去执行Handler Ø 第五步处理器适配器HandlerAdapter将会根据适配的结果去执行Handler Ø 第六步Handler执行完成给适配器返回ModelAndView Ø 第七步处理器适配器向前端控制器返回ModelAndView ModelAndView是springmvc框架的一个底层对象包括 Model和view Ø 第八步前端控制器请求视图解析器去进行视图解析 根据逻辑视图名解析成真正的视图通过这种策略很容易更换其他视图技术只需要更改视图解析器即可 Ø 第九步视图解析器向前端控制器返回View Ø 第十步前端控制器进行视图渲染 将数据(在ModelAndView对象中)填充到request域 Ø 第十一步前端控制器向用户响应结果
5.RequestMapping注解
5.1.使用说明 作用用于建立请求URL和处理请求方法之间的对应关系。 出现位置 类上 请求 URL的第一级访问目录。此处不写的话就相当于应用的根目录。写的话需要以/开头。它出现的目的是为了使我们的 URL 可以按照模块化管理例如 账户模块 /account/add /account/update /account/delete … 订单模块 /order/add /order/update /order/delete 红色的部分就是把RequsetMappding写在类上使我们的URL更加精细。 方法上 请求URL的第二级访问目录可以窄化请求路径 属性 value用于指定请求的URL。它和path属性的作用是一样的。 method用于指定请求的方式。 注意以上属性只要出现2个或以上时他们的关系是与的关系。
5.2.窄化路径示例 使用二级目录访问 Controller
RequestMapping(/account)
public class AccountController {RequestMapping(/findAccount)public ModelAndView findAccount() {ModelAndView mv new ModelAndView();mv.addObject(msg, 欢迎你 springmvc);mv.setViewName(success);return mv;}
}在index.jsp里面定义超链接 a href/account/findAccount窄化路径/a5.3.method属性示例 描述需要使用指定的请求方式来请求该方法 Controller
RequestMapping(/account)
public class AccountController {//指定的请求方式RequestMapping(value /findAccount1, method RequestMethod.POST)public ModelAndView findAccount1() {ModelAndView mv new ModelAndView();mv.addObject(msg, 欢迎你 springmvc);mv.setViewName(success);return mv;}
}测试在index.jsp里使用get方式请求 a href/account/findAccount1请求方式/a结果 我们再换一种请求方式 form actionaccount/findAccount1 methodpostinput typesubmit value保存账户post 请求/form结果
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/919397.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!