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

南昌网站建设58软件开发流程怎么写

南昌网站建设58,软件开发流程怎么写,江苏通力建设官方网站,济南商务网站建设一、SpringMVC简介1、什么是MVCMVC是一种软件架构的思想#xff0c;将软件按照模型、视图、控制器来划分M#xff1a;Model#xff0c;模型层#xff0c;指工程中的JavaBean#xff0c;作用是处理数据补充#xff1a;框架其实就是配置文件jar包JavaBean分为两类#xff…一、SpringMVC简介1、什么是MVCMVC是一种软件架构的思想将软件按照模型、视图、控制器来划分MModel模型层指工程中的JavaBean作用是处理数据补充框架其实就是配置文件jar包JavaBean分为两类一类称为实体类Bean专门存储业务数据的如 Student、User 等一类称为业务处理 Bean指 Service 或 Dao 对象专门用于处理业务逻辑和数据访问。VView视图层指工程中的html或jsp等页面作用是与用户进行交互展示数据CController控制层指工程中的servlet作用是接收请求和响应浏览器MVC的工作流程用户通过视图层发送请求到服务器在服务器中请求被Controller接收Controller调用相应的Model层处理请求处理完毕将结果返回到ControllerController再根据请求处理的结果找到相应的View视图渲染数据后最终响应给浏览器2、什么是SpringMVC本质就是一个ServletSpringMVC是Spring的一个后续产品是Spring的一个子项目SpringMVC 是 Spring 为表述层开发提供的一整套完备的解决方案。在表述层框架历经 Strust、WebWork、Strust2 等诸多产品的历代更迭之后目前业界普遍选择了 SpringMVC 作为 Java EE 项目表述层开发的首选方案。注三层架构分为表述层或表示层、业务逻辑层、数据访问层表述层表示前台页面和后台servlet3、SpringMVC的特点Spring 家族原生产品与 IOC 容器等基础设施无缝对接基于原生的Servlet通过了功能强大的前端控制器DispatcherServlet对请求和响应进行统一处理表述层各细分领域需要解决的问题全方位覆盖提供全面解决方案(例如参数的获取不需要request.getParamSpring已经将其封转好只需要注解对象形参去接收就好了)代码清新简洁大幅度提升开发效率内部组件化程度高可插拔式组件即插即用想要什么功能配置相应组件即可性能卓著尤其适合现代大型、超大型互联网项目要求二、HelloWorld1、开发环境IDEidea 2019.2构建工具maven3.5.4 如果手动倒入jar包还需要考虑jar包之间的依赖问题Maven会将相依赖的jar包都导入进去服务器tomcat7Spring版本5.3.12、创建maven工程a添加web模块b打包方式warpackagingwar/packagingc引入依赖dependencies!-- SpringMVC --dependencygroupIdorg.springframework/groupIdartifactIdspring-webmvc/artifactIdversion5.3.1/version/dependency!-- 日志 --dependencygroupIdch.qos.logback/groupIdartifactIdlogback-classic/artifactIdversion1.2.3/version/dependency!-- ServletAPI --dependencygroupIdjavax.servlet/groupIdartifactIdjavax.servlet-api/artifactIdversion3.1.0/versionscopeprovided/scope/dependency!-- Spring5和Thymeleaf整合包 --dependencygroupIdorg.thymeleaf/groupIdartifactIdthymeleaf-spring5/artifactIdversion3.0.12.RELEASE/version/dependency /dependencies注由于 Maven 的传递性我们不必将所有需要的包全部配置依赖而是配置最顶端的依赖其他靠传递性导入。![images](/Users/lannisite/Library/Mobile Documents/com~apple~CloudDocs/Typora笔记/spring学习笔记/Spring框架学习/img/img001.png)3、配置web.xmlweb.xml主要用来注册servlet filter listener注册SpringMVC的前端控制器DispatcherServlet回顾 为什么要注册servlet因为我们的浏览器无法直接访问类所以我们想访问servlet就必须设置匹配路径当路径符合匹配路径时当前请求就会被servlet处理 a默认配置方式此配置作用下SpringMVC的配置文件默认位于WEB-INF下默认名称为servlet-name-servlet.xml例如以下配置所对应SpringMVC的配置文件位于WEB-INF下文件名为springMVC-servlet.xml!-- 配置SpringMVC的前端控制器对浏览器发送的请求统一进行处理 -- servletservlet-namespringMVC/servlet-nameservlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class /servlet servlet-mappingservlet-namespringMVC/servlet-name!--设置springMVC的核心控制器所能处理的请求的请求路径/所匹配的请求可以是/login或.html或.js或.css方式的请求路径但是/不能匹配.jsp请求路径的请求上一个阶段学servlet一般配置/* ,/*代表所有请求包括.jsp请求--url-pattern//url-pattern /servlet-mapping存在问题以上的配置方式的配置路径b扩展配置方式上面的配置方式为默认配置方式指SpringMVC的配置文件名称和位置都是默认的。我们实现扩展配置的目的就是不要把配置文件放到WEB-INF下要让WEB-INF下只放html页面现在需要自定义SpringMVC的配置文件和名称可通过init-param标签设置SpringMVC配置文件的位置和名称通过load-on-startup标签设置SpringMVC前端控制器DispatcherServlet的初始化时间!-- 配置SpringMVC的前端控制器对浏览器发送的请求统一进行处理 -- servletservlet-namespringMVC/servlet-nameservlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class!-- 通过初始化参数指定SpringMVC配置文件的位置和名称 --init-param!-- contextConfigLocation为固定值 上下文配置路径 --param-namecontextConfigLocation/param-name!-- 使用classpath:表示从类路径查找配置文件例如maven工程中的src/main/resources --!-- 这里需要创建Spring配置文件和Spring配置文件一样MVC是基于Spring的--param-valueclasspath:springMVC.xml/param-value/init-param!-- 作为框架的核心组件在启动过程中有大量的初始化操作要做而这些操作放在第一次请求时才执行会严重影响访问速度因此需要通过此标签将启动控制DispatcherServlet的初始化时间提前到服务器启动时--load-on-startup1/load-on-startup /servlet servlet-mappingservlet-namespringMVC/servlet-name!--设置springMVC的核心控制器所能处理的请求的请求路径/所匹配的请求可以是/login或.html或.js或.css方式的请求路径但是/不能匹配.jsp请求路径的请求--url-pattern//url-pattern /servlet-mapping注url-pattern标签中使用/和/*的区别/所匹配的请求可以是/login或.html或.js或.css方式的请求路径但是/不能匹配.jsp请求路径的请求因此就可以避免在访问jsp页面时该请求被DispatcherServlet处理从而找不到相应的页面/*则能够匹配所有请求例如在使用过滤器时若需要对所有请求进行过滤就需要使用/*的写法4、创建请求控制器由于前端控制器对浏览器发送的请求进行了统一的处理但是具体的请求有不同的处理过程因此需要创建处理具体请求的类即请求控制器请求控制器中每一个处理请求的方法成为控制器方法因为SpringMVC的控制器由一个POJO普通的Java类:Plain Ordinary Java Object担任因此需要通过Controller注解将其标识为一个控制层组件交给Spring的IoC容器管理此时SpringMVC才能够识别控制器的存在Controller public class HelloController {}5、创建springMVC的配置文件!-- 自动扫描包 -- !-- 配置完这一步之后会看到controller类前面有一个叶子状的图标就Bean说明已经交给Spring处理了 -- context:component-scan base-packagecom.atguigu.mvc.controller/!-- 配置Thymeleaf视图解析器 -- bean idviewResolver classorg.thymeleaf.spring5.view.ThymeleafViewResolverproperty nameorder value1/property namecharacterEncoding valueUTF-8/property nametemplateEnginebean classorg.thymeleaf.spring5.SpringTemplateEngineproperty nametemplateResolverbean classorg.thymeleaf.spring5.templateresolver.SpringResourceTemplateResolver!-- 视图前缀 --property nameprefix value/WEB-INF/templates//!-- 视图后缀 --property namesuffix value.html/property nametemplateMode valueHTML5/property namecharacterEncoding valueUTF-8 //bean/property/bean/property /bean!-- 处理静态资源例如html、js、css、jpg若只设置该标签则只能访问静态资源其他请求则无法访问此时必须设置mvc:annotation-driven/解决问题-- mvc:default-servlet-handler/!-- 开启mvc注解驱动 -- mvc:annotation-drivenmvc:message-converters!-- 处理响应中文内容乱码 --bean classorg.springframework.http.converter.StringHttpMessageConverterproperty namedefaultCharset valueUTF-8 /property namesupportedMediaTypeslistvaluetext/html/valuevalueapplication/json/value/list/property/bean/mvc:message-converters /mvc:annotation-driven补充WEB-INF下的文件不能通过浏览器直接访问重定向也不行只能通过转发。即使放到webapp下面也不可以直接访问。设置视图时前后缀都设置了所以访问index.html的路径只需要填index就可以6、测试HelloWorlda实现对首页的访问这里要实现SpringMVC去处理请求在请求控制器中创建处理请求的方法// RequestMapping注解处理请求和控制器方法之间的映射关系 // RequestMapping注解的value属性可以通过请求地址匹配请求/表示的当前工程的上下文路径 // localhost:8080/springMVC/ RequestMapping(/) public String index() {//设置视图名称return index; }b通过超链接跳转到指定页面在主页index.html中设置超链接!DOCTYPE html html langen xmlns:thhttp://www.thymeleaf.org headmeta charsetUTF-8title首页/title /head body h1首页/h1!-- 以斜线开头的路径叫做绝对路径绝对路径又分浏览器解析的和服务器解析的超链接中所写的绝对路径就是由浏览器解析的这个时候表示的是从localhost:8080下访问所以说直接写少一个上下文路径加上他就是SpringMVC也就是在tomcat里面配置的上下文路径同时上下文路径可以在配置里面修改所以这里也不能写死这里就需要使用thymeleaf语法了-- !-- 在href前面加上th就会被thymeleaf解析{}里面识别到绝对路径时就会 -- a th:href{/target}访问目标页面/a /body /html在请求控制器中创建处理请求的方法RequestMapping(/target) public String target() {return target; }7、总结浏览器发送请求若请求地址符合前端控制器的url-pattern该请求就会被前端控制器DispatcherServlet处理。前端控制器会读取SpringMVC的核心配置文件通过扫描组件找到控制器将请求地址和控制器中RequestMapping注解的value属性值进行匹配若匹配成功该注解所标识的控制器方法就是处理请求的方法。处理请求的方法需要返回一个字符串类型的视图名称该视图名称会被视图解析器解析加上前缀和后缀组成视图的路径通过Thymeleaf对视图进行渲染最终转发到视图所对应页面
http://www.sczhlp.com/news/238299/

