天天吃货项目学习笔记
详细记录天天吃货项目学习过程,便于回顾和再次理解
learning coding
这个作者很懒,什么都没留下…
展开
-
tomcat8.5后 cookie解析出问题
Rfc6265CookieProcessor新版CookieProcessor处理器问题 需要指定旧版需要修改配置文件解决原创 2021-02-04 06:43:14 · 317 阅读 · 0 评论 -
springboot 打包war 上传 启动
1 api工程 pom文件中<packing>war</packing>2 war 是依赖于外部的tomcat 所以需要把内置的tomcat剔除 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> .原创 2021-02-04 06:39:50 · 143 阅读 · 0 评论 -
profile 提供多环境支持
profiles 多环境配置梳理:1. 数据源配置 1.1 url 根据自身情况去修改为 localhost 或者 内网IP(集群或者分布式系统,一定要使用内网IP) 1.2 密码 root 改为 你自己的密码2. mybatis 日志打印 dev 可以打印 test 可以打印 prod 无需打印3. 图片保存目录 和 图片服务请求路径配置/IdeaProjectsForCsdn/images/foodiedev/faceshttp:...原创 2021-02-03 19:44:36 · 171 阅读 · 0 评论 -
服务器CentOs7安装jdk 前端tomcat MariaDB
CentOS 安装jdkvim /etc/profile 后insert 开始编辑esc 切换:wq 保存退出export JAVA_HOME=/usr/java/jdk1.8.0_191export CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jarexport PATH=$PATH:$JAVA_HOME/bin前端tomcat后端tomcat解压tomcattar -z...原创 2021-02-03 19:10:09 · 91 阅读 · 0 评论 -
确认收货
确认收货,删除订单 都需要先判断该用户是否有订单原创 2021-01-31 14:39:20 · 160 阅读 · 0 评论 -
tk.mybatis中使用PageHelper分页,嵌套导致数据不对
tk.mybatis中使用PageHelper分页,嵌套导致数据不对,实际记录数已嵌套的子记录为准解决方法:在xml里面修改sql写法<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" ><mapper namespace="c原创 2021-01-07 15:17:47 · 485 阅读 · 0 评论 -
将静态资源发布到浏览器,可以使用浏览器查看图片
package com.imooc.config;import org.springframework.boot.web.client.RestTemplateBuilder;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.client.RestTemplate;.原创 2020-12-23 07:35:43 · 243 阅读 · 0 评论 -
使用hibernate校验字段
只需要引入start-web框架就可以使用hibernate校验字段,就无需在后台写代码校验public class CenterUserBo { @ApiModelProperty(value="用户名", name="username", example="json", required = false) private String username; @ApiModelProperty(value="密码", name="password", example="123原创 2020-12-11 06:06:32 · 402 阅读 · 0 评论 -
订单实现流程与订单状态s‘ni‘p
对接支付宝和微信,需要企业资质的,所以使用支付中心,封装的的接口原创 2020-09-24 08:15:04 · 316 阅读 · 0 评论 -
渲染刷新购物车
把数组中的数据全部添加到list中 String ids[]=specIds.split(","); List<String> specIdList=new ArrayList<String>(); //把数据中的数据全部添加到list中 Collections.addAll(specIdList,ids);通过mybaits拼接字符串 <select id="queryItemsBySpecId原创 2020-09-20 17:51:06 · 150 阅读 · 0 评论 -
未登录已登录加入购物车
未登录加入购物车:通过前端代码实现,将相关信息放入cookie登录加入购物车:通过后端代码实现,加入redis缓存,代码未完善原创 2020-09-20 16:29:33 · 754 阅读 · 0 评论 -
购物车存储形式
1 cookie无须登录,无须查询,保存在浏览器端优点:性能好,访问快,没有和数据库交互缺点:1 换电脑购物车数据会丢失2 电脑被其他人登录,隐私安全2 session用户登录后,购物车数据放入用户会话优点:初期性能较好,访问快缺点:1 session基于内存,用户量庞大影响服务型性能2 只能存在于当前会话,不适合集群与分布式系统(其他文章整理)3 数据库用户登录后,购物车数据存入数据库优点:数据持久化,可在任何地点任何时间访问缺点:频繁读写数据.原创 2020-09-20 14:43:46 · 348 阅读 · 0 评论 -
实现商品搜索功能
转化单引号:"原创 2020-09-20 13:48:21 · 757 阅读 · 0 评论 -
mybatis 使用插件实现分页
1.引入依赖 <!-- pagehelper --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.12</ver原创 2020-09-19 12:37:45 · 159 阅读 · 0 评论 -
分类实现-自连接查询子分类
不能使用通用mapper编写pojoCategoryVOpackage com.imooc.pojo.vo;import java.util.List;public class CategoryVO { private Integer id; private String name; private String type; private Integer fatherId; private List<SubCategoryVO>原创 2020-09-09 07:13:35 · 253 阅读 · 0 评论 -
实现电商首页轮播图功能
没有什么特别的功能添加枚举类package com.imooc.enums;/** 性别* */public enum YesOrNo { NO(0,"否"), YES(1,"是"); public final Integer type; public final String value; YesOrNo(Integer type, String value) { this.type = type; this.va原创 2020-09-06 15:59:24 · 481 阅读 · 0 评论 -
开启mybatis日志sql打印
############################################################## mybatis 配置#############################################################mybatis: type-aliases-package: com.imooc.pojo # 所有POJO类所在包路径 所有映射的实体类 mapper-locations: classpath:mappe.原创 2020-09-06 10:23:21 · 621 阅读 · 0 评论 -
用户退出登录,清空cookie
@ApiOperation(value = "用户退出登录",notes = "用户退出登录",httpMethod = "POST") @PostMapping("/logout") public IMOOCJSONResult logout(@RequestParam String userId, HttpServletRequest request, ...原创 2020-09-06 09:44:37 · 3330 阅读 · 2 评论 -
通过日志监控service执行时间
使用到切面,引入依赖 <!--引入aop依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency使用环绕通知,编写切面类packag原创 2020-09-06 09:32:42 · 215 阅读 · 0 评论 -
整合log4j日志
剔除自带的依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <exclusions> <!--排除这一块依赖,后续引入其他依赖-->原创 2020-09-06 08:43:24 · 194 阅读 · 0 评论 -
实现用户信息在页面显示
思路:注册登录之后,返回user对象,并存储在cookie,在reponse中添加cookie Users userResult = userService.createUser(userBo); //设置敏感信息为null,返回给前端显示 userResult = setNullProperty(userResult); //设置cookie CookieUtils.setCookie(request,response,"原创 2020-09-05 09:17:28 · 1897 阅读 · 0 评论 -
cookie和session
cookie:以键值对的形式存储在浏览器 cookie不能跨域,当前及其父级域名可以取值(比如mercury.jd.como可以取值到jd.com域名) cookie可以设置有效期 cookie可以设置path(www.jd.com/users 设置了此域名,其他该域名下的路径就不可以使用此cookie)session基于服务器内存的缓存(非持久化),可保存请求会话 每个session通过sessionid来区分不同请求 session可以设置过期时间 session也是以键值对形式存原创 2020-09-05 08:29:54 · 87 阅读 · 0 评论 -
No enum constant org.springframework.web.bind.annotation.RequestMethod.POST
启动项目报错:原因下面这句,多了个空格@ApiOperation(value = "用户注册",notes = "用户注册",httpMethod = "POST ")原创 2020-09-05 07:05:11 · 2281 阅读 · 0 评论 -
设置跨域信息实现前后端联调
package com.imooc.config;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.cors.CorsConfiguration;import org.springframework.web.cors.UrlBasedCorsConfiguratio.原创 2020-09-04 07:39:23 · 111 阅读 · 0 评论 -
整合,优化swagger2
引入相关依赖 <!--swagger2 配置 下面两个是官方的 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.4.0</version>原创 2020-09-03 07:33:05 · 351 阅读 · 0 评论 -
用户名注册登录流程
题外知识点:install时候,会自动运行test里面的代码,可能会报错,注释掉比较稳妥导入工具类依赖 <!--引入apache工具类--> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <ve原创 2020-08-30 19:23:23 · 1818 阅读 · 0 评论 -
spring boot项目为什么不需要@EnableTransactionManagement
在spring boot项目中,注解@SpringBootApplication在加载容器的时候,已经将开启事务管理的功能了,不需要额外添加注解原创 2020-08-30 16:24:11 · 1985 阅读 · 0 评论 -
详解事务传播特性
事务传播特性汇总:required:使用当前的事务,如果当前没有事务,则创建一个事务,子方法是必须运行在一个事务中的,如果当前存在事务,则加入这个事务,成为一个整体。supports:如果当前有事务,则使用事务,如果当前没有事务,则不使用事务mandatory:该传播属性强制必须存在一个事务,如果不存在,则抛出异常required_new:如果当前有事务,则挂起该事务,并且自己创建一个新的事务给自己使用;如果当前没有事务,则同required not_support:如果当前有事务,..原创 2020-08-30 16:19:19 · 3070 阅读 · 0 评论 -
编写Resful Web Service Api接口
使用代码生成工具,生成pojo类,映射文件以及对应的Java接口开始编写service接口类package com.imooc;import com.imooc.pojo.Stu;import org.springframework.stereotype.Service;public interface StuService { public Stu getStuById(int id); public void deleteStuById(int id); pu原创 2020-08-30 08:04:31 · 113 阅读 · 0 评论 -
MyBatis逆向生成工具
Mybatis-generator:知道如何使用即可打开项目,主要修改generatorConfig.xml文件<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybat原创 2020-08-29 08:18:44 · 299 阅读 · 1 评论 -
springboot整合hicaricp详解
往pom文件导入依赖 <!--整合hikaricp--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.41</version> </de原创 2020-08-28 08:22:16 · 686 阅读 · 0 评论 -
spring boot聚合工程启动项目
引入spring boot基础依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://mave原创 2020-08-27 07:59:22 · 831 阅读 · 0 评论 -
为什么不使用外键?
大型项目不建议使用外键1,性能影响对于数据的完整性会做检查操作,特别是在大并发的时候,会影响性能2,热更新(不停机维护)新更新的代码无法运行,需要重启服务3 降低耦合度物理外键不存在,逻辑外键还是存在的,比如说cghtb有htbh字段,htmxb也有htbh字段4 数据库分库发表有外键关系的两张表,难以做到分到两个不同的数据库...原创 2020-08-27 07:15:19 · 531 阅读 · 0 评论 -
1:使用idea工具构建聚合工程
foodie-dev首先构建顶级工程,也就是项目的最外层。项目名为:foodie-dev由于构建的是聚合工程,所以打包方式选择pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:sc原创 2020-08-15 07:45:08 · 232 阅读 · 0 评论