Java EE

Kotlin+Vue+Spring Data JPA+MySQL 增查改删

半腔热情 提交于 2020-08-08 00:52:49
概述: Kotlin为后端开发语言,持久层是Spring Data JPA 前后端分离,进行简单增查改删(CRUD) 前端使用VUE 数据库使用MySQL 往期内容 # 内容 01 React+Spring Boot JPA+MySQL 增查改删 02 Vue+Spring Boot JPA+MySQL 增查改删 增查改删 03 Vue+Spring Boot 文件操作,上传、预览和删除 04 Thymeleaf+Spring Boot 文件操作,上传、预览和删除 Vue前端代码,不再重复。以下是Kotlin后台代码 #EmployeeController.kt package com.example.kotlinjpacrud.controller import com.example.kotlinjpacrud.entity.Employee import com.example.kotlinjpacrud.repositories.EmployeeRepository import org.springframework. data .domain.Page import org.springframework. data .domain.Pageable import org.springframework. data .domain.Sort import org

微信小程序登录流程及解析用户openid session_key,获取用户信息

醉酒当歌 提交于 2020-08-07 19:34:38
为优化用户体验,使用 wx.getUserInfo 接口直接弹出授权框的开发方式将逐步不再支持。从2018年4月30日开始,小程序与小游戏的体验版、开发版调用 wx.getUserInfo 接口,将无法弹出授权询问框,默认调用失败。正式版暂不受影响。开发者可使用以下方式获取或展示用户信息: UnionID 机制说明 如果开发者拥有多个移动应用、网站应用、和公众帐号(包括小程序),可通过 UnionID 来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号(包括小程序),用户的 UnionID 是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,unionid是相同的。所以我们有时候需要获取这个UnionID 这个图简单的可以看做三部分 1.微信小程序客户端 2.微信官方服务器 3.第三方服务器(这个可以看做是自己的) 具体步骤如下; 1. 客户端获得code,并将code传给第三方服务端 微信小程序端调用wx.login,获取登录凭证(code),并调用接口,将code发送到第三方客户端 2. 第三方服务端用code换session_key和openid 小程序端将code传给第三方服务器端,第三方服务器端调用接口,用code换取session_key和openid 3. 第三方服务端生成新的session(3rd_session)

Springboot快速上手- 第二篇 helloWord走起

孤者浪人 提交于 2020-08-07 19:32:17
1 基础工程创建 1:创建一个maven工程 2:加入parent <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.6.RELEASE</version> </parent> 3:加入启动依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> 4:设置properties <properties> <java.version>1.8</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <start-class>com.cc.Application</start-class> </properties> 5:配置springboot 插件 <build> <finalName>springbootstudy</finalName> <plugins> <plugin> <groupId>org

【Spring】ThemeResolver主题解析器源码分析

