Java8 --- Gradle7.4整合IDEA

目录

一、Gradle整合IDEA

1.1、Groovy安装

1.1.1、配置环境变量

​编辑

1.2、创建项目 ​编辑

1.3、Groovy基本语法

1.3.1、基本语法

1.3.2、引号

1.3.3、语句结构

1.3.4、数据类型

1.3.5、集合操作

1.4、使用Gradle创建普通Java工程 

1.5、使用Gradle创建Java ssm工程  

1.6、对测试功能的支持

1.6.1、使用junit4测试

1.6.2、使用Junit5测试


一、Gradle整合IDEA

1.1、Groovy安装

官网地址:The Apache Groovy programming language - Documentation

下载安装包并解压:

1.1.1、配置环境变量

 

 指令:groovy -v 查看安装是否成功

1.2、创建项目 

1.3、Groovy基本语法

1.3.1、基本语法

class Hello {/*1、groovy中使用def定义属性、方法、def支持动态类型声明。2、单行注释//3、结尾分号可以省略。4、会自动给属性生成getter,setter方法。5、方法声明时,参数类型、返回值类型,return关键字可以省略,默认最后一行为返回值6、在变量引用时,不引起歧义可以省略{}7、对象属性赋值方式:①、对象.属性名= ②、对象["属性名"] ③、对象.属性setter方法 ④、具名构造器方式8、读取属性值方式:①、对象.属性名 ②、对象["属性名"] ③、对象.属性getter方法*/def id = 1def namedef save(num){//"num:${num}""num:$num"}
}

配置文件 

def hello = new Hello(name: "小亮")
//给属性赋值
hello.name = "小明"
hello["name"] = "小王"
hello.setName("小美")
//读取属性值
println(hello.getId());
println(hello.name)
println(hello["name"])
//调用方法
def save = hello.save(10)
print(save)

1.3.2、引号

//引号的使用
def age = 10def str1 = '单引号,不支持变量引用,不支持换行操作${age}'
def str2 = "双引号,支持变量引用,不支持换行操作${age}"
def str3 = '''模板字符串,不支持变量引用,支持换行操作${age}'''
println(str1)
println(str2)
println(str3)
//数据类型
println(str1.getClass().toString())
println(str2.getClass().toString())
println(str3.getClass().toString())

1.3.3、语句结构

官网地址:The Apache Groovy programming language - Semantics 

1.3.4、数据类型

 官网地址:The Apache Groovy programming language - Semantics 

1.3.5、集合操作

//--------list集合-----
def list = [1,2,3]
//断言
assert list instanceof java.util.List
list.add(4)
println(list.size())
//集合与集合相加
def list2 = [5,6]
//将list2集合添加在list后
println(list.plus(list2))
//根据下标删除集合中元素
list.remove(1);
println(list)
//删除指定的集合元素
list.removeElement(3)
println(list)
//从集合中移除另一个集合中元素
def list3 = [4]
list.removeAll(list3)
println(list)
//从集合中弹出一个元素
println list.pop()
println(list)
//根据下标替换元素值
list.putAt(0,12)
println(list)
//遍历集合
list2.each {it ->println("item: ${it}")}//---------map集合-----
def map = [tom:"tom",jack:"jack"]
//添加操作
map.put("java","java")
println(map)
//删除操作
//根据键做移除
map.remove("java")
//根据键值做移除
map.remove("tom","tom")
println(map)
//修改操作
map = map + ["yml":"yml"]
println(map)
map = map - ["jack":"jack"]
println(map)
//遍历map
map.each {key,value ->println("key:${key},value:${value}")
}
map.each {m ->println("key:${m.key},value:${m.value}")
}

其他参考官网: The Apache Groovy programming language - Semantics

1.4、使用Gradle创建普通Java工程 

修改配置:

1.5、使用Gradle创建Java ssm工程  

第一步创建一个普通的gradle的Java工程。

第二步修改bulid.gradle文件内容

plugins {id 'java'id 'war' //添加内容
}group 'com.cjc'
version '1.0-SNAPSHOT'repositories {mavenCentral()
}
//添加内容
dependencies {implementation 'org.springframework:spring-beans:4.1.7.RELEASE'implementation 'org.springframework:spring-web:4.1.7.RELEASE'implementation 'org.springframework:spring-webmvc:4.1.7.RELEASE'implementation 'org.springframework:spring-tx:4.1.7.RELEASE'implementation 'org.springframework:spring-test:4.0.5.RELEASE'implementation 'org.springframework:spring-jdbc:4.1.7.RELEASE'implementation 'org.mybatis:mybatis-spring:1.2.3'implementation 'org.mybatis:mybatis:3.3.0'implementation 'mysql:mysql-connector-java:5.1.36'implementation 'com.alibaba:druid:1.0.15'implementation "com.fasterxml.jackson.core:jackson-databind:2.2.3"implementation "com.fasterxml.jackson.core:jackson-annotations:2.2.3"implementation "com.fasterxml.jackson.core:jackson-core:2.2.3"implementation 'org.aspectj:aspectjweaver:1.8.6'implementation 'log4j:log4j:1.2.17'implementation 'org.slf4j:slf4j-api:1.7.25'implementation 'jstl:jstl:1.2'compileOnly 'javax.servlet:servlet-api:2.5'testImplementation group: 'junit' ,name: 'junit', version: '4.12'
}

创建配置文件:

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd"><!-- 0.配置扫描包 --><context:component-scan base-package="com.cjc"><context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/><context:exclude-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice"/></context:component-scan><!-- 1.加载properties文件 --><context:property-placeholder location="classpath:jdbc.properties"></context:property-placeholder><!-- 2.配置数据源 --><bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"><property name="username" value="${jdbc.userName}"></property><property name="password" value="${jdbc.password}"></property><property name="url" value="${jdbc.jdbcUrl}"></property><property name="driverClassName" value="${jdbc.driverClass}"></property></bean><!-- 4.配置数据源事务管理器 --><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource"></property></bean><tx:annotation-driven transaction-manager="transactionManager"></tx:annotation-driven><!-- 1.配置spring整合mybatis --><bean class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="dataSource"></property><property name="configLocation" value="classpath:mybatis-config.xml"></property></bean><!-- 2.配置扫描mapper接口的bean对象 --><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="basePackage" value="com.cjc.dao"/></bean></beans>

