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

上海城乡建设管理局网站php网站开发作业

上海城乡建设管理局网站,php网站开发作业,工作啦,下载图片的网站建设MVC 1. 什么是mvc开发模式2. 基于servlet手写mvc框架1. 什么是mvc开发模式 mvc不是一种技术#xff0c;只是一种开发模式使用分层开发模式能在大型项目中#xff0c;让开发人员更好的协同工作便于项目的维护和扩展 M: Model 模型层-数据库层-daoV: View 视图层-… MVC 1. 什么是mvc开发模式2. 基于servlet手写mvc框架1. 什么是mvc开发模式 mvc不是一种技术只是一种开发模式使用分层开发模式能在大型项目中让开发人员更好的协同工作便于项目的维护和扩展 M: Model 模型层-数据库层-daoV: View 视图层-收集和展示用户数据-html/jspC: Controller-数据封装-逻辑处理-流程控制-servlet/action/controller 2. 基于servlet手写mvc框架 什么是框架 是一种标准或者规范使用别人写好的东西按照他的制造好的轮子他的流程去开发我想要实现的功能提高开发效率降低开发成本。 框架的分类分为前后端框架 前端框架分为功能性的和美观性的功能性的 jQueryvueangular 判断数据合法性dom操作美观性的 bootstrapeasyuireactqucikui… 什么是mvc框架 mvc是后端框架专门用来解决controller与view层数据交互的问题对这个交互过程中的各种操作进行规范和封装让开发人员在开发web应用程序时对请求响应的控制更为方便数据层的访问不属于mvc框架内 mvc框架的职责 规范开发流程对请求数据进行封装如页面有100个表单 多个表单流程跳转的规范 是转发重定向还是js跳转 工作流程图 ActionServlet好比一个大哥 mvc框架的核心功能大哥接收到老板的任务接收到业务请求时安排小弟服务对象实现业务的类来完成任务小弟最后执行任务完成逻辑处理把结果返回大哥最后结果返回流程控制老板客户端。 基于servlet的mvc框架核心成员 ActionServlet servlet 接收特定的请求mvc框架的入口Action接口service方法规范所有小弟的服务方法小弟xxxAction实现接口完成逻辑处理为客户端提供服务.properties键值对配置文件描述业务请求与xxxAction类的路径 反射根据业务请求取到配置文件的服务类可封装response流输出js代码跳转 核心控制器ActionServlet 配置文件 servletservlet-nameActionServlet/servlet-nameservlet-classcom.lovely.mvc.ActionServlet/servlet-class/servletservlet-mappingservlet-nameActionServlet/servlet-nameurl-pattern*.do/url-pattern !-- 如接收query.do 的业务请求--/servlet-mappingaction接口规范服务类 package com.lovely.mvc;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;public interface Action {// service服务方法接口返回要跳转的页面urlpublic String service(HttpServletRequest req, HttpServletResponse resp);} 创建配置文件核心控制器根据业务请求跳到对应的服务类完成业务 控制器代码 package com.lovely.mvc;import java.io.IOException; import java.io.InputStream; import java.util.Properties;import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;public class ActionServlet extends HttpServlet {/*** 核心控制servlet* 根据访问方式 和 类的路径信息 到对应的servlet来处理*/private static final long serialVersionUID 1L;private Properties property null;Overridepublic void init() throws ServletException {property new Properties();// 加载配置文件InputStream in this.getServletContext().getResourceAsStream(/WEB-INF/config.properties);try {property.load(in);} catch (IOException e) {e.printStackTrace();} finally {try {if (in ! null)in.close();} catch (IOException e) {e.printStackTrace();}}}Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {String uri req.getRequestURI();String key uri.substring(uri.lastIndexOf(/) 1, uri.lastIndexOf(.));System.out.println(uri \t key);// 根据请求对象 拿到对应的类 进行服务String value property.get(key).toString();try {// 反射拿到类对象Class? c Class.forName(value);// 创建action对象Action action (Action) c.newInstance();String result action.service(req, resp);if (result ! null) {// 根据返回结果 决定是请求转发 还是重定向if (result.startsWith(forward)) {String path result.split(:)[1];req.getRequestDispatcher(path).forward(req, resp);} else if (result.startsWith(redirect)) {String path result.split(:)[1];resp.sendRedirect(req.getContextPath() path);} else {// 写路径默认请求转发req.getRequestDispatcher(result).forward(req, resp);} }} catch (ClassNotFoundException e) {e.printStackTrace();} catch (InstantiationException e) {e.printStackTrace();} catch (IllegalAccessException e) {e.printStackTrace();}}} 提供服务对象类以查询为例 package com.lovely.action;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import com.lovely.dao.CommonDao; import com.lovely.entity.Ticket; import com.lovely.mvc.Action;public class QueryAction implements Action {Overridepublic String service(HttpServletRequest req, HttpServletResponse resp) {CommonDao dao new CommonDao();req.setAttribute(list, dao.queryAll(Ticket.class));// 返回转发的地址return /list.jsp;}} 以上就算一个基于servlet实现的mvc框架了别人已经有更牛的框架这里只是拿来分析。上面的代码离不开数据库操作请看 反射和注解对dao层操作
http://www.pierceye.com/news/450058/

相关文章:

  • 珠海网站建设费用自己做网站切入地图
  • 个人在线视频播放网站搭建软件属于网站开发吗
  • 小米的企业网站建设思路c2c的网站
  • 网站设计书籍做网站的基础
  • 买下云服务器怎么做网站官方网站怎么查询
  • 手机版企业网站php西宁做网站公司排名
  • 微网站如何做推广做淘宝客网站需要备案吗
  • 天津网站制作重点windows与wordpress
  • 可以查企业备案的网站吗佛山住房和城乡建设部网站官网
  • 和初中生做视频网站怎么进入追信魔盒网站开发软件
  • 邯郸开发网站有哪些阳江市房产信息网
  • 快速网站推广公司丹阳房产网二手房
  • 做一个卖东西的网站黄村做网站的公司
  • 网站增长期怎么做广州seo推广优化
  • 怎么做拍卖网站吗免费网站推广入口
  • 农产品网站建设的主要工作岳阳seo招聘
  • 每年网站备案抽查惠州营销网站建设
  • 四川网站建设seo友汇网网站建设
  • 企业家居网站建设做公司网站方案
  • 特性设计的网站营销型网站建设的五力原则
  • 网站布局设计工具装修室内设计培训学校
  • 哈尔滨网络科技公司做网站中国建设官方网
  • 紫川网站建设做画找图网站
  • 郑州快速建站公司合肥学做网站app的学校
  • 除了做视频网站还能做什么网站wordpress手机站如何做
  • 域名注册最好的网站人才网站
  • 网站建设咨询云尚网络中铁十二局出国招工
  • 建站系统推荐做网站在哪里做
  • 贵州建设工程招标协会网站wordpress黑白主题
  • 怎么免费建立自己网站扁平化网站设计