10 2021 档案
摘要:
阅读全文
摘要:/* 分页查询 sql:select * from cst_customer limit 0,2 jpql: from Customer */ @Test public void testPaged(){ EntityManager entityManager = JpaUtils.getEntit
阅读全文
摘要:/* 使用jpql查询,统计客户的总数 sql:select count(cust_id) from cst_customer spql:select count(custId) from Customer */ @Test public void testCount(){ EntityManage
阅读全文
摘要:/* 排序查询:倒叙查询全部客户(根据id倒序) sql: select * from cst_customer order by cust_id desc jpql: from Customer order by custId desc */ @Test public void testOrder
阅读全文
摘要:*jpql查询不可以写select , 但是可以写select count等等 /* 查询全部 jqpl:from com.study.pojo.Customer sql: select * from cst_customer */ @Test public void testFindALL(){
阅读全文
摘要:/* 更新客户操作 merge(Object) */ @Test public void testUpdate(){ //1、通过工具类获取entityManager EntityManager entityManager = JpaUtils.getEntityManager(); //2、开启事
阅读全文
摘要:/* 删除客户案例 */ @Test public void testRemove(){ //1、通过工具类获取entityManager EntityManager entityManager = JpaUtils.getEntityManager(); //2、开启事务 EntityTransa
阅读全文
摘要:/* 根据id查询客户 getReference方法 1、获取的对象是一个动态代理对象 2、调用getReference方法不会立即发送sql语句查询数据库 当调用查询结果对象的时候,才会发送查询sql语句;什么时候用,什么时候发送sql语句查询数据库 getReference:延迟加载(懒加载)
阅读全文
摘要:@Test public void testFind(){ //1、通过工具类获取entityManager EntityManager entityManager = JpaUtils.getEntityManager(); //2、开启事务 EntityTransaction tx = enti
阅读全文
摘要:package com.study.utils; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence;
阅读全文
摘要:jpa操作的操作步骤: 1、加载配置文件创建实体管理器工厂 Persisitence:静态方法(根据持久化单元名称创建实体管理器工厂) createEntityMnagerFactory(持久化单元名称) 作用:创建实体管理器工厂 2、根据实体管理器工厂,创建实体管理器 EntityManagerF
阅读全文
摘要:1、GenerationType.TABLE 创建了两张表 (1)查看我们的客户表,主键不自增 (2)查看jpa帮我们生成的表,存储了下一条数据的主键值 2、GenerationType.AUTO 帮助我们选择的策略就是TABLE
阅读全文
摘要:如果数据库支持自增,我们使用第一个就好 如果数据库支持序列,我们使用第二个就好
阅读全文
摘要:1、创建数据库表 /*创建客户表*/ CREATE TABLE cst_customer ( cust_id bigint(32) NOT NULL AUTO_INCREMENT COMMENT '客户编号(主键)', cust_name varchar(32) NOT NULL COMMENT '
阅读全文
摘要:在我们网页的js文件中的onload()方法中进行处理 /* 0、web中的本地存储和小程序中的本地存储的区别 (1)写代码的方式不一样了 web: 【存值】:localStorage.setItem("key", "value") 【取值】:localStorage.getItem("key")
阅读全文
摘要:在编写项目时,我们希望在用户注册时和用户登录时,为保证安全,我们希望添加验证码来实现我们的功能。 (1)编写验证码工具类 package com.study.utils; import javax.imageio.ImageIO; import java.awt.*; import java.awt
阅读全文
摘要:一、元素定义类型的区别: 1、 定义为一个可点击的按钮。 2、 定义为一个提交按钮。提交按钮会把表单数据发送到服务器。 二、点击触发动作的区别: 1、 如果没有添加onclick事件的监听,点击时没有任何反应。 2、 默认情况下,点击后会执行提交form表单的动作。 我们的前端页面使用axios传递
阅读全文
摘要:如果两个滚动条会同时的滚动。找了一下原因才知道是要给scrool-view所在的容器中添加高度,否则两个会一起滚动。计算高度的时候,用到了calc,进行动态的计算,在less中使用calc的时候需要用~‘calc( 100vh - 90rpx )’的格式,否则会不成功。 (1)wxml (2)lex
阅读全文
摘要:在网上看到一篇博客,所以将里面的内容用自己的方式写下来 1、Web程序中第一次登录后,再次访问同一个Web程序时就无需再次登录,而是直接进入程序的主界面(仅限于本机)。实现这个功能关键就是服务端要识别客户的身份。而用Cookie是最简单的身从验证。 如果用户第一次登录,可以将用户名作为Cookie写
阅读全文
摘要:https://segmentfault.com/a/1190000018527530
阅读全文
摘要:我们原先的异步请求的方式,容易陷入回调地狱的情形。如下所示: 每次请求成功都进行请求调用,如果还加判断的话更加麻烦。 优化手段可以通过es6的promise来解决这个问题。 1、在专门写请求的request文件夹下新建要给index.js文件,并进行代码编辑 2、在我们页面的js文件中引入我们的in
阅读全文
摘要:1、定义轮播图数组 2、页面开始加载时,发送异步请求获取轮播图数据 3、这样我们的data中的swiperList就被赋值了 4、对轮播图进行动态渲染 但是显示的效果不好 5、我们进行如下处理 这样显示效果就好了,并且因为我们把swiper的高度设置成和image的高度一样,即使机型大小发生改变,图
阅读全文
摘要:其实这个搜索框要写成自定义组件,因为我们在好多页面都可以用的到 点击搜索框后,还会跳转到另一个搜索样式的页面 所以本质是一个导航标签/超链接 **1、**在微信开发者工具中,在conponents中新建SearchInput文件夹,然后新建component,输入SearchInput就会帮助我们建
阅读全文
摘要:即下面这一部分 1、找到我们的app.json文件,然后修改windows即可
阅读全文
摘要:1、在我们的全局样式文件app.wxss文件中,定义变量 之所以使用page,是因为page标签是我们的最外层的标签。 2、然后在我们的页面wxss文件中,使用我们定义的主题变量即可。 3、效果如下
阅读全文
摘要:1. 打开阿⾥巴巴字体图标 ⽹站 2. 选择的图标 选择自己需要的图标,然后添加购物车 3、然后点击页面右上角的购物车,创建项目,然后把图标放到项目里面。 4、如下 先点击font class,然后查看链接,点击链接,把链接中的代码复制到我们项目存放样式的文件夹styles下。 5、然后在我们的全局
阅读全文
摘要:// pages/demo17/demo17.js Page({ /** * 页面的初始数据 */ data: { }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { //在onload中发送异步请求来初始化页面数据 console.log
阅读全文
摘要:这个应用,指的是我们小程序的入口文件,app.js文件 // app.js App({ // onLaunch() { // // 展示本地存储能力 // const logs = wx.getStorageSync('logs') || [] // logs.unshift(Date.now())
阅读全文
摘要:
阅读全文
摘要:当我们点击不同导航时,都是显示内容这一个页面。通过如下进行改变 步骤: 1、在子组件中添加插槽slot 2、父组件向子组件传递标签
阅读全文
摘要:我们原先写的父组件向子组件传递数据。我们查看子组件中的js代码: 我们的子组件的data中没有数据,但是我们通过this.data却获取了里面的数据,为什么? 因为这样我们获取的其实是properties中从父组件接收过来的数据 然后循环完毕后,我们又把tabs设置回了data中。就相当于 data
阅读全文
摘要:我们需要把自定义组件中内部的数据抽离出来,变成由父组件传递过来的数据。 因为如果不这样的话,万一有不同的页面来使用这个组件,那么这个组件就无法改变来实现动态化了。 一、使用步骤: 1、父组件wxml 2、子组件js文件 3、子组件中使用父组件传递的数据 二、实现我们项目的抽离的步骤: 1、将原本存在
阅读全文
摘要:1、wxml文件 2、wxss文件 3、js文件
阅读全文
摘要:1、编写Tabs.wxml 2、编写Tabs.js 3、编写Tabs.wxss
阅读全文
摘要:小程序允许我们使用自定义组件的方式来构建页面。 自定义组件类似于页面,一个自定义组件由json、wxml、wxss、js四个文件组成。 步骤: 1、在微信开发者工具中快速创建组件的文件结构 2、在components中新建文件夹Tabs文件夹。 3、里面再创建Tabs组件,就会自己创建好Tabs.j
阅读全文
摘要:使用在类名上,作用相当于@ResponseBody + @Controller (2)用于返回JSON、XML等数据,但是不能返回HTML页面。 2、@Controller (1)使用在类名上,声明此类是一个SPringMVC Controller对象 (2
阅读全文
摘要:devtools工具包,操作简单,但是每次需要重新部署。 1、原理 深层原理是使用了两个ClassLoader,一个ClassLoader加载那些不会改变的类(第三方jar包),另一个ClassLoader加载那些会改变的类,成为restart ClassLoader,这样在有代码改变的时候,原来的
阅读全文
摘要:<!-- button开放能力 open-type: 1、contact 直接打开 客服对话功能 需要爱微信小程序的后台配置 2、share 转发当前的小程序 到微信朋友中 不能把小程序分享到朋友圈 3、getPhoneNumber 获取当前用户的手机号码信息 结合一个事件来使用 不是企业的小程序账
阅读全文
摘要:<!-- 小程序中的字体图标 (1)type 图标的类型 success|success_no_circle|info|warn|waiting|cancel|download|search|clear (2)size 大小 (3)color 图标的颜色 --> <icon type="cancel
阅读全文
摘要:没有必要记,我们可以通过样式来控制按钮的样式。 <!-- button标签 1、外观的属性 (1)size 控制按钮的大小 default 默认大小 mini 小尺寸 (2)type 用来控制按钮的颜色 default 灰色 primary 绿色 warn 红色 (3)plain 按钮是否镂空,背景
阅读全文
摘要:可以将字符串解析成对应标签,类似于vue中的v-html功能 js页面 // pages/demo10/demo10.js Page({ /** * 页面的初始数据 */ data: { //1、标签字符串 【最常用:更直观】 // html:'<div class="tbh-logo J_Modu
阅读全文
摘要:<!-- 导航栏组件 navigator 相当于html的a链接标签 0、块级元素 默认会换行 可以直接加宽度和高度 1、url 要跳转的页面路径 绝对路径/相对路径 2、target要跳转到当前的小程序 还是其他的小程序的页面 self 【默认值】 自己的小程序的页面 miniProgram 其他
阅读全文
摘要:微信内置轮播图组件 <!-- 1、轮播图外层容器swiper 2、每一个轮播项swiper-item 3、swiper标签:存在默认样式 (1)width:100% (2)height:150px image存在默认的宽度和高度:320px*240px (3)swiper高度无法由内容撑开,只能我们
阅读全文
摘要:小程序当中常用的布局组件: view、text、rich-text、button、image、navigator、swiper、radio、checkbox等 1、view标签 2、text标签 (1)文本标签 (2)只能嵌套text (3)长按文字可以复制 (4)可以对空格回车进行编码 3、ima
阅读全文
摘要:一、选择器:与css的选择器基本一样,但是不支持 * 通配符 二、小程序中使用less 原生小程序不支持less,其他基于小程序的框架大体都支持,如wepy、mpvue、taro等等,但是仅仅因为一个less功能去引入一个框架,是不可取的。 通过以下方法使用less 三、less代码编写 (1)页面
阅读全文
摘要:wxss中直接就支持样式导入功能。 也可以和less中的导入混用。 使用@import语句可以导入外联样式表,只支持相对路径 步骤: 1、创建commons.wxss文件 2、在页面的wxss文件中通过@import进行引入 3、编写wxml文件
阅读全文
摘要:1、与css相比,wxss扩展的特性有 响应式长度单位rpx 样式导入 2、rpx (1)我们下面这样写死的话,如果手机的大小发生变化,我们写的view不会等比例缩放 (2)下面这样写,可以支持等比例缩放 (3)扩展需求
阅读全文
摘要: 
阅读全文
摘要:我们这里写了block标签,查看页面源代码,找不到这个标签 如果想循环某些数据或渲染某些内容,如果不想加别的标签,就可以使用block来占位
阅读全文
摘要: 
阅读全文
摘要:
阅读全文
摘要:1、wxml的标签介绍 2、步骤: (1)页面的js文件中,page方法中的data属性中可以设置变量 (2)wxml文件中使用这些变量
阅读全文
摘要:小程序根目录下的sitemap.json文件用于配置小程序及其页面受否允许被微信索引
阅读全文
摘要:我们以前写的window字段,可以控制所有页面的字体啊,颜色啊,等等,我们可以通过设置页面配置文件来定义每一个页面的自己的字体和颜色等等。 我们pages里由index页面,demo页面,img页面等等,可以配置每个页面里面的json文件来设置 如上面这个,我们设置了首页的导航栏自己的名称
阅读全文
摘要:一、app.json 1、pages字段 【用于描述当前小程序所有页面路径,这是为了让微信客户端知道当前你的小程序页面定义在那个目录】 (1)添加字段保存后可以自动创建文件夹及文件 (2)哪一个字段放在最前面,主页就是哪一个。如果把 "pages/demo01/demo01"放在最前面,保存后主页就
阅读全文
摘要:实现步骤: 1、新建maven项目 2、加入gav依赖坐标 (1)springboot (2)spring-boot-security-starter (3)spring-boot-web-starter <!--security--> <dependency> <groupId>org.sprin
阅读全文
摘要:一、UserDetails:接口,表示用户信息的 六个方法: String getPassword(); 获取密码 String getUsername(); 获取用户名 boolean isAccountNonExpired(); 账号是否过期 boolean isAccountNonLocked
阅读全文
摘要:authentication:认证,认证访问者是谁。一个用户或者一个其他系统是不是当前要访问的系统中的有效用户。 authorization:授权。访问者能做什么。 RBAC是什么? RBAC是基于角色的访问控制。角色是权限的集合,在RBAC中,权限与角色相关联。用户通过成为适当角色的成员而得到这些
阅读全文
摘要:1、创建数据库和表 2、编写配置文件,连接数据库 spring: datasource: url: jdbc:mysql://localhost:3306/db3 username: root password: "2000820." driver-class-name: com.mysql.cj.
阅读全文
摘要:三种批量插入数据的方法: 1、循环单词插入 2、MP批量插入 3、原生批量插入 准备工作 -- -- 创建数据库 -- SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; DROP DATABASE IF EXISTS `testdb`; CREATE DA
阅读全文
摘要:使用场景 1、将用户信息导出为excel表格(导出数据) 2、将Excel表中的信息录入到网站的数据库(习题上传)大大减轻网站录入量!开发中经常涉及到excel表格的处理,如到处excel表格,导入excel表格到数据库 操作excel目前比较流行的是Apache POI(非常耗内存,一旦并发上来后
阅读全文
摘要:从mysql中读取用户信息。 1、在springsecurity框架对象用户信息的表示类是UserDetails。UserDetails是一个接口,高度抽象的用户信息类(相当于项目中的User类) User类:是UserDetails接口的实现类,构造方法有三个参数:username,passwor
阅读全文
摘要:基于角色Role的身份认证,同一个用户可以有不同的角色。同时可以开启对方法级别的认证。 1、添加@EnableGlobalMethodSecurity注解,表示可以启用方法级别的认证 2、给用户赋予角色:一个用户可以有多个角色 3、编写controller,并开启角色认证 不过,用户角色信息使用这种
阅读全文
摘要:因为我们不能在配置文件中配置多个用户名和密码,所以我们就基于内存进行管理多个用户名和密码。 使用:WebSecurityConfigurerAdapter控制安全管理的内容 需要做的是:继承WebSecurityConfigurerAdapter,重写方法,实现自定义的认证信息,重写下面的方法 pr
阅读全文
摘要:在springboot配置文件中设置登录的用户名和密码 然后正常启动应用即可
阅读全文
摘要:1、引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <dependency> <grou
阅读全文
摘要:一、简介 springsecurity是基于spring的安全框架。它提供全面的安全性解决方案,同时在web请求级和方法调用级处理身份确认和授权。在springFramework基础上,spring security充分利用了依赖注入DI和面向切面编程AOP功能,为应用系统提供声明式的安全访问控制功
阅读全文