﹥>﹥吖頭↗ 提交于 2020-08-07 19:29:27
ThemeResolver 主题解析器 作用:相同页面切换不同样式显示,类似换主页皮肤操作 工作原理:本质和LocaleResolver无区别,都是将数据保存在Session、Cookie等位置且与请求绑定,实现JSP页面数据动态化处理 1. jsp 案例代码 主题资源文件配置 /** * function: 主题配置 * author: zhiwei_yang * time: 2020/6/21-23:50 */ @Configuration public class ThemeConfig implements WebMvcConfigurer { /** * 配置主题资源文件: theme. 表示主题资源配置文件: classpath/theme 目录下 * * bean名称固定:themeSource * org.springframework.web.context.support.GenericWebApplicationContext#onRefresh() * org.springframework.ui.context.support.UiApplicationContextUtils#initThemeSource * * @return */ @Bean("themeSource") public ResourceBundleThemeSource

ehcache详细解读

℡╲_俬逩灬. 提交于 2020-08-07 18:05:31
我自己写了个demo java 在 eclipse中运行的,如果需要可以下载 demo ehcache是现在最流行的纯java开源框架,配置简单,结构清晰,功能强大,最初知道它,是从hibernate的缓存开始的。网上中文的ehcache材料以简单的介绍和配置方法居多,如果你有这方面的问题,请自行看官网api文档,但是很少见到特性说明和对实现原理的分析,因此在这这篇文章里面,我会详细介绍和分析ehcache的特性,加上一些自己的理解和思考,希望对缓存感兴趣的朋友有所收获。 1.快速轻量 过去几年,众多的测试表明ehcache是最快的java缓存之一 ehcache的线程机制是为大型高并发系统设计的 大量性能测试用例保证ehcache在不同版本间性能表现的一致性 很多用户都不知道他们正在用ehcache,因此不需要什么特别的配置 api易于使用,这就很容易部署上线和运行 2.伸缩性 缓存在内存和硬盘存储可以伸缩到数G,ehcache为大数据存储做过优化 大内存的情况下,所有进程可以支持数百G的吞吐 为高并发和大型多CPU服务器做优化 线程安全和性能总是一些矛盾,ehcache的线程机制设计采用了Doug lea的想法来获得较高的性能 单台虚拟机上支持多缓存管理器 通过Terracotta服务器矩阵,可以伸缩到数百个节点 3.灵活性 ehcache具备对象api接口和可序列化api接口

实体entity、JavaBean、Model、POJO、domain的区别

五迷三道 提交于 2020-08-07 16:29:21
实体entity、JavaBean、Model、POJO、domain的区别 Java Bean、POJO、 Entity、 VO , 其实都是java 对象,只不过用于不同场合罢了。 按照 Spring MVC 分层结构: JavaBean: 表示层 (Presentation Layer) Entity: 业务层 (Service layer) Dao: 数据访问层 (data access layer)。 Entity接近原始数据,Model接近业务对象~ Entity:是专用于EF的对数据库表的操作, Model:是为页面提供数据和数据校验的,所以两者可以并存 POJO:POJO是Plain OrdinaryJava Object的缩写不错,但是它通指没有使用Entity Beans的普通java对象,可以把POJO作为支持业务逻辑的协助类。 domain:domain这个包国外很多项目经常用到,字面意思是域的意思。 POJO实质上可以理解为简单的实体类,顾名思义POJO类的作用是方便 程序员使用数据库中的数据表,对于广大的程序员,可以很方便的将POJO类当做对象来进行使用,当然也是可以方便的调用其get,set方法。  - JavaBean: 先说JavaBean,JavaBean更多的是一种规范,也即包含一组set和get方法的Java对象。  - POJO:

【tomcat】04 Servlet规范

不羁岁月 提交于 2020-08-07 12:04:21
一、介绍 百度百科 二、Servlet 接口 1、Servlet规范的核心接口即是Servlet接口,它是所有Servlet类必须实现的接口。 2、Java Servelt API中已经提供了两个抽象类方便开发者实现Servlet类,分别是GenericServlet和HttpServlet。 GenericServlet定义了一个通用的、协议无关的Servlet HttpServlet则定义了HTTP的Servlet 两个抽象类可以使Servlet类复用很多共性功能 3、service方法:是处理客户端请求的方法,客户端发起的请求会被路由到对应的Servlet对象上。前面说到的 HttpServlet类的service方法把对HTTP协议的GET、POST、PUT、DELETE、HEAD、OPTIONS、TRACE等请求转发到各自的处理方法中,即doGet、doPost、doPut、doDelete、doHead、doOptions、doTrace等方法。HttpServlet提供了这些共性的处理逻辑,其他继承它的类就不用再各自实现,只需要在对应的方法中做具体的处理逻辑即可。 例如我们做Web开发时常常会自己定义一个Servlet,并在doGet和doPost方法中做业务逻辑处理。 4、在Servlet容器中,每个Servlet类只能对应一个Servlet对象

IDEA创建maven的web工程

自闭症网瘾萝莉.ら 提交于 2020-08-07 11:23:59
一、准备 下载安装 Apache-maven-3.5.2 下载地址:http://archive.apache.org/dist/maven/maven-3/ 在IDEA中配置maven环境 以上配置只对模块起作用,在新建项目后得重新配置,这是第一个坑,也是不好搞~~~ 二、创建maven的web项目 1.选中maven 2.填写项目坐标和名称 3.再次确认环境配置 4.完成创建 三、开始编写项目 在pom.xml 配置文件中导入jar包 < dependencies > < ! -- 放置Servlet -- > < ! -- maven没有自带Servlet项目 -- > < dependency > < groupId > jstl < / groupId > < artifactId > jstl < / artifactId > < version > 1.2 < / version > < / dependency > < dependency > < groupId > javax . servlet < / groupId > < artifactId > javax . servlet - api < / artifactId > < version > 3.0 .1 < / version > < scope > provided < / scope > < !

maven白小白(二)生命周期complie,package,install

被刻印的时光 ゝ 提交于 2020-08-07 09:57:55
Maven对项目进行构建的生命周期 (构建:生产一个可以运行项目的过程) clean清理:清理的是class字节码文件,为下一次编译做准备(清除target文件) compile编译:java----->class(idea中形成target文件) 测试 自动调用Junit程序 报告:测试的结果 package打包: war,jar包 imsall安装:maven中打包到的文件,复制到仓库中的指定位置 deploy部署: war jar包,放置到指定的servlet容器中的目录 idea开发工具中对maven的管理和使用已经很灵活 直接看图,看字太无聊 例子:这个是test7这个project中maven的管理目录: 点击对应的生命周期,执行后的结果,如图 可以看到 打包和部署 后的项目的目录结构的不同。 当然这些生命周期的命令执行是有顺序的,按照从上到下的顺序,下面的命令执行之前,一定是执行了上面的所有命令了, 可以参考maven命令执行的时候打印的日志记录查看。 对当前project进行安装 是为了,方便其他project可以直接引入这个项目的坐标就可以引用这里项目里的类和方法 它会根据pom文件中的groupId ,artifactID,在你的maven本地仓库中生成一个你当前项目的包, 包的类型版本由packagin和version来解决啦。 有啥写啥,莫嫌弃。 来源: