网站开发需要多长时间佛山专业建站公司
- 作者: 五速梦信息网
- 时间: 2026年03月21日 07:33
当前位置: 首页 > news >正文
网站开发需要多长时间,佛山专业建站公司,有没有知道网址的,塑胶制品 东莞网站建设目录 一、MVC模式
1.概述
2.好处
二、三层架构
1.概述
三、MVC与三层架构
四、练习 一、MVC模式
1.概述
MVC是一种分层开发的模式#xff0c;其中
M#xff1a;Model#xff0c;业务模型#xff0c;处理业务 V#xff1a; View#xff0c;视图#xff0c;界面展…目录 一、MVC模式
1.概述
2.好处
二、三层架构
1.概述
三、MVC与三层架构
四、练习 一、MVC模式
1.概述
MVC是一种分层开发的模式其中
MModel业务模型处理业务 V View视图界面展示 CController控制器处理请求调用型和视图 2.好处 职责单一互不影响 有利于分工协作 有利于组件重用 二、三层架构
1.概述 View视图不只是JSP
数据访问层持久层:对数据库的CRUD基本操作
一般命名为反转公司网址/controller
业务逻辑层业务层:对业务逻辑进行封装组合数据访问层层中基本功能形成复杂的业务逻辑功能。
一般命名为反转公司网址/service
表现层:接收请求封装数据调用业务逻辑层响应数据
一般命名为反转公司网址/dao或者mapper 三、MVC与三层架构 四、练习
给上次的数据添加一个状态字段0禁用1启用2预售设个默认值1即可
使用三层架构思想开发
参考下图 java目录结构 代码只写主要的了
service包下
public class ProductService {final SqlSessionFactory sqlSessionFactory SqlSessionFactoryUtils.getSqlSessionFactory();public ListProduct selectAll(){final SqlSession sqlSession sqlSessionFactory.openSession();final ProductMapper mapper sqlSession.getMapper(ProductMapper.class);final ListProduct products mapper.selectAll();sqlSession.close();return products;};
} web包下
WebServlet(/selectAll)
public class selectAll extends HttpServlet {private final ProductService productService new ProductService();Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
final ListProduct products productService.selectAll();request.setAttribute(product,products);request.getRequestDispatcher(/jsp/product.jsp).forward(request,response);}
Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}
}
之后回到视图层 jsp
% taglib prefixc urihttp://java.sun.com/jsp/jstl/core %
%–Created by IntelliJ IDEA.User: LEGIONDate: 2024/3/13Time: 13:36To change this template use File | Settings | File Templates.
–%
% page contentTypetext/html;charsetUTF-8 languagejava %
% page isELIgnoredfalse %
%–% final Object product request.getAttribute(product);%–%
html
headtitleTitle/title
/head
bodyh1product列表/h1table border1px solid blacktrth商品序号/thth商品id/thth商品名/thth商品图片/thth商品价格/thth商品评论数/thth商品分类/thth商品状态/thth商品发布时间/thth商品更新时间/th/trc:forEach items\({product} varproduct varStatusstatustr%-- index从0开始count从1开始--%td\){status.count}/td%– \({user.id} Id getId()--%td\){product.id}/tdtd\({product.title}/tdtdimg src\){product.imgUrl} alt width75px height75px/tdtd\({product.price}/tdtd\){product.comment}/tdtd\({product.category}/tdtd\){product.status}/tdtd\({product.gmtCreate}/tdtd\){product.gmtModified}/td/tr/c:forEach
/table
/body
/html 预览图 添加
html
form action/product_demo_war/add methodpostinput typetext nametitle placeholder商品名称brinput typetext nameprice placeholder商品价格br
!– 图片上传在这里就先不写了–input typenumber namecategory placeholder商品类型数字就好brinput typeradio namestatus启用input typeradio namestatus禁用brinput typesubmit value添加/form
service
/*** 添加商品* param product 商品对象*/
public void add(Product product){final SqlSession sqlSession sqlSessionFactory.openSession();final ProductMapper mapper sqlSession.getMapper(ProductMapper.class);mapper.add(product);sqlSession.commit();sqlSession.close();
}
web
WebServlet(/add)
public class Add extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {ProductService productService new ProductService();final String title request.getParameter(title);final String price request.getParameter(price);final Integer status Integer.parseInt(request.getParameter(status));final Integer category Integer.parseInt(request.getParameter(category));Product product new Product(title,price,category,status);productService.add(product);request.getRequestDispatcher(/selectAll).forward(request,response);}
Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}
}
预览 修改
有两步 显示原先的数据回显 修改现有的数据修改
第一部分回显根据id显示值
service
public Product selectById(Long id){final SqlSession sqlSession sqlSessionFactory.openSession();final ProductMapper mapper sqlSession.getMapper(ProductMapper.class);final Product product mapper.selectById(id);sqlSession.close();return product;
}
web
WebServlet(/selectById)
public class SelectById extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {final String id request.getParameter(id);ProductService productService new ProductService();final Product product productService.selectById(Long.parseLong(id));request.setAttribute(product,product);System.out.println(id);request.getRequestDispatcher(/jsp/productUpdate.jsp).forward(request,response);}
Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}
}
显示层productUpdate.jsp
% taglib prefixc urihttp://java.sun.com/jsp/jstl/core %
% page contentTypetext/html;charsetUTF-8 languagejava %
% page isELIgnoredfalse %
html
headtitle修改/titlestyle.text {width: 100%;}/style
/head
body
form action/product_demo_war/updateById methodpostinput typehidden nameid value\({product.id}input classtext typetext nametitle placeholder商品名称 value\){product.title}brinput classtext typetext nameprice placeholder商品价格 value\({product.price}br!-- 图片上传在这里就先不写了--input classtext typenumber namecategory placeholder商品类型数字就好 value\){product.category}brc:if test\({product.status 1}input typeradio namestatus value1 checked启用input typeradio namestatus value0禁用/c:ifc:if test\){product.status 0}input typeradio namestatus value1启用input typeradio namestatus value0 checked禁用/c:if
brinput typesubmit value修改
/form
/body
/html 第二部分修改
service
public void UpdateById(Product product){final SqlSession sqlSession sqlSessionFactory.openSession();final ProductMapper mapper sqlSession.getMapper(ProductMapper.class);mapper.updateById(product);sqlSession.commit();
} servlet
WebServlet(/updateById)
public class Update extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
final Long id Long.parseLong(request.getParameter(id));final String title request.getParameter(title);final String price request.getParameter(price);final Integer category Integer.parseInt(request.getParameter(category));final Integer status Integer.parseInt(request.getParameter(status));Date gmtModified new Date();
Product product new Product(id,title,price,category,status,gmtModified);ProductService productService new ProductService();productService.UpdateById(product);
request.getRequestDispatcher(/selectAll).forward(request,response);
}
Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}
}
测试 删除不写了jsp知道怎么写就行了
- 上一篇: 网站开发需要多少人做网站什么系统好
- 下一篇: 网站开发需要多长时间网站开发完整项目平台网站开发
相关文章
-
网站开发需要多少人做网站什么系统好
网站开发需要多少人做网站什么系统好
- 技术栈
- 2026年03月21日
-
网站开发需要的软件wordpress 图像描述
网站开发需要的软件wordpress 图像描述
- 技术栈
- 2026年03月21日
-
网站开发需要的技术网站的构成元素
网站开发需要的技术网站的构成元素
- 技术栈
- 2026年03月21日
-
网站开发需要多长时间网站开发完整项目平台网站开发
网站开发需要多长时间网站开发完整项目平台网站开发
- 技术栈
- 2026年03月21日
-
网站开发需要哪些岗位网站建设岗位是干什么的
网站开发需要哪些岗位网站建设岗位是干什么的
- 技术栈
- 2026年03月21日
-
网站开发需要哪些技术宜昌网站建设多少钱
网站开发需要哪些技术宜昌网站建设多少钱
- 技术栈
- 2026年03月21日