 数据库配置文件:

jdbc.jdbcUrl=jdbc:mysql://localhost:3306/test?rewriteBatchedStatements=true
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.userName=root
jdbc.password=123456

springMVC配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xmlns:mvc="http://www.springframework.org/schema/mvc"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd"><!-- 1.配置扫描包 --><context:component-scan base-package="com.cjc" use-default-filters="false"><context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/><context:include-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice"/></context:component-scan><!-- 2.配置内部资源视图解析器--><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/"/><property name="suffix" value=".jsp"/></bean><!--3.处理静态资源文件 --><mvc:default-servlet-handler/><mvc:annotation-driven/>
</beans>

 业务代码省略

在tomcat上部署项目并运行访问:

 

 测试访问:

1.6、对测试功能的支持

1.6.1、使用junit4测试

需要导入junit4的依赖

import org.junit.Test;public class AppTest {@Testpublic void test1(){System.out.println("hello");}
}

 

 

1.6.2、使用Junit5测试

导入依赖

testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
test {useJUnitPlatform()//支持junit5测试
}

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/32869.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用 axios 进行 HTTP 请求

使用 axios 进行 HTTP 请求 文章目录 使用 axios 进行 HTTP 请求1、介绍2、安装和引入3、axios 基本使用4、axios 发送 GET 请求5、axios 发送 POST 请求6、高级使用7、总结 1、介绍 什么是 axios axios 是一个基于 promise 的 HTTP 库&#xff0c;可以用于浏览器和 Node.js 中…

计算机组成入门知识

前言&#x1f440;~ 数据库的知识点先暂且分享到这&#xff0c;接下来开始接触计算机组成以及计算机网络相关的知识点&#xff0c;这一章先介绍一些基础的计算机组成知识 一台计算机如何组成的&#xff1f; 存储器 CPU cpu的工作流程 主频 如何衡量CPU好坏呢&#xff1f…

我的常见问题记录

1,maven在idea工具可以正常使用,在命令窗口执行出现问题 代码: E:\test-hello\simple-test>mvn clean compile [INFO] Scanning for projects... [WARNING] [WARNING] Some problems were encountered while building the effective model for org.consola:simple-test:jar…

【从0实现React18】 (三) 初探reconciler 带你初步探寻React的核心逻辑

Reconciler 使React核心逻辑所在的模块&#xff0c;中文名叫协调器&#xff0c;协调(reconciler)就是diff算法的意思 reconciler有什么用&#xff1f; 在前端框架出现之前&#xff0c;通常会使用 jQuery 这样的库来开发页面。jQuery 是一个过程驱动的库&#xff0c;开发者需要…

【windows解压】解压文件名乱码

windows解压&#xff0c;文件名乱码但内容正常。 我也不知道什么时候设置出的问题。。。换了解压工具也没用&#xff0c;后来是这样解决的。 目录 1.环境和工具 2.打开【控制面板】 3.点击【时钟和区域】 4.选择【区域】 5.【管理】中【更改系统区域设置】 6.选择并确定…

算是一些Transformer学习当中的重点内容

一、基础概念 Transformer是一种神经网络结构&#xff0c;由Vaswani等人在2017年的论文Attentions All YouNeed”中提出&#xff0c;用于处理机器翻译、语言建模和文本生成等自然语言处理任务。Transformer同样是encoder-decoder的结构&#xff0c;只不过这里的“encoder”和“…

完美解决找不到steam_api64.dll无法执行代码问题

游戏缺失steam_api64.dll通常意味着该游戏依赖于Steam平台的一些功能或服务&#xff0c;而这个DLL文件是Steam客户端的一部分&#xff0c;用于游戏与Steam平台之间的交互。如果游戏中缺失这个文件&#xff0c;可能会出现无法启动、崩溃或其他问题。 一&#xff0c;详细了解stea…

第13关:存储过程1、第14关:存储过程2。(2021数据库期末一)

目录 首先需要学习和了解的知识 第13关&#xff1a;存储过程1 任务描述 答案 第14关&#xff1a;存储过程2 任务描述 答案 本篇博客的答案博主是学习别人得来的&#xff0c;敢于借鉴和学习哈哈&#xff01;&#xff01; 首先需要学习和了解的知识 了解什么是存储过程以及…

音频——性能测试中的基本概念

文章目录 频率响应平均电平增益ADC 路径增益DAC 路径增益底噪信噪比总谐波失真+噪声(THD+N)延迟频率响应 对于音频设备,频率响应可以理解为音频设备对不同频率信号的处理或重现。对于音频信号频率,一般关注20Hz~20kHz范围。理想情况下,输入幅度相同的不同频率信号,过音频…

吴恩达机器学习 第二课 week4 决策树

目录 01 学习目标 02 实现工具 03 问题描述 04 构建决策树 05 总结 01 学习目标 &#xff08;1&#xff09;理解“熵”、“交叉熵&#xff08;信息增益&#xff09;”的概念 &#xff08;2&#xff09;掌握决策树的构建步骤与要点 02 实现工具 &#xff08;1&#xff09;…

常见的七大排序

目录 前言 冒泡排序 选择排序 插入排序 堆排序 希尔排序 快排 归并排序 前言 本文介绍七种常见的排序方式&#xff1a;冒泡排序&#xff0c;选择排序&#xff0c;插入排序&#xff0c;堆排序&#xff0c;希尔排序&#xff0c;快排&#xff0c;归并排序 冒泡排序 将每2…

Linux使用——查看发行版本、内核、shell类型等基本命令

先做快照 虚拟机中编辑网络 关机 普通账户和管理员账户 互相对照 localhost相当于IP 参数: 短格式:以减号(-)开头&#xff0c;参数字母 长格式:以2个减号(--)后跟上完整的参数单词 当前发行版本 [rootserver ~]# cat /etc/redhat-release Red Hat Enterprise Linux release 9.…

C++设计模式——Flyweight享元模式

一&#xff0c;享元模式简介 享元模式是一种结构型设计模式&#xff0c;它将每个对象中各自保存一份数据的方式改为多个对象共享同一份数据&#xff0c;该模式可以有效减少应用程序的内存占用。 享元模式的核心思想是共享和复用&#xff0c;通过设置共享资源来避免创建过多的实…

MSPM0G3507——定时器例程1——TIMA_periodic_repeat_count

以下示例以周期模式配置TimerA0&#xff0c;并使用重复计数功能每隔2秒切换一次GPIO。注意&#xff1a;重复计数功能特定于TimerA0实例&#xff0c;而不是其他TimerA实例。这里是一次500毫秒&#xff0c;重复了四次 主函数&#xff1a; #include "ti_msp_dl_config.h&quo…

20240621日志:大模型压缩-从闭源大模型蒸馏

目录 1. 核心内容2. 方法2.1 先验估计2.2 后验估计2.3 目标函数 3. 交叉熵损失函数与Kullback-Leibler&#xff08;KL&#xff09;损失函数 location&#xff1a;beijing 涉及知识&#xff1a;大模型压缩、知识蒸馏 Fig. 1 大模型压缩-知识蒸馏 1. 核心内容 本文提出在一个贝…

Program-of-Thoughts(PoT):结合Python工具和CoT提升大语言模型数学推理能力

Program of Thoughts Prompting:Disentangling Computation from Reasoning for Numerical Reasoning Tasks github&#xff1a;https://github.com/wenhuchen/Program-of-Thoughts 一、动机 数学运算和金融方面都涉及算术推理。先前方法采用监督训练的形式&#xff0c;但这…

发表在SIGMOD 2024上的高维向量检索/向量数据库/ANNS相关论文

前言 SIGMOD 2024会议最近刚在智利圣地亚哥结束&#xff0c;有关高维向量检索/向量数据库/ANNS的论文主要有5篇&#xff0c;涉及混合查询&#xff08;带属性或范围过滤的向量检索&#xff09;优化、severless向量数据库优化、量化编码优化、磁盘图索引优化。此外&#xff0c;也…

微信小程序入门2

微信开发者工具的安装方法 1.打开微信开发者工具下载页面 在微信小程序管理后台的左侧边栏中选择“开发工具”&#xff0c;然后选择“开发者工具”&#xff0c;即可找到微信开发者工具的下载页面。 2.打开微信开发者工具的下载链接页面 单击“下载” 按钮下载&#xff0c;即…

越复杂的CoT越有效吗?Complexity-Based Prompting for Multi-step Reasoning

Complexity-Based Prompting for Multi-step Reasoning 论文&#xff1a;https://openreview.net/pdf?idyf1icZHC-l9 Github&#xff1a;https://github.com/FranxYao/chain-of-thought-hub 发表位置&#xff1a;ICLR 2023 Complexity-Based Prompting for Multi-step Reason…