- 【Java源码阅读系列27】深度解读Java ThreadPoolExecutor 源码
·云扬·
源码阅读系列之Javajava开发语言
Java的ThreadPoolExecutor是并发编程中处理任务执行的核心类,广泛应用于异步任务调度、批量数据处理等场景。本文将从源码层面解析其核心机制,提炼设计模式,并结合实际场景给出使用示例。一、线程池核心架构:状态管理与核心参数1.1状态压缩与原子控制:ctl变量ThreadPoolExecutor通过一个原子整数ctl(类型为AtomicInteger)同时管理线程池状态(runStat
- PAT A 1052 Linked List Sorting
cwn_
算法c++数据结构
Alinkedlistconsistsofaseriesofstructures,whicharenotnec‐essarilyadjacentinmemory.Weassumethateachstructurecon‐tainsanintegerkeyandaNextpointertothenextstructure.Nowgivenalinkedlist,youaresupposedtosor
- Leetcode 1672. Richest Customer Wealth
小白菜又菜
Leetcode解题报告leetcode算法职场和发展
ProblemYouaregivenanmxnintegergridaccountswhereaccounts[i][j]istheamountofmoneytheithcustomerhasinthejthbank.Returnthewealththattherichestcustomerhas.Acustomer’swealthistheamountofmoneytheyhaveinallth
- C: error: aggregate value used where an integer was expected
mzhan017
c/c++C
main.c:677:9:error:aggregatevalueusedwhereanintegerwasexpected,这里的aggregatevalue是说一个集合值,比如是结构体,联合体,类。但是当前行需要的类型是一个整型。所以aggregate是一个一般化的概念,将结构体,联合体,类等组合类数据类型一般化为聚集体。比如StructAa;if(a!=0)
- 算法学习day6----双指针-最长不重复子序列
阴暗老鼠人
学习
Givenanintegersequenceoflengthn,pleasefindthelongestcontinuousintervalwithoutduplicatenumbersandoutputitslength.Thefirstlinecontainsanintegern.Thesecondlinecontainsnintegers(allwithintherangeof0to105)
- 2025年 Java 面试八股文(20w字)
持续学习多模态大模型
java
目录第一章-Java基础篇1、你是怎样理解OOP面向对象???难度系数:?2、重载与重写区别???难度系数:?3、接口与抽象类的区别???难度系数:?4、深拷贝与浅拷贝的理解???难度系数:?5、sleep和wait区别???难度系数:?6、什么是自动拆装箱?int和Integer有什么区别???难度系数:?7、==和equals区别???难度系数:?8、String能被继承吗为什么用final修
- Java(常用类)
ZeroToOneDev
java开发语言笔记程序人生
包装类针对八种基本数据类型相应的引用类型---包装类有了类的特点,就可以调用类的方法包装类和基本数据类型的转换演示:Integer和Character的常用方法:还有什么问题,欢迎大家讨论
- 大事件项目记录6-用户接口开发-更新用户密码
a_Dragon1
SpringBoot学习记录数据库springbootjavaintellij-idea
(6)更新用户密码。UserController.java:UserService.java:UserServiceInterface.java:@OverridepublicvoidupdatePwd(StringnewPwd){Mapmap=ThreadLocalUtil.get();Integerid=(Integer)map.get("id");userMapper.updatePwd(M
- pgsql处理文档类型数据_PostgreSQL数据类型
http://blog.csdn.net/neo_liu0000/article/category/797059第六章数据类型6.1概述PostgreSQL提供了丰富的数据类型。用户可以使用CREATETYPE命令在数据库中创建新的数据类型。PostgreSQL的数据类型被分为四种,分别是基本数据类型、复合数据类型、域和伪类型。基本数据类型是数据库内置的数据类型,包括integer、char、va
- PostgreSQL 数据类型
流光影下
pgsql数据库postgresql大数据数据库
数值类型名字存储长度描述范围smallint2字节小范围整数-32768到+32767integer4字节常用的整数-2147483648到+2147483647bigint8字节大范围整数-9223372036854775808到+9223372036854775807decimal可变长用户指定的精度,精确小数点前131072位;小数点后16383位numeric可变长用户指定的精度,精确小数
- 在delphi中Char,PChar,PByte,Byte,String的相互转换示例
冰雪青松
delphi
vars:string;pc:pchar;pb:pbyte;ac:array[1..100]ofchar;ab:array[1..100]ofbyte;i:integer;begins:='thisisatest';pc:=pchar(s);//string->pcharpb:=pbyte(pc);//pchar->pbytefori:=1tolength(s)dobeginac[i]:=s[i]
- C/C++联合体(union)完全指南:从内存共享到高级用法
1.联合体基础概念联合体(union)是一种特殊的数据类型,允许在相同内存位置存储不同的数据类型,但同一时间只能使用一个成员。unionData{inti;floatf;charstr[20];};核心特性所有成员共享同一块内存大小由最大成员决定同一时间只有一个成员有效常用于节省内存或类型转换场景2.C语言中的联合体2.1基本用法unionNumber{intinteger;floatreal;}
- C++字符串和小数类型的转换
Tan_Zhixia
c++
字符串->小数代码展示提示:solo为转换的字符串number为返回的小数#includeusingnamespacestd;doubleconvert(stringsolo){//double方法的返回值有小数部分两位数的限制doubleinteger=0;//整数部分(为了相加)stringstrInt="";//整数字符串doubledecimal=0;//小数部分stringstrDeci
- 【洛谷题解】P1001 【入门1】顺序结构 A+B Problem
少儿编程小杨老师
洛谷算法数据结构c++python
题目描述输入两个整数,a,b,输出它们的和(∣∣,∣∣≤109∣a∣,∣b∣≤109)。注意Pascal使用integer会爆掉哦!有负数哦!C/C++的main函数必须是int类型,而且C最后要return0。这不仅对洛谷其他题目有效,而且也是NOIP/CSP/NOI比赛的要求!好吧,同志们,我们就从这一题开始,向着大牛的路进发。任何一个伟大的思想,都有一个微不足道的开始。输入格式两个以空格分开
- Error: Waveform5.vwf.vt(30): near “1“: syntax error, unexpected INTEGER NUMBER, expecting ‘)‘ Erro
嘉陵妹妹
quartusquartus
Error:Waveform5.vwf.vt(30):near“1”:syntaxerror,unexpectedINTEGERNUMBER,expecting‘)’Error:e:/quartus/modelsim_ase/win32aloem/vlogfailed.ExecutingONERRORcommandatmacro./deng01.doline4解决方案:1:将输出端口output改
- day02 数组part02
hwt819
算法java数据结构
209.长度最小的子数组滑动窗口,窗口满足条件,就开始移左边。classSolution{publicintminSubArrayLen(inttarget,int[]nums){intlength=Integer.MAX_VALUE;intsum=0;intleft=0;for(inti=0;i=target){//记录长度length=Math.min(length,i-left+1);//缩
- 苍穹外卖Day09
guslegend
windowsjava开发语言
订单管理模块用户端/***历史订单查询**@parampage*@parampageSize*@paramstatus订单状态1待付款2待接单3已接单4派送中5已完成6已取消*@return*/@GetMapping("/historyOrders")@ApiOperation("历史订单查询")publicResultpage(intpage,intpageSize,Integerstatus)
- nt!MiFlushSectionInternal函数分析从nt!IoSynchronousPageWrite函数到Ntfs!NtfsFsdWrite函数
sitelist
nt4源代码分析MiFlushSectionNtfsFsdWrite
第一部分:while(TRUE){KeClearEvent(&IoEvent);Status=IoSynchronousPageWrite(FilePointer,Mdl,(PLARGE_INTEGER)&StartingOffset,&IoEvent,IoStatus);1:kd>pnt!MiFlushSectionInternal+0x6f6:80a72410e8c74bfbffcallnt!
- PAT A1052 Linked List Sorting C++ 主要的坑
sisi-mia
PAT甲级算法c++学习pat考试
Alinkedlistconsistsofaseriesofstructures,whicharenotnecessarilyadjacentinmemory.WeassumethateachstructurecontainsanintegerkeyandaNextpointertothenextstructure.Nowgivenalinkedlist,youaresupposedtosortt
- 1052. Linked List Sorting (25)
陈小旭
PAT
题目链接:http://www.patest.cn/contests/pat-a-practise/1052题目:Alinkedlistconsistsofaseriesofstructures,whicharenotnecessarilyadjacentinmemory.WeassumethateachstructurecontainsanintegerkeyandaNextpointertot
- 【C++】atoi和std::stoi
bluebonnet27
编程语言#C++c++算法开发语言
两个将字符串转为int的方法atoi(C语言)atoi是C库中的一个函数,它定义在头文件里。其作用是把一个字符串转换为对应的整数。/*Convertastringtoaninteger.*/externintatoi(constchar*__nptr)__THROW__attribute_pure____nonnull((1))__wur;转换的原则如下:此函数接收一个以空字符'\0'结尾的字符串
- Python3 数字(Number)
froginwe11
开发语言
Python3数字(Number)引言在编程语言中,数字是构成程序的基础元素之一。Python3作为一种高级编程语言,提供了丰富的数字类型和操作方法。本文将详细介绍Python3中的数字类型,包括整数、浮点数、复数等,并探讨它们的特性和应用。整数(Integer)整数是Python3中最基本的数据类型之一,用于表示没有小数部分的数值。在Python3中,整数类型没有大小限制,可以表示任意大小的整数
- 【运筹优化】整数规划优化方法:割平面法详解 + Java调用Cplex代码实战
WSKH0929
人工智能#运筹优化java运筹学数学规划整数规划割平面法有效不等式
文章目录一、割平面法介绍二、有效不等式2.1有效不等式简介2.2强有效不等式三、常用有效不等式3.1Chvatal-GomoryCut3.2GomoryCut3.2.1纯整数规划模型3.2.2混合整数规划模型3.3MixedIntegerRoundingCut3.4CoveringCut四、Java调用Cplex代码实战4.1实战1:基于GomoryCut的割平面法求解IP一、割平面法介绍割平面法
- 八股文——JAVA基础:包装类型的缓存机制了解么?
Hellyc
java开发语言
对于包装类中的整形包装类,Byte、Short、Integer、Long等,对于数值在-128到127的内容会在堆中创建缓存,比如拿Integer举例,Integera=10,Integerb=10,10对应在缓存数组CACHE[138],所以a==b是比较的就是CACHE[138]对应的地址,显然两者地址是相同的。对应源码如下publicstaticIntegervalueOf(inti){if
- Redis核心知识详解:从全局命令到高级数据结构
tr990511
数据库wpfredis数据结构数据库缓存
一、Redis全局命令详解1.1键查看与管理dbsize:高效获取键总数(O(1)操作)127.0.0.1:6379>dbsize(integer)8keys:生产环境避免使用(O(n)操作)#查找user开头的键(不推荐生产使用)127.0.0.1:6379>keysuser:*exists:检查键是否存在127.0.0.1:6379>existsuser:1(integer)11.2键删除与过
- 30道C语言高频题整理(附答案背诵版)
编程大全
面试题cc语言面试
1.请描述一下C语言的基本数据类型有哪些?C语言提供了一系列的基本数据类型,它们是构建更复杂数据结构的基础。这些基本数据类型主要包括:整型(IntegerTypes):用于存储整数值。根据存储大小和符号性,整型又可以细分为:int:普通的整型,存储大小和范围依赖于系统架构(通常是32位或64位)。shortint(简写为short):短整型,占用的存储空间比int小。longint(简写为long
- Java中的基础数据类型及其包装类
机器滴小白
JAVA学习笔记java开发语言后端
目录一、基础数据类型1.介绍2.存储方式二、包装类1.介绍2.自动装箱和拆箱机制3.自动装箱和拆箱的缓存机制3.1Integer缓存池(-128~127)3.2其他包装类的缓存一、基础数据类型1.介绍在Java中,基础数据类型(PrimitiveDataTypes)是语言内置的基本数据类型,它们不是对象,而是直接存储值的数据类型。Java的基础数据类型共有8种,分为4类:整数类型、浮点类型、字符类
- List<List<Integer>> res = new ArrayList<>();二维数组也是new ArrayList<>();就可以创建对象吗 详解
飞滕人生TYF
javajava
List>res=newArrayList>的含义List>表示一个二维列表,即列表的元素也是列表。它可以用于存储二维数据结构,如二维矩阵或表格。ArrayList>res=newArrayList>res=newArrayListinnerList1=newArrayListinnerList2=newArrayList()不能直接创建完整的二维数组结构?newArrayList>res=new
- jdbc插入时获取自增id号
大海无量波涛凶
javaweb
//2.进行插入方法publicbooleancharu(ImageImage){booleanflag=false;//1.先连接数据库Connectionconnection=getCon();PreparedStatementpst=null;Stringsql="INSERTINTOtb_banqiimgs(img_name,img_path)values(?,?)";Integerent
- Mybatis获取新增记录(insert)的主键值
博风
#MySQL#OracleMybatisMySQLOracle数据库主键
Mysql、SQLServer:insertintobs_test(uuid,create_time,update_time,status,dm_desc,dm_desc2)values(#{uuid,jdbcType=VARCHAR},now(),now(),#{status,jdbcType=INTEGER},#{dmDesc,jdbcType=VARCHAR},#{dmDesc2,jdbcT
- Maven
Array_06
eclipsejdkmaven
Maven
Maven是基于项目对象模型(POM), 信息来管理项目的构建,报告和文档的软件项目管理工具。
Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司
- ibatis的queyrForList和queryForMap区别
bijian1013
javaibatis
一.说明
iBatis的返回值参数类型也有种:resultMap与resultClass,这两种类型的选择可以用两句话说明之:
1.当结果集列名和类的属性名完全相对应的时候,则可直接用resultClass直接指定查询结果类
- LeetCode[位运算] - #191 计算汉明权重
Cwind
java位运算LeetCodeAlgorithm题解
原题链接:#191 Number of 1 Bits
要求:
写一个函数,以一个无符号整数为参数,返回其汉明权重。例如,‘11’的二进制表示为'00000000000000000000000000001011', 故函数应当返回3。
汉明权重:指一个字符串中非零字符的个数;对于二进制串,即其中‘1’的个数。
难度:简单
分析:
将十进制参数转换为二进制,然后计算其中1的个数即可。
“
- 浅谈java类与对象
15700786134
java
java是一门面向对象的编程语言,类与对象是其最基本的概念。所谓对象,就是一个个具体的物体,一个人,一台电脑,都是对象。而类,就是对象的一种抽象,是多个对象具有的共性的一种集合,其中包含了属性与方法,就是属于该类的对象所具有的共性。当一个类创建了对象,这个对象就拥有了该类全部的属性,方法。相比于结构化的编程思路,面向对象更适用于人的思维
- linux下双网卡同一个IP
被触发
linux
转自:
http://q2482696735.blog.163.com/blog/static/250606077201569029441/
由于需要一台机器有两个网卡,开始时设置在同一个网段的IP,发现数据总是从一个网卡发出,而另一个网卡上没有数据流动。网上找了下,发现相同的问题不少:
一、
关于双网卡设置同一网段IP然后连接交换机的时候出现的奇怪现象。当时没有怎么思考、以为是生成树
- 安卓按主页键隐藏程序之后无法再次打开
肆无忌惮_
安卓
遇到一个奇怪的问题,当SplashActivity跳转到MainActivity之后,按主页键,再去打开程序,程序没法再打开(闪一下),结束任务再开也是这样,只能卸载了再重装。而且每次在Log里都打印了这句话"进入主程序"。后来发现是必须跳转之后再finish掉SplashActivity
本来代码:
// 销毁这个Activity
fin
- 通过cookie保存并读取用户登录信息实例
知了ing
JavaScripthtml
通过cookie的getCookies()方法可获取所有cookie对象的集合;通过getName()方法可以获取指定的名称的cookie;通过getValue()方法获取到cookie对象的值。另外,将一个cookie对象发送到客户端,使用response对象的addCookie()方法。
下面通过cookie保存并读取用户登录信息的例子加深一下理解。
(1)创建index.jsp文件。在改
- JAVA 对象池
矮蛋蛋
javaObjectPool
原文地址:
http://www.blogjava.net/baoyaer/articles/218460.html
Jakarta对象池
☆为什么使用对象池
恰当地使用对象池化技术,可以有效地减少对象生成和初始化时的消耗,提高系统的运行效率。Jakarta Commons Pool组件提供了一整套用于实现对象池化
- ArrayList根据条件+for循环批量删除的方法
alleni123
java
场景如下:
ArrayList<Obj> list
Obj-> createTime, sid.
现在要根据obj的createTime来进行定期清理。(释放内存)
-------------------------
首先想到的方法就是
for(Obj o:list){
if(o.createTime-currentT>xxx){
- 阿里巴巴“耕地宝”大战各种宝
百合不是茶
平台战略
“耕地保”平台是阿里巴巴和安徽农民共同推出的一个 “首个互联网定制私人农场”,“耕地宝”由阿里巴巴投入一亿 ,主要是用来进行农业方面,将农民手中的散地集中起来 不仅加大农民集体在土地上面的话语权,还增加了土地的流通与 利用率,提高了土地的产量,有利于大规模的产业化的高科技农业的 发展,阿里在农业上的探索将会引起新一轮的产业调整,但是集体化之后农民的个体的话语权 将更少,国家应出台相应的法律法规保护
- Spring注入有继承关系的类(1)
bijian1013
javaspring
一个类一个类的注入
1.AClass类
package com.bijian.spring.test2;
public class AClass {
String a;
String b;
public String getA() {
return a;
}
public void setA(Strin
- 30岁转型期你能否成为成功人士
bijian1013
成功
很多人由于年轻时走了弯路,到了30岁一事无成,这样的例子大有人在。但同样也有一些人,整个职业生涯都发展得很优秀,到了30岁已经成为职场的精英阶层。由于做猎头的原因,我们接触很多30岁左右的经理人,发现他们在职业发展道路上往往有很多致命的问题。在30岁之前,他们的职业生涯表现很优秀,但从30岁到40岁这一段,很多人
- [Velocity三]基于Servlet+Velocity的web应用
bit1129
velocity
什么是VelocityViewServlet
使用org.apache.velocity.tools.view.VelocityViewServlet可以将Velocity集成到基于Servlet的web应用中,以Servlet+Velocity的方式实现web应用
Servlet + Velocity的一般步骤
1.自定义Servlet,实现VelocityViewServl
- 【Kafka十二】关于Kafka是一个Commit Log Service
bit1129
service
Kafka is a distributed, partitioned, replicated commit log service.这里的commit log如何理解?
A message is considered "committed" when all in sync replicas for that partition have applied i
- NGINX + LUA实现复杂的控制
ronin47
lua nginx 控制
安装lua_nginx_module 模块
lua_nginx_module 可以一步步的安装,也可以直接用淘宝的OpenResty
Centos和debian的安装就简单了。。
这里说下freebsd的安装:
fetch http://www.lua.org/ftp/lua-5.1.4.tar.gz
tar zxvf lua-5.1.4.tar.gz
cd lua-5.1.4
ma
- java-14.输入一个已经按升序排序过的数组和一个数字, 在数组中查找两个数,使得它们的和正好是输入的那个数字
bylijinnan
java
public class TwoElementEqualSum {
/**
* 第 14 题:
题目:输入一个已经按升序排序过的数组和一个数字,
在数组中查找两个数,使得它们的和正好是输入的那个数字。
要求时间复杂度是 O(n) 。如果有多对数字的和等于输入的数字,输出任意一对即可。
例如输入数组 1 、 2 、 4 、 7 、 11 、 15 和数字 15 。由于
- Netty源码学习-HttpChunkAggregator-HttpRequestEncoder-HttpResponseDecoder
bylijinnan
javanetty
今天看Netty如何实现一个Http Server
org.jboss.netty.example.http.file.HttpStaticFileServerPipelineFactory:
pipeline.addLast("decoder", new HttpRequestDecoder());
pipeline.addLast(&quo
- java敏感词过虑-基于多叉树原理
cngolon
违禁词过虑替换违禁词敏感词过虑多叉树
基于多叉树的敏感词、关键词过滤的工具包,用于java中的敏感词过滤
1、工具包自带敏感词词库,第一次调用时读入词库,故第一次调用时间可能较长,在类加载后普通pc机上html过滤5000字在80毫秒左右,纯文本35毫秒左右。
2、如需自定义词库,将jar包考入WEB-INF工程的lib目录,在WEB-INF/classes目录下建一个
utf-8的words.dict文本文件,
- 多线程知识
cuishikuan
多线程
T1,T2,T3三个线程工作顺序,按照T1,T2,T3依次进行
public class T1 implements Runnable{
@Override
 
- spring整合activemq
dalan_123
java spring jms
整合spring和activemq需要搞清楚如下的东东1、ConnectionFactory分: a、spring管理连接到activemq服务器的管理ConnectionFactory也即是所谓产生到jms服务器的链接 b、真正产生到JMS服务器链接的ConnectionFactory还得
- MySQL时间字段究竟使用INT还是DateTime?
dcj3sjt126com
mysql
环境:Windows XPPHP Version 5.2.9MySQL Server 5.1
第一步、创建一个表date_test(非定长、int时间)
CREATE TABLE `test`.`date_test` (`id` INT NOT NULL AUTO_INCREMENT ,`start_time` INT NOT NULL ,`some_content`
- Parcel: unable to marshal value
dcj3sjt126com
marshal
在两个activity直接传递List<xxInfo>时,出现Parcel: unable to marshal value异常。 在MainActivity页面(MainActivity页面向NextActivity页面传递一个List<xxInfo>): Intent intent = new Intent(this, Next
- linux进程的查看上(ps)
eksliang
linux pslinux ps -llinux ps aux
ps:将某个时间点的进程运行情况选取下来
转载请出自出处:http://eksliang.iteye.com/admin/blogs/2119469
http://eksliang.iteye.com
ps 这个命令的man page 不是很好查阅,因为很多不同的Unix都使用这儿ps来查阅进程的状态,为了要符合不同版本的需求,所以这个
- 为什么第三方应用能早于System的app启动
gqdy365
System
Android应用的启动顺序网上有一大堆资料可以查阅了,这里就不细述了,这里不阐述ROM启动还有bootloader,软件启动的大致流程应该是启动kernel -> 运行servicemanager 把一些native的服务用命令启动起来(包括wifi, power, rild, surfaceflinger, mediaserver等等)-> 启动Dalivk中的第一个进程Zygot
- App Framework发送JSONP请求(3)
hw1287789687
jsonp跨域请求发送jsonpajax请求越狱请求
App Framework 中如何发送JSONP请求呢?
使用jsonp,详情请参考:http://json-p.org/
如何发送Ajax请求呢?
(1)登录
/***
* 会员登录
* @param username
* @param password
*/
var user_login=function(username,password){
// aler
- 发福利,整理了一份关于“资源汇总”的汇总
justjavac
资源
觉得有用的话,可以去github关注:https://github.com/justjavac/awesome-awesomeness-zh_CN 通用
free-programming-books-zh_CN 免费的计算机编程类中文书籍
精彩博客集合 hacke2/hacke2.github.io#2
ResumeSample 程序员简历
- 用 Java 技术创建 RESTful Web 服务
macroli
java编程WebREST
转载:http://www.ibm.com/developerworks/cn/web/wa-jaxrs/
JAX-RS (JSR-311) 【 Java API for RESTful Web Services 】是一种 Java™ API,可使 Java Restful 服务的开发变得迅速而轻松。这个 API 提供了一种基于注释的模型来描述分布式资源。注释被用来提供资源的位
- CentOS6.5-x86_64位下oracle11g的安装详细步骤及注意事项
超声波
oraclelinux
前言:
这两天项目要上线了,由我负责往服务器部署整个项目,因此首先要往服务器安装oracle,服务器本身是CentOS6.5的64位系统,安装的数据库版本是11g,在整个的安装过程中碰到很多的坑,不过最后还是通过各种途径解决并成功装上了。转别写篇博客来记录完整的安装过程以及在整个过程中的注意事项。希望对以后那些刚刚接触的菜鸟们能起到一定的帮助作用。
安装过程中可能遇到的问题(注
- HttpClient 4.3 设置keeplive 和 timeout 的方法
supben
httpclient
ConnectionKeepAliveStrategy kaStrategy = new DefaultConnectionKeepAliveStrategy() {
@Override
public long getKeepAliveDuration(HttpResponse response, HttpContext context) {
long keepAlive
- Spring 4.2新特性-@Import注解的升级
wiselyman
spring 4
3.1 @Import
@Import注解在4.2之前只支持导入配置类
在4.2,@Import注解支持导入普通的java类,并将其声明成一个bean
3.2 示例
演示java类
package com.wisely.spring4_2.imp;
public class DemoService {
public void doSomethin