当前位置: 主页 > 前端开发

前端项目目录结构搭建-前端服务器搭建

发布时间:2023-02-10 22:10   浏览次数:次   作者:佚名

SSM目录结构

写在前面的话

确定需求的时候,写写实体类前端项目目录结构搭建前端项目目录结构搭建,然后项目一般都是从设计数据库开始,所以都是从dao层开始写,确定了接口的写法(Name+Mapper.java接口文件),然后sql语句写在Name+Mapper.xml测试中,测试成功后开始按照接口的方法实现服务业务逻辑层的编写。 这一层关注的是参数值 和返回值 ,方法体就是按照我们的意愿对数据进行处理。 结果又回到controller层,最后和前端交互。 一直到头版。

在这里插入图片描述

查看示例目录结构

在这里插入图片描述

首页

1.保存图片

<%--
  Created by IntelliJ IDEA.
  User: hello
  Date: 2021/10/15
  Time: 11:06
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    图片上传ing
    
    


图片:

2.显示图片

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>


    
    
    
    list
    
    
    



        
序号 图片
${product.pid} 前端服务器搭建_前端搭建博客_前端项目目录结构搭建

控制器层


//图片上传
@Controller
public class ProductController {
    //controller调service层
        @Autowired
        private ProductService productService;
        @RequestMapping("/listImages")
        public ModelAndView list(Model model) {
            List<Product> lists = productService.list();
            ModelAndView mav = new ModelAndView();
            mav.addObject("lists", lists);
            mav.setViewName("listImages");
            System.out.println(lists);
            return mav;
        }
        /**
         * 保存图片
         * @param file
         * @param product
         * @param map
         * @return
         */
        @RequestMapping("/save")
        public String save(MultipartFile file, Product product, ModelMap map) {
            try {
                return productService.save(file, product, map);
            } catch (IOException e) {
                e.printStackTrace();
            }
            return null;
        }
    }

服务层中的服务层接口

@Service
public interface ProductService {
    /**
     * 查询所有的图片
     * @return
     */
    List<Product> list();
    /**
     * 上传一张图片
     * @param product
     * @return
     */
    String save(MultipartFile file, Product product, ModelMap map) throws IOException;
}

服务层的实现类

@Service
public class ProductServiceIml implements ProductService {
    @Autowired
    private ProductMapper productMapper;
    @Override
    public List<Product> list() {
        return productMapper.list();
    }
    @Override
    @Transactional
    public String save(MultipartFile file, Product product, ModelMap map) throws IOException {
        // 保存图片的路径,图片上传成功后,将路径保存到数据库
        String filePath = "D:\\upload";
        // 获取原始图片的扩展名
        String originalFilename = file.getOriginalFilename();
        // 生成文件新的名字
        String newFileName = UUID.randomUUID() + originalFilename;
        // 封装上传文件位置的全路径
        File targetFile = new File(filePath, newFileName);
        file.transferTo(targetFile);
        // 保存到数据库
        product.setPimage(newFileName);
        productMapper.save(product);
        return "redirect:listImages.do";
    }
}

dao层dao层接口


//存照片
public interface ProductMapper {
        /**
         * 查询所有的图片
         * @return
         */
        List<Product> list();
        /**
         * 上传一张图片
         * @param product
         * @return
         */
        Integer save(Product product);
    }

dao层实现SQl语句

DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="dao.ProductMapper">
    
    <select id="list" resultType="product">
        select pid, pimage
        from product
    select>
    
    <insert id="save" parameterType="product">
        insert into product(pimage)
        values (#{pimage})
    insert>
mapper>

欢迎提问!