- 基于C#调用文心一言大模型制作桌面软件(可改装接口)
摔跤猫子
C#文心一言桌面工具接口调用C#AI
目录开发前的准备账号注册应用创建应用接入开始开发创建项目设计界面使用AK,SK生成鉴权签名窗体代码百度智能云千帆大模型平台什么是百度智能云千帆大模型平台模型更新记录开发前的准备账号注册访问百度智能云平台,通过百度账号登录或手机号验证。点此跳转百度智能云平台应用创建登录成功后看到的是一个控制台总览的页面,在页面上方文本框搜索千帆大模型,点击跳转。
- 初识 spring ai 之rag、mcp、tools calling使用
一只猪的思考
spring人工智能java
环境准备在使用RAG(检索增强生成)时,可以选择使用本地缓存保存Embedding向量,也可以使用数据库存储。本示例选择使用PostgreSQL提供的向量数据库(pgvector),并通过Docker安装。Docker配置以下是docker-compose-environment.yml文件的内容:version:'3'services:vector_db:image:pgvector/pgvec
- 基于 Maven 构建的 Thingsboard 3.8.1 项目结构
三阶码叟
mavenjava
一、生命周期(Lifecycle)Maven的生命周期定义了项目构建和部署的各个阶段,图中列出了标准的生命周期阶段:clean:清理项目,删除之前构建生成的临时文件和输出文件。validate:验证项目配置是否正确,确保所有必要信息齐全。compile:编译项目的源代码(如Java文件)为字节码(class文件)。test:运行项目的测试用例,验证代码逻辑的正确性。package:将编译后的代码和
- mac下adb命令使用不了?
oneouto
macadb
1、下载一个platform-tool包链接:https://pan.baidu.com/s/1zLAvlPltmsVICPh9DnBH6w提取码:4tkc2、解压,将platform-tool放置到一个位置,这个位置最好是不会动了3、记录下文件夹的路径如我的路径:/Users/hello/Documents/platform-tools4、终端操作输入“echo$HOME”输入“touch.ba
- spring —— AOP(各类通知)
张民遇
springspringjava后端
接:spring——AOP(前置通知)除前置通知(Before)外,AOP里面还有返回通知(AfterReturning)、异常通知(AfterThrowing)、后置通知(After)和环绕通知(Around)。一、返回通知切面类:packagecom.spring.aop;importorg.aspectj.lang.JoinPoint;importorg.aspectj.lang.annot
- spring —— AOP(前置通知)
张民遇
springspringjava前端
一、pom中需要增加的依赖org.springframeworkspring-aop6.0.2org.springframeworkspring-aspects6.0.2二、前置通知(一)基于xml的前置通知首先,需要在xml文件里做如下配置:然后,编写目标类:packagecom.spring.aop;importorg.springframework.stereotype.Component;
- 边缘计算盒子:开启智能边缘计算时代
IcVhdl
边缘计算人工智能
边缘计算盒子(EdgeComputingBox)是一种用于实现边缘计算的硬件设备。它通过集成计算、存储、网络和边缘计算软件,将计算能力和数据处理能力推向网络的边缘,为用户提供快速、低延迟的计算服务。边缘计算盒子的出现,为众多行业带来了许多新的应用场景和机会。边缘计算盒子的功能:边缘计算:边缘计算盒子可以在离用户设备更近的地方进行计算,减少数据传输的延迟。它可以处理实时数据,执行边缘计算任务,将计算
- blender 超逼真角色daz 纹理材质 humanpro插件
子燕若水
blenderUE53Dcaoni
https://www.youtube.com/@KhanhVo-zp9lh/featuredhttps://superhivemarket.com/products/humanprohttps://superhivemarket.com/products/humanproHUMANPRO插件-BLENDERHumanPro是一款专为帮助用户轻松快速地创建高度精细逼真的人体皮肤纹理和复杂皱纹而设计
- Vue 高级技巧深度解析
二川bro
前端vue.js前端javascript
Vue高级技巧深度解析mindmaproot(Vue2高级技巧)组件通信EventBusprovide/inject$attrs/$listeners性能优化虚拟DOM优化函数式组件按需加载状态管理Vuex模块化持久化存储严格模式高级指令自定义指令动态组件异步组件渲染控制作用域插槽渲染函数JSX支持一、组件通信的进阶之道1.1跨层级通信方案对比propspropsprovideinject父组件子
- Centos7下搭建ZooKeeper3.4中间件,常用命令总结
「已注销」
Linux专栏LinuxCentos7ZooKeeper中间件
知识的广度来自知识的深度,学习如果不成体系那是多可怕的一件事儿,希望我们在未来的学习道路上坚守初心,不要给自己留下遗憾,以自己喜欢的方式生活,做自己喜欢做的事,宠爱自己,做一个独一无二的自己!对于文章中出现的任何错误请大家批评指出,会及时做出修改!有任何想要讨论和学习的问题可联系我:cittaksana@qq.comCentos7下搭建ZooKeeper3.4中间件,常用命令总结一、下载解压1、Z
- vue computed 计算属性简述
Cshaosun
web前端VUEvue.js前端javascript
Vue的计算属性(ComputedProperties)是Vue实例中一种特殊的属性,用于声明式地定义依赖其他数据动态计算得出的值。它的核心优势在于能够自动追踪依赖关系,并缓存计算结果,避免重复计算,提升性能。计算属性的特点依赖追踪计算属性会自动检测其内部依赖的响应式数据(如data中的属性或其他计算属性)。当依赖的数据变化时,计算属性会重新计算。缓存机制计算属性的结果会被缓存,只
- watch与computed的区别、运用的场景
Cshaosun
web前端VUE前端javascriptvue
computed和watch都是响应式数据变化的重要机制,但它们在功能、使用场景和性能表现上有显著的区别。主要区别功能和用途1、computed:计算属性,用于基于其他数据属性进行计算,并返回一个结果。它具有缓存机制,只有当依赖的数据发生变化时才会重新计算。2、watch:监听器,用于监听某个数据的变化,并在变化发生时执行回调函数。它不具有缓存机制,每次数据变化都会触发回调函数。性能表现1、com
- VUE之---slot插槽
Cshaosun
web前端VUEvue.js前端javascript
什么是插槽slot【插槽】,是Vue的内容分发机制,组件内部的模板引擎使用slot元素作为承载分发内容的出口。slot是子组件的一个模板标签元素,而这一个标签元素是否显示,以及怎么显示是由父组件决定的。VUE中slot【插槽】的分类与应用插槽有三种:默认插槽、具名插槽、作用域插槽。(1)默认插槽语法:示例:在子组件中定义一个默认插槽{{title}}在开发中我们经常使用到组件之间的传值,但很多情况
- C# 使用.NET内置的 IObservable<T> 和 IObserver<T>-观察者模式
xiaowu080
c#设计模式观察者模式
核心概念IObservable表示可观察的数据源(如事件流、实时数据)。关键方法:Subscribe(IObserverobserver),用于注册观察者。IObserver表示数据的接收者,响应数据变化。三个核心方法:OnNext(Tvalue):接收新数据。OnError(Exceptionerror):处理错误。OnCompleted():响应数据流结束。观察者实现:publicclass观
- PHP轻量级在线客服系统源码 自适应手机移动端
banzhuan678
程序源码网站源码PHP源码轻量级在线客服客服系统客服源码
简介:支持多商家支持多商家,每个注册用户为一个商家,每个商家可以添加多个客服。不限坐席每个商家可以无限添加坐席,不限制坐席数支持H5移动端系统自动适配移动端,也可以接入app(h5方式)支持微信公众号/微信小程序客服可以与微信公众号/小程序里的访客实时沟通常见问题自动回复支持设置常见问题,顾客可以点击常见问题系统会自动回复客服分组支持客服分组,例如售前客服,售后客服等,让专业的人员干专业的事情微信
- Redis 精简版(内存存储 + 命令解析)
redis
Redis精简版(MiniRedis):内存存储+命令解析目标:打造一个可以在命令行下运行的RedisMini实现,支持基本命令:SET、GET、DEL,并支持简单的TCP客户端连接。项目结构less复制编辑MiniRedis/├──main.cpp//启动入口├──server.cpp/h//网络服务器代码(监听连接)├──command.cpp/h//命令解析与执行├──datastore.c
- 手机号码在网状态API:技术、应用与价值
api
前言在当今数字化时代,手机号码已成为人们生活中不可或缺的一部分,它不仅是通信工具,更是身份验证和信息交互的重要标识。随着移动通信技术的不断发展,手机号码在网状态API应运而生,为各种应用提供了实时查询手机号码状态的能力。手机号码在网状态API的技术实现手机号码在网状态API通常由电信运营商或第三方提供,其技术实现依赖于以下几个关键组件:API接口:电信运营商提供的API接口,允许外部系统发送查询请
- OV代码签名证书:个人和企业都可以申请
ssl证书
OV代码签名证书的作用验证开发者身份:CA(证书颁发机构)会审核申请者的真实身份,确保证书持有者可信。防止代码篡改:签名后的代码若被修改,系统会发出安全警告。提升用户信任:减少“未知发布者”警告,提高软件安装率。申请SSL证书流程↓点此快速申请直接搜索并访问JoySSL,注册一个账号,记得填写注册码230931获得一对一的技术支持个人可以申请OV代码签名证书吗?可以!但需满足以下条件:提供有效身份
- 企业通配符SSL证书申请与管理指南
安全
企业通配符SSL证书是实现多级域名安全保护的高效解决方案,可为主域名及其所有次级子域名提供统一加密支持。以下为面向企业的通配符证书选型与实施指南:一、核心功能特性解析1.多级域名覆盖•单证书支持主域名及无限同级子域名动态适配新增子域名,降低证书更新频率2.企业级认证机制•OV(组织验证)要求验证企业实体信息,包括工商注册信息及物理地址•证书详情页展示认证企业名称,增强用户信任度3.安全技术标准•支
- 浏览器显示"不安全"警告怎么办?
ssl证书
一、出现"不安全"提示的原因网站没有SSL证书使用HTTP协议的网站都会被标记为"不安全"。SSL证书有问题证书过期、不受信任或配置错误都会触发警告。网页包含不安全内容即使网站使用HTTPS,但如果调用了HTTP资源(如图片、JS文件),仍会被警告。证书与域名不匹配访问的域名不在证书保护范围内(如主站证书用于子站点)。申请SSL证书流程↓点此快速申请直接搜索并访问JoySSL,注册一个账号,记得填
- EV 增强型 SSL 证书:身份验证,加密技术与兼容性并重
ssl证书
在网络安全领域,EV增强型SSL证书可是“中流砥柱”,全方位守护着线上信息交流。。一、严格身份验证,筑牢信任根基EV证书的身份验证极其严格。申请时,证书颁发机构(CA)对网站所属方深度核查。核实企业注册信息,像名称、地址、执照注册号,一个都不落。金融机构申请,CA会找监管部门确认合规;电商企业得亮出交易、物流详情证“真身”。审核通过,浏览器地址栏才会有醒目的绿色显示与企业名,帮用户一眼辨真伪,信任
- 《记笔记的悖论》及我建议的笔记方法
思考工具习惯llm
原文TheProblemWithNote-TakingByLawrenceYeohttps://moretothat.com/the-problem-with-note-taking/记笔记的理念很简单:将你的大脑从信息存储的负担中解放出来,让它专注于创造性表达。这是任何记笔记爱好者都会提及的口号,而且这个口号很有道理。然而,我逐渐意识到这其中存在一个问题。这个问题并不在于效率层面,而在于一个更为
- 静态分析与漏洞挖掘:技术与实践
羊迪
静态分析漏洞挖掘IDA二进制审计逆向工程
背景简介在软件安全领域,静态分析是一种重要的研究方法,它允许安全研究人员在不实际运行软件的情况下,对其代码进行彻底的检查和漏洞探测。本文将根据书籍章节内容,详细探讨静态分析技术,重点介绍如何使用IDA这一静态分析的事实工具,以及如何手动审计特定的软件组件来发现潜在的安全漏洞。静态分析的原理与方法静态分析是一种不依赖于软件执行的分析方法,它通过分析代码来提取相关信息,例如查找软件中的错误或安全漏洞。
- 教你用 Python 玩 GPT 接口做一个对话机器人
python
用Python做一个GPT对话机器人(CLI版本)✅你将学会:注册OpenAIAPI调用GPT接口与用户对话实现一个终端可运行的聊天机器人(可选)扩展为网页版、桌面版、微信版等准备工作1.安装依赖bash复制编辑pipinstallopenairichopenai:用于调用GPT接口rich:让输出更美观(可选)2.获取OpenAIAPIKey访问:https://platform.openai.
- 聊聊Spring AI Alibaba的MarkdownDocumentParser
人工智能
序本文主要研究一下SpringAIAlibaba的MarkdownDocumentParserMarkdownDocumentParsercommunity/document-parsers/spring-ai-alibaba-starter-document-parser-markdown/src/main/java/com/alibaba/cloud/ai/parser/markdown/Ma
- go-multierror: 更方便的处理你的错误列表
后端go错误面试面试问题
首发公众号:https://mp.weixin.qq.com/s/8EVPiNbynuxWRc8GlmpXxwgo-multierror是一个第三方的Go语言库,用于处理多个错误的聚合与管理。它由HashiCorp提供,非常适合需要在某些操作中收集多个错误并在最后统一返回的场景。使用示例顾名思义,go-multierror包的核心功能就一个,将多个错误合并为一个错误。以下是一个典型的使用示例:pa
- Unity开发框架:输入事件管理类
努力长头发的程序猿
unityc#
开发程序的时候经常会出现更改操作方式的情况,这种时候就需要将操作模式以事件的方式注册到管理输入事件的类中,方便可以随时切换和调用usingSystem;usingSystem.Collections.Generic;usingUnityEngine;//////记录鼠标事件的的结构体///publicstructInputMouseEvent{//////鼠标事件名称///publicstring
- 课程确认翻车 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.atguigu.
Rondox
org.apache.ibatis.binding.BindingException:Invalidboundstatement(notfound):com.atguigu.eduservice.mapper.EduCourseMapper.getPublicCourseInfo原因:maven不会加载xml文件默认加载机制高级的解决方法:(1)pom加依赖 src/main
- Vue快速入门
陈暗暗
vuevue
原文地址:https://segmentfault.com/a/1190000012692321Vue-渐进式JavaScript框架介绍vue中文网vuegithubVue.js是一套构建用户界面(UI)的渐进式JavaScript框架库和框架的区别我们所说的前端框架与库的区别?Library库,本质上是一些函数的集合。每次调用函数,实现一个特定的功能,接着把控制权交给使用者代表:jQueryj
- Vue3生命周期钩子详解
BillKu
vue.js前端javascript
Vue3的生命周期钩子函数允许开发者在组件不同阶段执行特定逻辑。与Vue2相比,Vue3在CompositionAPI中引入了新名称,并废弃了部分钩子。以下是详细说明:一、Vue3生命周期阶段与钩子函数1.组件创建阶段setup()替代Vue2的beforeCreate和created。最先执行,用于定义响应式数据、方法等。无法访问组件实例(this),因为此时实例尚未创建。2.挂载阶段onBef
- Java实现的简单双向Map,支持重复Value
superlxw1234
java双向map
关键字:Java双向Map、DualHashBidiMap
有个需求,需要根据即时修改Map结构中的Value值,比如,将Map中所有value=V1的记录改成value=V2,key保持不变。
数据量比较大,遍历Map性能太差,这就需要根据Value先找到Key,然后去修改。
即:既要根据Key找Value,又要根据Value
- PL/SQL触发器基础及例子
百合不是茶
oracle数据库触发器PL/SQL编程
触发器的简介;
触发器的定义就是说某个条件成立的时候,触发器里面所定义的语句就会被自动的执行。因此触发器不需要人为的去调用,也不能调用。触发器和过程函数类似 过程函数必须要调用,
一个表中最多只能有12个触发器类型的,触发器和过程函数相似 触发器不需要调用直接执行,
触发时间:指明触发器何时执行,该值可取:
before:表示在数据库动作之前触发
- [时空与探索]穿越时空的一些问题
comsci
问题
我们还没有进行过任何数学形式上的证明,仅仅是一个猜想.....
这个猜想就是; 任何有质量的物体(哪怕只有一微克)都不可能穿越时空,该物体强行穿越时空的时候,物体的质量会与时空粒子产生反应,物体会变成暗物质,也就是说,任何物体穿越时空会变成暗物质..(暗物质就我的理
- easy ui datagrid上移下移一行
商人shang
js上移下移easyuidatagrid
/**
* 向上移动一行
*
* @param dg
* @param row
*/
function moveupRow(dg, row) {
var datagrid = $(dg);
var index = datagrid.datagrid("getRowIndex", row);
if (isFirstRow(dg, row)) {
- Java反射
oloz
反射
本人菜鸟,今天恰好有时间,写写博客,总结复习一下java反射方面的知识,欢迎大家探讨交流学习指教
首先看看java中的Class
package demo;
public class ClassTest {
/*先了解java中的Class*/
public static void main(String[] args) {
//任何一个类都
- springMVC 使用JSR-303 Validation验证
杨白白
springmvc
JSR-303是一个数据验证的规范,但是spring并没有对其进行实现,Hibernate Validator是实现了这一规范的,通过此这个实现来讲SpringMVC对JSR-303的支持。
JSR-303的校验是基于注解的,首先要把这些注解标记在需要验证的实体类的属性上或是其对应的get方法上。
登录需要验证类
public class Login {
@NotEmpty
- log4j
香水浓
log4j
log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, HTML, DATABASE
#log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, ROLLINGFILE, HTML
#console
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4
- 使用ajax和history.pushState无刷新改变页面URL
agevs
jquery框架Ajaxhtml5chrome
表现
如果你使用chrome或者firefox等浏览器访问本博客、github.com、plus.google.com等网站时,细心的你会发现页面之间的点击是通过ajax异步请求的,同时页面的URL发生了了改变。并且能够很好的支持浏览器前进和后退。
是什么有这么强大的功能呢?
HTML5里引用了新的API,history.pushState和history.replaceState,就是通过
- centos中文乱码
AILIKES
centosOSssh
一、CentOS系统访问 g.cn ,发现中文乱码。
于是用以前的方式:yum -y install fonts-chinese
CentOS系统安装后,还是不能显示中文字体。我使用 gedit 编辑源码,其中文注释也为乱码。
后来,终于找到以下方法可以解决,需要两个中文支持的包:
fonts-chinese-3.02-12.
- 触发器
baalwolf
触发器
触发器(trigger):监视某种情况,并触发某种操作。
触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/delete)
语法:
create trigger triggerName
after/before
- JS正则表达式的i m g
bijian1013
JavaScript正则表达式
g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止。 i:表示不区分大小写(case-insensitive)模式,即在确定匹配项时忽略模式与字符串的大小写。 m:表示
- HTML5模式和Hashbang模式
bijian1013
JavaScriptAngularJSHashbang模式HTML5模式
我们可以用$locationProvider来配置$location服务(可以采用注入的方式,就像AngularJS中其他所有东西一样)。这里provider的两个参数很有意思,介绍如下。
html5Mode
一个布尔值,标识$location服务是否运行在HTML5模式下。
ha
- [Maven学习笔记六]Maven生命周期
bit1129
maven
从mvn test的输出开始说起
当我们在user-core中执行mvn test时,执行的输出如下:
/software/devsoftware/jdk1.7.0_55/bin/java -Dmaven.home=/software/devsoftware/apache-maven-3.2.1 -Dclassworlds.conf=/software/devs
- 【Hadoop七】基于Yarn的Hadoop Map Reduce容错
bit1129
hadoop
运行于Yarn的Map Reduce作业,可能发生失败的点包括
Task Failure
Application Master Failure
Node Manager Failure
Resource Manager Failure
1. Task Failure
任务执行过程中产生的异常和JVM的意外终止会汇报给Application Master。僵死的任务也会被A
- 记一次数据推送的异常解决端口解决
ronin47
记一次数据推送的异常解决
需求:从db获取数据然后推送到B
程序开发完成,上jboss,刚开始报了很多错,逐一解决,可最后显示连接不到数据库。机房的同事说可以ping 通。
自已画了个图,逐一排除,把linux 防火墙 和 setenforce 设置最低。
service iptables stop
- 巧用视错觉-UI更有趣
brotherlamp
UIui视频ui教程ui自学ui资料
我们每个人在生活中都曾感受过视错觉(optical illusion)的魅力。
视错觉现象是双眼跟我们开的一个玩笑,而我们往往还心甘情愿地接受我们看到的假象。其实不止如此,视觉错现象的背后还有一个重要的科学原理——格式塔原理。
格式塔原理解释了人们如何以视觉方式感觉物体,以及图像的结构,视角,大小等要素是如何影响我们的视觉的。
在下面这篇文章中,我们首先会简单介绍一下格式塔原理中的基本概念,
- 线段树-poj1177-N个矩形求边长(离散化+扫描线)
bylijinnan
数据结构算法线段树
package com.ljn.base;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;
/**
* POJ 1177 (线段树+离散化+扫描线),题目链接为http://poj.org/problem?id=1177
- HTTP协议详解
chicony
http协议
引言
- Scala设计模式
chenchao051
设计模式scala
Scala设计模式
我的话: 在国外网站上看到一篇文章,里面详细描述了很多设计模式,并且用Java及Scala两种语言描述,清晰的让我们看到各种常规的设计模式,在Scala中是如何在语言特性层面直接支持的。基于文章很nice,我利用今天的空闲时间将其翻译,希望大家能一起学习,讨论。翻译
- 安装mysql
daizj
mysql安装
安装mysql
(1)删除linux上已经安装的mysql相关库信息。rpm -e xxxxxxx --nodeps (强制删除)
执行命令rpm -qa |grep mysql 检查是否删除干净
(2)执行命令 rpm -i MySQL-server-5.5.31-2.el
- HTTP状态码大全
dcj3sjt126com
http状态码
完整的 HTTP 1.1规范说明书来自于RFC 2616,你可以在http://www.talentdigger.cn/home/link.php?url=d3d3LnJmYy1lZGl0b3Iub3JnLw%3D%3D在线查阅。HTTP 1.1的状态码被标记为新特性,因为许多浏览器只支持 HTTP 1.0。你应只把状态码发送给支持 HTTP 1.1的客户端,支持协议版本可以通过调用request
- asihttprequest上传图片
dcj3sjt126com
ASIHTTPRequest
NSURL *url =@"yourURL";
ASIFormDataRequest*currentRequest =[ASIFormDataRequest requestWithURL:url];
[currentRequest setPostFormat:ASIMultipartFormDataPostFormat];[currentRequest se
- C语言中,关键字static的作用
e200702084
C++cC#
在C语言中,关键字static有三个明显的作用:
1)在函数体,局部的static变量。生存期为程序的整个生命周期,(它存活多长时间);作用域却在函数体内(它在什么地方能被访问(空间))。
一个被声明为静态的变量在这一函数被调用过程中维持其值不变。因为它分配在静态存储区,函数调用结束后并不释放单元,但是在其它的作用域的无法访问。当再次调用这个函数时,这个局部的静态变量还存活,而且用在它的访
- win7/8使用curl
geeksun
win7
1. WIN7/8下要使用curl,需要下载curl-7.20.0-win64-ssl-sspi.zip和Win64OpenSSL_Light-1_0_2d.exe。 下载地址:
http://curl.haxx.se/download.html 请选择不带SSL的版本,否则还需要安装SSL的支持包 2. 可以给Windows增加c
- Creating a Shared Repository; Users Sharing The Repository
hongtoushizi
git
转载自:
http://www.gitguys.com/topics/creating-a-shared-repository-users-sharing-the-repository/ Commands discussed in this section:
git init –bare
git clone
git remote
git pull
git p
- Java实现字符串反转的8种或9种方法
Josh_Persistence
异或反转递归反转二分交换反转java字符串反转栈反转
注:对于第7种使用异或的方式来实现字符串的反转,如果不太看得明白的,可以参照另一篇博客:
http://josh-persistence.iteye.com/blog/2205768
/**
*
*/
package com.wsheng.aggregator.algorithm.string;
import java.util.Stack;
/**
- 代码实现任意容量倒水问题
home198979
PHP算法倒水
形象化设计模式实战 HELLO!架构 redis命令源码解析
倒水问题:有两个杯子,一个A升,一个B升,水有无限多,现要求利用这两杯子装C
- Druid datasource
zhb8015
druid
推荐大家使用数据库连接池 DruidDataSource. http://code.alibabatech.com/wiki/display/Druid/DruidDataSource DruidDataSource经过阿里巴巴数百个应用一年多生产环境运行验证,稳定可靠。 它最重要的特点是:监控、扩展和性能。 下载和Maven配置看这里: http
- 两种启动监听器ApplicationListener和ServletContextListener
spjich
javaspring框架
引言:有时候需要在项目初始化的时候进行一系列工作,比如初始化一个线程池,初始化配置文件,初始化缓存等等,这时候就需要用到启动监听器,下面分别介绍一下两种常用的项目启动监听器
ServletContextListener
特点: 依赖于sevlet容器,需要配置web.xml
使用方法:
public class StartListener implements
- JavaScript Rounding Methods of the Math object
何不笑
JavaScriptMath
The next group of methods has to do with rounding decimal values into integers. Three methods — Math.ceil(), Math.floor(), and Math.round() — handle rounding in differen