相关文章:

  • 门户网站开发哪家好技术支持网站
  • 一个备案号多个网站开发一个大型网站需要多少钱
  • 红河网站建设设计宁波外贸seo网站建设
  • 深圳网站建设deyond中国科技成就ppt
  • 重庆城乡住房建设厅网站wordpress主题后台不显示
  • 国外网站需要备案湖州市建设工程造价信息网
  • 网站注册免费永久九台区建设银行网站
  • 国内常见的博客网站1688seo优化是什么
  • 网站关键字排名优化火车头 采集 wordpress
  • 电商网站安全解决方案阳江招聘网站
  • 用ps做网站切片制作微信公众号的软件
  • 做封面下载网站班级网页模板
  • 网站建设英语好搜seo软件
  • 深圳市住房和城乡建设厅网站首页网站建设扁平化
  • 新网站百度seo如何做室内设计网站都有哪些平台
  • 如何建立一个企业的网站互联网公司排名100强
  • 怎样搭建一个企业网站做视频的素材什么网站好
  • 建设公司自己的网站seo优化排名工具
  • 2025年密集母线槽品牌
  • 2025年口碑好的密集母线槽产品
  • 2025年密集母线槽品牌排行榜
  • 10 28
  • 混合动力汽车MATLAB建模实现方案
  • 999免费的网站备案网站名称有什么用
  • 北京建网站找哪个公司南宁app开发公司哪个好
  • 外国网站设计风格直播小程序源码
  • 雨花区师德师风建设专题网站自学网站搭建
  • 衡水企业网站建设如何做企业网站建设
  • 建怎样的网站挣钱快微信代运营费用
  • 集团公司网站源码下载免费注册qq邮箱