- SpringBoot集成Swagger3.0
邪神大叔
JavaMacSpringBootswagger3.0javaspringboot
pom.xmlio.springfoxspringfox-boot-starter3.0.0SwaggerConfig/***@author:zek*@desc:swagger*/@EnableOpenApi@ConfigurationpublicclassSwaggerConfigimplementsWebMvcConfigurer{@BeanpublicDocketcreateRestApi(
- Zset应用之滑动窗口限流
八股文领域大手子
java数据库服务器算法开发语言
滑动窗口限流的实现原理滑动窗口限流的核心是:统计某个时间窗口内的请求数,若超过阈值则拒绝新请求。用RedisZSet实现的关键步骤:1.数据结构设计ZSetKey:rate_limit:api1(示例)member:请求唯一标识(如UUID或IP+时间戳)score:请求的时间戳(单位需一致,如秒或毫秒)2.限流逻辑(分步骤)假设限制60秒内最多100次请求:步骤1:删除时间窗口外的旧请求#删除6
- Vue3连接SSE,并且返回结果用打字机效果呈现
陈琦鹏
前端javascript前端vue.js
话不多说直接上代码连接SSEimport{ref,onMounted,onUnmounted}from'vue';constsse=ref()constreconnectAttempts=ref(0)consttimer=ref()onMounted(()=>{initSSE();})onUnmounted(()=>{if(sse.value){sse.value.close();}//清除定时器
- HTML中的零宽字符
Jinuss
前端html前端
概述零宽字符是一组在文本中没有可见宽度的字符,它们通常用于处理文本的布局、分隔和合成。下面是一些常见的零宽字符及其详细介绍:详细介绍零宽空格(ZeroWidthSpace,ZWSP)Unicode码位:U+200BHTML实体:或用途:用于防止文字自动换行。用于在文本中插入不可见的间隔,以控制排版或进行文本分析。零宽非连字符(ZeroWidthNon-Joiner,ZWNJ)Unicode码位:U
- docker compose部署dragonfly
java初学者分享
docker容器运维
整个工具的代码都在Gitee或者Github地址内gitee:solomon-parent:这个项目主要是总结了工作上遇到的问题以及学习一些框架用于整合例如:rabbitMq、reids、Mqtt、S3协议的文件服务器、mongodbgithub:GitHub-ZeroNing/solomon-parent:这个项目主要是总结了工作上遇到的问题以及学习一些框架用于整合例如:rabbitMq、rei
- Spring boot快速接入Swagger
lucky_iboy
后端javaswagger2springboot后端gson
swagger可以帮助我们快速生成api文档。1.引入swagger依赖 io.springfox springfox-swagger2 2.6.0 io.springfox springfox-swagger-ui 2.6.02.配置项目2.1增加@EnableSwagger2到启动类2.2配置swaggerdocket@Configurationpublic class Swagg
- 【赵渝强老师】达梦数据库MPP集群的架构
数据库信创
为了支持海量数据存储和处理等方面的需求,为高端数据仓库提供解决方案,达梦数据库提供了大规模并行处理MPP架构,以极低的成本代价,提供高性能的并行计算。通过使用MPP可以解决以下问题:需要较高的系统性能支持以支持大量的复杂查询操作硬件束缚对数据库响应能力的影响降低数据库成本视频讲解如下:https://www.bilibili.com/video/BV1dBftYoEkk/?aid=11386961
- 用Babel操作AST实现JavaScript代码的自动化生成与转换
目录目录环境搭建代码:修改AST的逻辑重命名函数名重命名变量并修改变量值函数调用替换控制流扁平化还原删除未使用的变量对象属性简化条件表达式优化表达式还原环境搭建安装环境npminstall@babel/parser@babel/traverse@babel/generator@babel/typesast转换的代码框架constfs=require('fs');constvm=require('n
- Umi-OCR:解锁高效文字识别的新时代
水熠芝Dark-Haired
Umi-OCR:解锁高效文字识别的新时代Umi-OCR一款强大而高效的文字识别工具项目地址:https://gitcode.com/Resource-Bundle-Collection/6adda项目介绍在数字化浪潮席卷全球的今天,文字识别技术已成为提升工作效率和生活质量的关键工具。Umi-OCR,作为一款基于深度学习技术的开源文字识别工具,凭借其强大的功能和高效的性能,迅速成为众多用户的首选。无
- Umi-OCR:一款强大而高效的文字识别工具
裘心国Trent
Umi-OCR:一款强大而高效的文字识别工具Umi-OCR一款强大而高效的文字识别工具项目地址:https://gitcode.com/Resource-Bundle-Collection/6adda介绍Umi-OCR是一款基于深度学习技术的开源文字识别工具,特别适合日常办公、学术研究及数据分析等场景。它能有效解决将图像中的文字快速转化为可编辑文本的需求,极大提升工作效率。此工具依托于先进的计算机
- 自动语音识别(ASR):技术、应用与未来
ajie1117
语音识别人工智能
自动语音识别(ASR):技术、应用与未来1.ASR简介自动语音识别(ASR,AutomaticSpeechRecognition)是一种将语音转换为文本的技术。它利用人工智能(AI)、深度学习和自然语言处理(NLP)技术来识别和理解人类的语言,使计算机能够与人类进行更自然的交互。2.ASR的工作原理ASR的核心流程通常包括以下几个步骤:语音信号采集:通过麦克风或其他设备获取音频数据。预处理:去除噪
- 2025年水利工程与水动力学国际会议(ICWCEH 2025)
国际学术会议-杨老师
EI会议水利工程水动力学国际会议
2025年水利工程与水动力学国际会议2025InternationalConferenceonWaterConservancyEngineeringandHydrodynamics一、大会信息会议名称:2025年水利工程与水动力学国际会议会议简称:ICWCEH2025收录检索:提交EiCompendex,CPCI,CNKI,GoogleScholar等大会地点:中国·大理审稿通知:投稿后2-3日内
- docker-compose笔记
Re_Virtual
dockerdocker笔记容器
docker目前docker官网已经无法登录,但是还可以从清华镜像站(https://mirrors.tuna.tsinghua.edu.cn/docker-ce/)下载。使用方法可以参考早期文章《docker笔记》docker-compose可以从Github下载不同版本的二进制文件,例如docker-compose-linux-x86_64。下载完成后,将二进制文件复制入路径,例如/usr/l
- ucOS的互斥所mutex和信号量semaphore的区别
louis.johnson
ucOS信号量互斥锁mutex
mutex和semaphore都是计数器,计数器被拿完了,其他任务再想拿(pend函数),就要等有人归还(post函数),mutex可以理解为最大计数值为1的semaphore,只有1个人可以拿到这个球,其他人要玩,只能等这个人归还。
- 2. 猜数字游戏
老实人y
Rust小白初学rust开发语言后端
目录创建一个新项目处理一次猜测生成一个秘密数字使用crate来增加更多功能Cargo.lock文件确保构建是可重现的更新crate到一个新版本生成一个随机数比较猜测的数字和神秘数字使用循环来允许多次猜测猜测正确后退出处理无效输入最终代码程序会随机生成一个1到100之间的整数。接着它会提示玩家猜一个数并输入,然后指出猜测是大了还是小了。如果猜对了,它会打印祝贺信息并退出。创建一个新项目project
- 为下面的程序添加数据保存功能,以便下次打开时,显示原有数据
2301_79698214
前端javascripthtml
为下面的程序添加数据保存功能,以便下次打开时,显示原有数据。tr{height:60px;}td,th{width:150px;text-align:center;border:1pxsolidred;}functionaddNode(){vartab=document.getElementById("tab");vartr=document.createElement("tr");vartd=d
- Linux vim mode | raw / cooked
斐夷所非
Linuxvimmode
注:机翻,未校。vimterminal“raw”modeVim终端“raw”模式1.原始模式与已处理模式的区别Weknowvimputstheterminalin“raw”modewhereitreceiveskeystrokesastheyaretyped,opposedto“cooked”modewherethecommandisnotprocessedfullyunlesstheend-us
- Redis命令详解--集合
八股文领域大手子
redis数据库缓存javaspring后端服务器
Redisset是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据,常用命令:SADDkeymember1[member2...]向集合添加一个或多个成员SREMkeymember1[member2...]移除集合中一个或多个成员SMEMBERSkey获取集合中所有成员性能提示:SMEMBERS慎用于大集合(可用SSCAN分页遍历)SCARDkey获取集合成员数量S
- 怎样修改下面HTML中存在的错误?
2301_79698214
htmljavascript前端
functiongetTime(){vardate=newDate();vartime=date.toLocaleDateString();vartime1=date.toLocaleTimeString();vartime2=time+''+time1span.innerHTML=time2;}window.setInterval("getTime()",1000)window.alert("这
- 机器学习是怎么一步一步由神经网络发展到今天的Transformer架构的?
yuanpan
机器学习神经网络transformer
机器学习和神经网络的发展经历了一系列重要的架构和技术阶段。以下是更全面的总结,涵盖了从早期神经网络到卷积神经网络之前的架构演变:1.早期神经网络:感知机(Perceptron)时间:1950年代末至1960年代。背景:感知机由FrankRosenblatt提出,是第一个具有学习能力的神经网络模型。它由单层神经元组成,可以用于简单的二分类任务。特点:输入层和输出层之间直接连接,没有隐藏层。使用简单的
- lua 面向对象(继承、封装、多态)
yxlalm
lualua面向对象继承封装多态
封装Object={}Object.id=1functionObject:new()localobj={}self.__index=selfsetmetatable(obj,self)returnobjendlocalmyObj=Object:new()myObj.id=3print(myObj)print(Object)print(myObj.id)继承obj.base=self保存基类方法fu
- python 函数—文档、类型注释和内省
想知道哇
pythonpython开发语言
Python文档、类型注释和内省目录引言函数文档docstring的使用help()函数类型注释基本类型注释复杂类型注释内省技术基本内省方法inspect模块的高级内省综合示例建议引言Python提供了丰富的文档和内省机制,使开发者能够编写自解释的代码并在运行时检查对象属性。本教程详细介绍了函数文档、类型注释和内省技术。函数文档docstring的使用Python使用三引号字符串('''或""")
- 基于AOP注解+Redisson实现Cache-Aside缓存模式实战
@淡 定
缓存
(2)缓存更新注解一、场景需求在高并发系统中,缓存是提升性能的关键组件。而Cache-Aside模式作为最常用的缓存策略之一,要求开发者手动管理缓存与数据库的交互。本文将结合自定义注解与Redisson客户端,实现声明式的缓存管理方案。二、方案亮点零侵入性:通过注解实现缓存逻辑完整防护:解决缓存穿透/击穿/雪崩问题⚡双删策略:保障数据库与缓存一致性️逻辑删除:支持数据恢复与审计需求三、核心实现1.
- ios接入微信登录
weixin_43408306
ios
1、QueriedURLSchemes添加weixin2、info下URLTypes添加weixin、URLSchemes
- k8s往secret里导入证书_Kubernetes K8S之存储Secret详解
weixin_39604598
k8s往secret里导入证书
K8S之存储Secret概述与类型说明,并详解经常使用Secret示例html主机配置规划服务器名称(hostname)系统版本配置内网IP外网IP(模拟)k8s-masterCentOS7.72C/4G/20G172.16.1.11010.0.0.110k8s-node01CentOS7.72C/4G/20G172.16.1.11110.0.0.111k8s-node02CentOS7.72C/
- java tcp pdf_Java网络编程(TCP、Socket).pdf
华西怀
javatcppdf
Java网络编程(TCP、Socket)Java网络编程—TCP/Socket前言网络编程可分为基于TCP的网络程序设计和基于UDP的网络程序设计。TCP是基于字节流的面向连接的,常用于可靠的网络传输,而UDP是基于数据报的无连接的网络传输,常用语即时通信。1.0基于Socket的Java网络编程网络上的两个程序通过一个双向的通信连接实现数据的交换,这个双向链路的一端称为一个Socket。Soc
- EN 71-3测试
南京速跃检测技术服务有限公司
学习方法创业创新
以下是关于EN71-3测试的深度解读,结合法规背景、测试方法及实际应用进行结构化分析:一、EN71-3测试的核心目的EN71-3是欧盟《玩具安全指令》的第三部分,专门针对玩具材料中可迁移有害元素的限量要求,旨在模拟儿童误吞玩具材料后,重金属在胃液环境中的溶出风险,确保玩具化学安全性。二、测试方法与流程1.模拟消化环境-将玩具材料样品浸入模拟胃液的盐酸溶液(0.07mol/LHCl),在37℃下持续
- 【lua】面向对象
岚花落_
lua
建议提前学习https://www.runoob.com/lua/lua-metatables.html面向对象特征1)封装:指能够把一个实体的信息、功能、响应都装入一个单独的对象中的特性。2)继承:继承的方法允许在不改动原程序的基础上对其进行扩充,这样使得原功能得以保存,而新功能也得以扩展。这有利于减少重复编码,提高软件的开发效率。3)多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的
- 关于误差平面小记
文弱_书生
乱七八糟平面算法神经网络机器学习
四维曲面的二维切片:误差平面详解在深度学习优化过程中,我们通常研究损失函数(LossFunction)的变化,试图找到权重的最优配置。由于神经网络的参数空间通常是高维的,我们需要使用低维可视化的方法来理解优化过程和误差平面(ErrorSurface)。在这里,我们讨论一个四维曲面的二维切片,其中:三个维度是网络的权重(w1,w2,w3w_1,w_2,w_3w1,w2,w3)。第四个维度是误差(损失
- 关于神经网络中的激活函数
文弱_书生
乱七八糟神经网络人工智能深度学习
激活函数(ActivationFunction)详解理解首先煮波解释一下这四个字,“函数”相信大家都不陌生,能点进来看这篇文章说明你一定经历至少长达十年的数学的摧残,关于这个概念煮波就不巴巴了,煮波主要说一下“激活”,大家可能或多或少的看过类似于古装,玄幻,修仙等类型的小说或者电视剧。剧中的主角往往是天赋异禀或则什么神啊仙啊的转世,但是这一世他却被当成了普通人,指导某一时刻才会迸发出全部的能量(主
- html
周华华
html
js
1,数组的排列
var arr=[1,4,234,43,52,];
for(var x=0;x<arr.length;x++){
for(var y=x-1;y<arr.length;y++){
if(arr[x]<arr[y]){
&
- 【Struts2 四】Struts2拦截器
bit1129
struts2拦截器
Struts2框架是基于拦截器实现的,可以对某个Action进行拦截,然后某些逻辑处理,拦截器相当于AOP里面的环绕通知,即在Action方法的执行之前和之后根据需要添加相应的逻辑。事实上,即使struts.xml没有任何关于拦截器的配置,Struts2也会为我们添加一组默认的拦截器,最常见的是,请求参数自动绑定到Action对应的字段上。
Struts2中自定义拦截器的步骤是:
- make:cc 命令未找到解决方法
daizj
linux命令未知make cc
安装rz sz程序时,报下面错误:
[root@slave2 src]# make posix
cc -O -DPOSIX -DMD=2 rz.c -o rz
make: cc:命令未找到
make: *** [posix] 错误 127
系统:centos 6.6
环境:虚拟机
错误原因:系统未安装gcc,这个是由于在安
- Oracle之Job应用
周凡杨
oracle job
最近写服务,服务上线后,需要写一个定时执行的SQL脚本,清理并更新数据库表里的数据,应用到了Oracle 的 Job的相关知识。在此总结一下。
一:查看相关job信息
1、相关视图
dba_jobs
all_jobs
user_jobs
dba_jobs_running 包含正在运行
- 多线程机制
朱辉辉33
多线程
转至http://blog.csdn.net/lj70024/archive/2010/04/06/5455790.aspx
程序、进程和线程:
程序是一段静态的代码,它是应用程序执行的蓝本。进程是程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程,这个过程也是进程本身从产生、发展至消亡的过程。线程是比进程更小的单位,一个进程执行过程中可以产生多个线程,每个线程有自身的
- web报表工具FineReport使用中遇到的常见报错及解决办法(一)
老A不折腾
web报表finereportjava报表报表工具
FineReport使用中遇到的常见报错及解决办法(一)
这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己。
出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有。有报错要看日志。下面简单罗列下常见的问题,大多文档上都有提到的。
1、address pool is full:
含义:地址池满,连接数超过并发数上
- mysql rpm安装后没有my.cnf
林鹤霄
没有my.cnf
Linux下用rpm包安装的MySQL是不会安装/etc/my.cnf文件的,
至于为什么没有这个文件而MySQL却也能正常启动和作用,在这儿有两个说法,
第一种说法,my.cnf只是MySQL启动时的一个参数文件,可以没有它,这时MySQL会用内置的默认参数启动,
第二种说法,MySQL在启动时自动使用/usr/share/mysql目录下的my-medium.cnf文件,这种说法仅限于r
- Kindle Fire HDX root并安装谷歌服务框架之后仍无法登陆谷歌账号的问题
aigo
root
原文:http://kindlefireforkid.com/how-to-setup-a-google-account-on-amazon-fire-tablet/
Step 4: Run ADB command from your PC
On the PC, you need install Amazon Fire ADB driver and instal
- javascript 中var提升的典型实例
alxw4616
JavaScript
// 刚刚在书上看到的一个小问题,很有意思.大家一起思考下吧
myname = 'global';
var fn = function () {
console.log(myname); // undefined
var myname = 'local';
console.log(myname); // local
};
fn()
// 上述代码实际上等同于以下代码
m
- 定时器和获取时间的使用
百合不是茶
时间的转换定时器
定时器:定时创建任务在游戏设计的时候用的比较多
Timer();定时器
TImerTask();Timer的子类 由 Timer 安排为一次执行或重复执行的任务。
定时器类Timer在java.util包中。使用时,先实例化,然后使用实例的schedule(TimerTask task, long delay)方法,设定
- JDK1.5 Queue
bijian1013
javathreadjava多线程Queue
JDK1.5 Queue
LinkedList:
LinkedList不是同步的。如果多个线程同时访问列表,而其中至少一个线程从结构上修改了该列表,则它必须 保持外部同步。(结构修改指添加或删除一个或多个元素的任何操作;仅设置元素的值不是结构修改。)这一般通过对自然封装该列表的对象进行同步操作来完成。如果不存在这样的对象,则应该使用 Collections.synchronizedList 方
- http认证原理和https
bijian1013
httphttps
一.基础介绍
在URL前加https://前缀表明是用SSL加密的。 你的电脑与服务器之间收发的信息传输将更加安全。
Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定。
http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后
- 【Java范型五】范型继承
bit1129
java
定义如下一个抽象的范型类,其中定义了两个范型参数,T1,T2
package com.tom.lang.generics;
public abstract class SuperGenerics<T1, T2> {
private T1 t1;
private T2 t2;
public abstract void doIt(T
- 【Nginx六】nginx.conf常用指令(Directive)
bit1129
Directive
1. worker_processes 8;
表示Nginx将启动8个工作者进程,通过ps -ef|grep nginx,会发现有8个Nginx Worker Process在运行
nobody 53879 118449 0 Apr22 ? 00:26:15 nginx: worker process
- lua 遍历Header头部
ronin47
lua header 遍历
local headers = ngx.req.get_headers()
ngx.say("headers begin", "<br/>")
ngx.say("Host : ", he
- java-32.通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小(两数组的差最小)。
bylijinnan
java
import java.util.Arrays;
public class MinSumASumB {
/**
* Q32.有两个序列a,b,大小都为n,序列元素的值任意整数,无序.
*
* 要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小。
* 例如:
* int[] a = {100,99,98,1,2,3
- redis
开窍的石头
redis
在redis的redis.conf配置文件中找到# requirepass foobared
把它替换成requirepass 12356789 后边的12356789就是你的密码
打开redis客户端输入config get requirepass
返回
redis 127.0.0.1:6379> config get requirepass
1) "require
- [JAVA图像与图形]现有的GPU架构支持JAVA语言吗?
comsci
java语言
无论是opengl还是cuda,都是建立在C语言体系架构基础上的,在未来,图像图形处理业务快速发展,相关领域市场不断扩大的情况下,我们JAVA语言系统怎么从这么庞大,且还在不断扩大的市场上分到一块蛋糕,是值得每个JAVAER认真思考和行动的事情
- 安装ubuntu14.04登录后花屏了怎么办
cuiyadll
ubuntu
这个情况,一般属于显卡驱动问题。
可以先尝试安装显卡的官方闭源驱动。
按键盘三个键:CTRL + ALT + F1
进入终端,输入用户名和密码登录终端:
安装amd的显卡驱动
sudo
apt-get
install
fglrx
安装nvidia显卡驱动
sudo
ap
- SSL 与 数字证书 的基本概念和工作原理
darrenzhu
加密ssl证书密钥签名
SSL 与 数字证书 的基本概念和工作原理
http://www.linuxde.net/2012/03/8301.html
SSL握手协议的目的是或最终结果是让客户端和服务器拥有一个共同的密钥,握手协议本身是基于非对称加密机制的,之后就使用共同的密钥基于对称加密机制进行信息交换。
http://www.ibm.com/developerworks/cn/webspher
- Ubuntu设置ip的步骤
dcj3sjt126com
ubuntu
在单位的一台机器完全装了Ubuntu Server,但回家只能在XP上VM一个,装的时候网卡是DHCP的,用ifconfig查了一下ip是192.168.92.128,可以ping通。
转载不是错:
Ubuntu命令行修改网络配置方法
/etc/network/interfaces打开后里面可设置DHCP或手动设置静态ip。前面auto eth0,让网卡开机自动挂载.
1. 以D
- php包管理工具推荐
dcj3sjt126com
PHPComposer
http://www.phpcomposer.com/
Composer是 PHP 用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。
中文文档
入门指南
下载
安装包列表
Composer 中国镜像
- Gson使用四(TypeAdapter)
eksliang
jsongsonGson自定义转换器gsonTypeAdapter
转载请出自出处:http://eksliang.iteye.com/blog/2175595 一.概述
Gson的TypeAapter可以理解成自定义序列化和返序列化 二、应用场景举例
例如我们通常去注册时(那些外国网站),会让我们输入firstName,lastName,但是转到我们都
- JQM控件之Navbar和Tabs
gundumw100
htmlxmlcss
在JQM中使用导航栏Navbar是简单的。
只需要将data-role="navbar"赋给div即可:
<div data-role="navbar">
<ul>
<li><a href="#" class="ui-btn-active&qu
- 利用归并排序算法对大文件进行排序
iwindyforest
java归并排序大文件分治法Merge sort
归并排序算法介绍,请参照Wikipeida
zh.wikipedia.org/wiki/%E5%BD%92%E5%B9%B6%E6%8E%92%E5%BA%8F
基本思想:
大文件分割成行数相等的两个子文件,递归(归并排序)两个子文件,直到递归到分割成的子文件低于限制行数
低于限制行数的子文件直接排序
两个排序好的子文件归并到父文件
直到最后所有排序好的父文件归并到输入
- iOS UIWebView URL拦截
啸笑天
UIWebView
本文译者:candeladiao,原文:URL filtering for UIWebView on the iPhone说明:译者在做app开发时,因为页面的javascript文件比较大导致加载速度很慢,所以想把javascript文件打包在app里,当UIWebView需要加载该脚本时就从app本地读取,但UIWebView并不支持加载本地资源。最后从下文中找到了解决方法,第一次翻译,难免有
- 索引的碎片整理SQL语句
macroli
sql
SET NOCOUNT ON
DECLARE @tablename VARCHAR (128)
DECLARE @execstr VARCHAR (255)
DECLARE @objectid INT
DECLARE @indexid INT
DECLARE @frag DECIMAL
DECLARE @maxfrag DECIMAL
--设置最大允许的碎片数量,超过则对索引进行碎片
- Angularjs同步操作http请求with $promise
qiaolevip
每天进步一点点学习永无止境AngularJS纵观千象
// Define a factory
app.factory('profilePromise', ['$q', 'AccountService', function($q, AccountService) {
var deferred = $q.defer();
AccountService.getProfile().then(function(res) {
- hibernate联合查询问题
sxj19881213
sqlHibernateHQL联合查询
最近在用hibernate做项目,遇到了联合查询的问题,以及联合查询中的N+1问题。
针对无外键关联的联合查询,我做了HQL和SQL的实验,希望能帮助到大家。(我使用的版本是hibernate3.3.2)
1 几个常识:
(1)hql中的几种join查询,只有在外键关联、并且作了相应配置时才能使用。
(2)hql的默认查询策略,在进行联合查询时,会产
- struts2.xml
wuai
struts
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache